请修改以下代码,为什么创建的contains方法报错 //唯一性判断,已存在,则不添加,不存在,则加 contains(arr,stu4.getId()); public static boolean contains(Students[] arr,int id){ for (int i = 0; i < arr.length; i++) { //依次或取数组里面的每一个对象, Students stu =arr[i]; //获取学生的id int sid = stu.getId(); //进行比较 if (sid == id){ return true; } } //循环结束 return false; }
时间: 2023-12-22 20:03:33 浏览: 132
java代码-是否在字符串
代码中contains方法报错的原因是因为它没有被正确地调用。在调用方法时,应该将其返回值赋给一个变量或直接在if语句中使用。
以下是修改后的代码:
```
if (!contains(arr,stu4.getId())) {
arr[count] = stu4;
count++;
}
public static boolean contains(Students[] arr,int id){
for (int i = 0; i < arr.length; i++) {
Students stu = arr[i];
int sid = stu.getId();
if (sid == id){
return true;
}
}
return false;
}
```
这段代码首先调用了contains方法,如果返回值为false,则将新学生对象添加到数组中;否则,不执行任何操作。修改后的contains方法将返回值设置为true或false,以指示数组中是否包含给定的ID。
阅读全文