在不使用java集合库的情况下向数组中添加int的基本代码?
我试图实现一个add方法,在数组中添加一个值,前提是该值不在数组中。我知道我的add方法是错误的,因为它不会在数组已满时停止。有谁能帮忙解决这个问题吗。以下是我目前的代码:
public class SimpleSet{
private int[] data;
int arrayIndex = 0;
public SimpleSet(){
data = new int[6];
}
public void add(int a){
boolean contains = false;
for (int z : data){
if(z == a){
contains = true;
break;
}
}
if(contains == false){
for (int i = 0; i < data.length - 1; i++){
data[arrayIndex] = a;
arrayIndex++;
}
}
}
}
# 1 楼答案
我修改了你的代码。这是我后来一次测试的结果
我创建了一个
main
方法来测试代码我创建了一个
displaySet
方法来显示数组的内容。我只显示已添加的值。其余的值无关紧要,但它们的值为零我创建了一个
contains
方法来测试要添加的新值是否已经在集合中我修改了
add
方法来测试是否超过数组限制以及是否向集合中添加值。我在整个代码中广泛使用arrayIndex
值。我唯一一次使用数组的长度是用于超出数组限制测试下面是完整的可运行代码
# 2 楼答案