次の問題があります。私はメソッドを使ってリストを取得し、そのリスト内の値を見つけて別のものに置き換えたいと思う。Java、リスト内の値を置き換えます。
void replaceAll(ArrayList<Integer> arr, Integer toFind, Integer replacement) {
int indexOfArray = arr.indexOf(toFind);
if(arr.contains(toFind)) {
for(int x = 0; x < arr.size(); x++) {
if (arr.contains(toFind)) {
arr.remove(toFind);
arr.add(indexOfArray, replacement);
}
}
}
}
これは私が自分のために取り組んだ解決策であり、最も効果的です。しかし、私はそれがforループの使用なしでもっときれいに行うことができると思います。誰かが私にどのように教えてくれましたか?
このコードが正常に機能する場合は、質問はスタックオーバーフローに関するトピックですが、姉妹サイト[コードレビュー](https://codereview.stackexchange.com/)には良いかもしれません。 –
タブレットでテストすることはできませんが、UnaryOperatorの3項演算子で 'List#replaceAll'を実行するとどうなりますか? –