Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Java数组中的每个对象打印语句_Java_Arrays_Loops_For Loop_Printing - Fatal编程技术网

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

使用Java数组中的每个对象打印语句,java,arrays,loops,for-loop,printing,Java,Arrays,Loops,For Loop,Printing,在增强for循环中,我似乎无法打印每个对象。任何协助都将不胜感激。如果我选择了一个特定的worker对象,那么代码可以正常运行,但我只是将其作为worker[].fullName()使用,并且没有打印任何内容。是否有一种方法可以让它在每次循环通过循环时打印相应的worker?谢谢 package Persons; public class InheritanceTest { public static void main(String[] args) { Worker

在增强for循环中,我似乎无法打印每个对象。任何协助都将不胜感激。如果我选择了一个特定的worker对象,那么代码可以正常运行,但我只是将其作为worker[].fullName()使用,并且没有打印任何内容。是否有一种方法可以让它在每次循环通过循环时打印相应的worker?谢谢

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);            
         }        
    }
}

认为为每个循环命名存在问题。您交换了
工人
&
工人
。 另外,
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);
}

您需要使用
worker.fullName()
@ChetanRanpariya我得到fullName()方法的找不到符号错误类/变量的名称(使用复数)混乱。它应该是带有当前代码的
workers.fullName()
。但是,正确的做法是使用单数形式的类名(超类的),即
Worker
。数组变量的复数名称,即
Worker[]workers
。然后循环变成
for(Worker-Worker:workers)
@Mick助记符谢谢。这解决了我的问题。我以前试过,但我把w作为资本,它只是指工人阶级,而不是循环中的项目。gracias gracias数组的名称是
工作者
,因此无法编译。