我正在做一个任务,如果用户条目已经存在于数组中但我不能让它工作,我需要抛出异常。我必须使用一个数组,它不能是一个arrayList。如果该条目不存在于数组中,则应该添加它。避免在阵列中重复的用户条目
这是我到目前为止有:
try {
boolean duplicates = false;
num = Integer.parseInt(inputField.getText());
for (int i = 0; i < index; i++){
if (num == (array[i])) {
duplicates = true;
}
}
array[index] = num;
index++;
if(!duplicates){
throw new DuplicateValueException();}
} // end try
谢谢!
是您的排序吗? – 2014-10-27 00:29:05
如果有**没有**重复项,那么您的代码会抛出一个合适的错误,而如果**有**重复项则不会。将'if(!duplicates)'更改为'if(重复)'。另外,移动'array [index] = num; index ++;'抛出异常之后,或者无论如何你会添加一个元素,例外或者否。 – Amadan 2014-10-27 00:31:44
FWIW - 你可能完全摆脱了'duplicates'变量,只是抛出'DuplicateValueException',你现在把它设置为'true'。代码更少,更易于阅读。 – 2014-10-27 00:45:15