例如我的输入数字是:10 10 和 15。第二个输入将被忽略,因为它已经重复了。所以总和为 10+15 - 25。我该怎么做?
public class MP2A {
public static Scanner objScan = new Scanner (System.in);
public static void main (String []args)
{
double [] dNum = new double[3];
System.out.println("Input values for your array");
for (int iCtr=0; iCtr<dNum.length; iCtr++) {
dNum[iCtr] = objScan.nextDouble();
}
double sum = 0;
for (int iCtr=0; iCtr<dNum.length; iCtr++) {
for (int iCtr2=0; iCtr2<dNum.length-1; iCtr2++) {
if (dNum[iCtr2] == dNum[iCtr]) {
continue;
}
}
sum+=dNum[iCtr];
}
System.out.println(sum);
}
}
我想出了上面的程序,但它不起作用。
最佳答案
您应该查看 HashSet
类(class)。您可以将任意数量的数字放入 HashSet
中, 但即使多次插入相同的数字,HashSet
将只包含每个唯一数字的一次出现。
编辑:如果不允许您使用 HashSet
, 你可以这样做:使用 ArrayList<int>
(或者一个大的 int[]
,如果你也不允许使用 ArrayList
)来跟踪已经添加的数字。对于每个新数字,检查该数字是否已存在于列表中,如果不存在则仅将其添加到列表(和总和)中。
关于java - 如何添加输入数字以消除重复的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7371888/