私の任務のために、手動でIndexOutOfBoundsExceptionを追加するよう求められました。例外をスローする
public int get(Object[] objArr){
size = objArr.length;
for(int i = 0; i < size; i++)
if(objArr[i] < 0 || objArr[i] > objArr.length)
{
throw new IndexOutOfBoundsException("I must be greater than 0 and less than " + size);
}
私は見てループするコードを取得し、0未満の数値をチェックしようとしていると、そのインデックスは、ユーザが宣言された配列の外側にあります。 if文でエラーが発生しましたが、それをどのように修正できるか不思議でした。あなたはときに例外をスローする必要が
if(i < 0 || i >= objArr.length)
* * "私はエラーが取得しています" - どのようなエラーが?おそらく 'Object'と' int'を比較できないでしょうか? – luk2302
配列の 'i'インデックスとその配列の値である' objAr [i] 'を混同しているようです。 –
(objArr [i] <0 || objArr [i]> objArr.length) –