-1
私は"fizz buzz" ArrayListの問題を試しています。私のプログラムは正常に動作し、n回目の反復まで意図したとおりに実行されます。値100
と入力します。 「フィズの話題は」100まで実行されますと、結果を返すが、ループが終了する必要のために私は理解したように、余分な反復を行うと、n=50
余分な10回の反復私のプログラムはループのために正しく終了しません
ためn=100
余分な20回の反復
ためArrayList<String> numfb
に値を追加してi<n
の後には、反復回数と配列リストに値が追加されます。ここで
は私のコードです:
int i , n;
String temp;
Scanner input = new Scanner (System.in);
ArrayList<Integer> number=new ArrayList<Integer>();
ArrayList<String> numfb=new ArrayList<String>();
System.out.println("enter array range");
n=input.nextInt();
for(i=0; i<n; i++){
number.add(i,i+1);
}
for(i=0; i<n ;i++){
if(!((number.get(i)) % 3==0) || ((number.get(i)) % 5==0)){
temp=String.valueOf(number.get(i));
numfb.add(i,temp);
}
if((number.get(i)) % 5==0 && (number.get(i)) % 3==0){
numfb.add(i,"FizzBuzz");
}
else if((number.get(i)) %3 == 0){
numfb.add(i,"Fizz");
}
else if((number.get(i)) % 5 == 0){
numfb.add(i,"Buzz");
}
}
System.out.println(number);
System.out.println(numfb);
は、あなたのループ –
に第二の条件であれば、他の不足している場合は、他に欠けていますところで、リストの最後に項目を追加したい場合は、 'list.add(index、item)'を使う必要はありません。単に 'list.add(item)'を使用してください。 – Pshemo
[補完的なデバッグ手法](https://ericlippert.com/2014/03/05/how-to-debug-small-programs/)にご協力ください。その後も問題が残っている場合は、もう少し詳しくお聞かせください。 –