たとえば、次の文字列を入力しました: " qwerty1qwerty2 ";
出力として[1,2]が欲しいです。
以下の私の現在の実装:
import java.util.ArrayList;
import java.util.List;
public class Test1 {
public static void main(String[] args) {
String inputString = args[0];
String digitStr = "";
List<Integer> digits = new ArrayList<Integer>();
for (int i = 0; i < inputString.length(); i++) {
if (Character.isDigit(inputString.charAt(i))) {
digitStr += inputString.charAt(i);
} else {
if (!digitStr.isEmpty()) {
digits.add(Integer.parseInt(digitStr));
digitStr = "";
}
}
}
if (!digitStr.isEmpty()) {
digits.add(Integer.parseInt(digitStr));
digitStr = "";
}
for (Integer i : digits) {
System.out.println(i);
}
}
}
しかし、再確認した後、私はいくつかの点を明らかにしました:
コードの一部の行が2回繰り返されます。
私はリストを使用します。配列を使用するのはあまり良い考えではないと思います。
それで、あなたはどう思いますか?
何かアドバイスをいただけますか?