In this study, a self-learning discrete Jaya algorithm (SD-Jaya) is proposed to address the energy-efficient distributed no-idle flow-shop scheduling problem (FSP) in a heterogeneous factory system (HFS-EEDNIFSP) with the criteria of minimizing the total tardiness (TTD), total energy consumption (TEC), and factory load balancing (FLB). First, the mixed-integer programming model of HFS-EEDNIFSP is presented. An evaluation criterion of FLB combining the energy consumption and the completion time is introduced. Second, a self-learning operators selection strategy, in which the success rate of each operator is summarized as knowledge, is designed for guiding the selection of operators. Third, the energy-saving strategy is proposed for reducing the TEC. The energy-efficient no-idle FSP is transformed to be an energy-efficient permutation FSP to search the idle times. The speed of operations which adjacent are idle times is reduced. The effectiveness of SD-Jaya is tested on 60 benchmark instances. On the quality of the solution, the experimental results reveal that the efficacy of the SD-Jaya algorithm outperforms the other algorithms for addressing HFS-EEDNIFSP.