繁体   English   中英

使用数组 Java 中的每个对象打印语句

[英]Print statements with each object in array Java

在增强的 for 循环中,我似乎无法打印每个对象。 任何援助将不胜感激。 如果我选择了一个特定的 worker 对象,那么代码会运行良好,但我只是将它作为 worker[].fullName() 而没有打印。 有没有办法让它在每次循环时打印各自的工人? 谢谢

package Persons;

public class InheritanceTest {
    public static void main(String[] args) {
         Workers worker[] = new Workers[6];
         worker[0] = new Workers(25,"Tom", "Atkins", "4", "Mr.", 1992 );
         worker[1] = new Workers(28,"John", "Smith", "5", "Mr.", 1993 );
         worker[2] = new Workers(30,"Joe", "Doe", "6", "Mr.", 1980 );
         worker[3] = new SalaryWorker(50000,"Fawn", "Dawn", "7", "Mrs.", 1994 );
         worker[4] = new SalaryWorker(55000,"Clarence", "West", "8", "Mr.", 1986 );
         worker[5] = new SalaryWorker(60000,"Lucy", "Adams", "9", "Ms.", 1979 );

         for (Workers workers: worker){
             System.out.println("Week 1 pay period: "+ worker[].fullName());
             workers.calculateWeeklyPay(40);
             System.out.println("Week 2 pay period: ");
             workers.calculateWeeklyPay(50);
             System.out.println("Week 3 pay period: ");
             workers.calculateWeeklyPay(40);            
         }        
    }
}

认为在 for-each 循环中命名有问题。 你已经互换了workerworkers 另外worker[].fullName()是不可接受的构造。 正确的是worker.fullName()请试试下面的代码:

for (Workers worker : workers) {
        System.out.println("Week 1 pay period: " + worker.fullName());
        worker.calculateWeeklyPay(40);
        System.out.println("Week 2 pay period: ");
        worker.calculateWeeklyPay(50);
        System.out.println("Week 3 pay period: ");
        worker.calculateWeeklyPay(40);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM