我是Java的初学者,我在遍历某些变量时遇到了一些麻烦; 我想遍历这四个变量,看看是否有重复的变量,然后将非重复的变量保存在第二个数组中或进行计数。例如,
ValueA = "fred"
ValueB = "apple"
ValueC = "fred"
ValueD = "water"
输出count = 3
或array={"fred","apple","water"}
String arr[] = new String[4];
arr[0]= valueA;
arr[1]= valueB;
arr[2]= valueC;
arr[3]= valueD;
答案 0 :(得分:0)
执行此操作的方法很多,
您可以将变量存储在Set中并获取一个Array。
String[] withoutDuplicates = new HashSet<>(Arrays.asList(array)).toArray(new String[]{});
在第一个数组中循环->有另一个空列表->在插入第二个空列表之前进行检查。 (由于您是初学者,可以尝试此操作,列表已经为您提供了contains())
您可以使用Java 8中的Stream.filter()。distinct()
Arrays.stream(array).distinct().toArray(String[]::new);
我个人更喜欢第三个! :)
答案 1 :(得分:0)
这应该有效:
String otherArr[] = new String[4];
int counter = 0;
for(int i = 0; i< arr.size(); i++){
for(int j = i+1; j< arr.size(); j++){
if( arr[i].equals(arr[j])){
//two similar variables
otherArr[counter++] = arr[i];
}
}
}
如果您还有其他问题,我可以给您发送一些体面的指南。