【发布时间】:2021-07-02 14:24:58
【问题描述】:
我正在编写一个代码,它接受一个字符串数组并过滤掉包含某个字母的某些内容。例如,对于我拥有的数组,我想过滤掉所有包含字母“b”的内容并将它们从数组中删除,而不创建新数组(从现有数组中删除)。我目前正在使用 indexOf 方法,它给我带来了问题。它给了我一个错误,说 int 不能转换为字符串。我不确定那是什么问题。
public class Main {
public static void main(String[] args) {
String [] arr = {"abc","bcd", "cad", "aaa"};
for(int i = 0; i < arr.length; i++){
for(int j = 0; j < arr[i].length(); j++){
String index = arr[i].indexOf(j, j + 1);
if(index == "b"){
arr[i] = "";
}
}
}
for(int i = 0; i < arr.length; i++){
System.out.println(arr[i]);
}
}
}
【问题讨论】:
-
我相信你想要的是 charAt() 而不是 indexOf()。
标签: java arrays loops indexing filter