【发布时间】:2020-09-19 06:11:01
【问题描述】:
我正在尝试执行一个 java 方法 solve(String s),它接受字符串并返回字符串中存在的最大数字。 (字符串包含字母和数字)。每当我尝试运行代码时,它都会引发错误 - java.lang.IndexOutOfBoundsException: Index: 11, Size: 11 这是我的代码:
public ArrayList<Integer> getIntArray(ArrayList<String> stringArray) {
ArrayList<Integer> result = new ArrayList<Integer>();
for(String stringVal : stringArray) {
result.add(Integer.parseInt(stringVal));
}
return result;
}
public int solve(String s) {
StringBuilder str = new StringBuilder(s);
ArrayList<String> arr = new ArrayList<String>();
String[] strArr = s.split("");
for(int i = 0; i < strArr.length; i++) {
arr.add(strArr[i]);
}
for(int i = 0; i < strArr.length; i++) {
if(!Character.isLetter(i)) {
arr.remove(i);
}
}
ArrayList<Integer> intArr = new ArrayList<Integer>();
intArr = getIntArray(arr);
return Collections.max(intArr);
谢谢。任何帮助将不胜感激。
【问题讨论】: