对我的Java编程老师不讨厌,但我有一些编程经验,对于第一个项目,我想让老师惊叹。无论如何,我是Java的新手,但对C有一定的了解。只是为了测试Java中的数组系统我设计了这个程序。我想要它做的是问我数组的大小。我需要数组的大小,因为稍后我会用员工的名字填写它。但我一直收到这个错误...
package withholding_calculator;
import java.util.Scanner;
class withholding_calculator {
public static void main(String args[]) {
//declaring variables
Scanner size = new Scanner(System.in);
String[] employeeNames = new String[size.nextInt()];
for( int i = 0; i < size; i++ ) {
System.out.println( employeeNames[i] );
}
}
}
答案 0 :(得分:1)
对此作出两点回应。
首先,你的for循环可以直接使用数组大小(employeeName.length
)而不是引用扫描程序对象(错误是由你将扫描程序与int进行比较引起的。)
其次,'c'样式数组在Java中的使用比在C中少得多。通常,Java程序员会将其编码为:
List<String> employeeNames = new ArrayList<>();
// fill the list using employeeNames.add
for (String name: employeeNames)
System.out.println(name);
在Java 8中,最后两行可以大致简化为:
employeeNames.forEach(System.out::println);
说过使用标准数组仍然是完全合理的,如果你比较数组的长度而不是你的扫描器,你的代码应该起作用。