问题:如何修复我的代码。造成问题的原因是什么/我能得到一个例子。不是答案。 我的任务之一是:"声明但不初始化两个字段"
我是Java编程的新手,所以请简单易读。
基本大纲: 我正在尝试编写一个基本程序,其中显示了服务年限和显示的数量到屏幕,他们将收到多少假期。
错误消息: 我收到的当前错误消息是:
第27行: 二元运算符的坏操作数类型'> =',第一种类型:int [],第二种类型:int
第28行:不兼容的类型 必需:int 发现:int []
第30行:二元运算符的错误操作数类型'> =' ,第一种类型:int [] ,第二种类型:int
第36行:在解析时到达文件末尾
这是我的代码:
public class VacationScale {
public int[] vacationDays;
public int[] yearsOfService;
public void setVacationScale() {
vacationDays = new int[7];
vacationDays[0] = 10;
vacationDays[1] = 15;
vacationDays[2] = 15;
vacationDays[3] = 15;
vacationDays[4] = 20;
vacationDays[5] = 20;
vacationDays[6] = 25;
}
public void displayVacationDays() {
if (yearsOfService >= 0 && yearsOfService < 6) {
System.out.println("Number of Vacation Days: " + vacationDays[yearsOfService]);
} else if (yearsOfService >= 6) {
System.out.println("Number of Vacation Days: " + vacationDays[6]);
} else {
System.out.println("Invaild Years if Service");
}
}
非常感谢任何帮助。
答案 0 :(得分:0)
if (yearsOfService >= 0 && yearsOfService < 6) {
此处使用逻辑运算符时,无法将数组yearsOfService与数字进行比较。
根据您的要求,您应将yearsOfService
声明为int
。