私のプログラムには2つのメソッドがあります.1つは配列の最小のintの上下に*****を加え、もう1つは%%%%%を最大と下のものに加えます。最大の方法は本質的に他の方法と同じですが、何らかの理由で必要なものを追加しない方法です。ここでArrayListに正しく追加することができません
は、最小要素法である:ここで
public static ArrayList smallestElement() {
int smallest = array[0];
for (int i = 0; i < array.length; i++)
if (array[i] < smallest)
smallest = array[i];
String smallestString = String.valueOf(smallest);
ArrayList<String> list = new ArrayList<String>();
for(int i = 0; i < array.length; i++) {
if (smallestString.equals(String.valueOf(array[i]))) {
list.add("*****");
list.add(Integer.toString(array[i]));
list.add("*****");
} else {
list.add(Integer.toString(array[i]));
}
}
return list;
}
最大の要素のための方法である:
public static ArrayList largestElement() {
int largest = array[0];
for (int i = 0; i < array.length; i++)
if (array[i] > largest)
largest = array[i];
String largestString = String.valueOf(largest);
for(int i = 0; i < array.length; i++) {
if (largestString.equals(String.valueOf(array[i]))) {
smallestElement().add("%%%%%");
smallestElement().add(Integer.toString(array[i]));
smallestElement().add("%%%%%");
} else {
smallestElement().add(Integer.toString(array[i]));
}
}
System.out.println(smallestElement());
return smallestElement();
}
}
これが正しく実行されていない理由を誰もが知っている場合、私は本当に感謝しますhelp
'array'はどこで宣言されインスタンス化されていますか?また、変数に 'array'や' list'のような名前を付けないでください。 – CraigR8806
'int'sを比較しています。なぜそれらを' String'sにキャストしますか?そしてそれはリストに追加している間に 'Integer'に戻すだけです。 –
' smallestElement() 'を呼び出すたびに、新しい' List'を作成しています。 – azurefrog