我得到了一个ArrayList“ ArrayList1”,内容如下

0090113itemone ,
1000120itemtwo ,
0090113itemthree


一个项目的前面总有7个数字。

现在,我想删除数字以仅将项目分配给ListView
我尝试将Array转换为String

String[] arr = ArrayList1.toArray(new String[ArrayList1.size()]);


然后使用substring剪切字符串中的前7个位置

result.append(arr.substring(0,7));


但这会给我一个错误无法对数组类型String []调用substring(int,int)

因此,我需要一种摆脱这些数字的方法。要么解决该错误,要么,如果您有更好的主意,我也对此持开放态度。

最佳答案

错误“无法在数组类型String []上调用substring(int,int)”意味着该方法不适用于此类型的对象。

尽管它适用于字符串。

您不需要像这样在ArrayList中创建一个Array:

String[] arr = ArrayList1.toArray(new String[ArrayList1.size()]);


而是立即使用ArrayList。我强烈建议将其重命名为Java Camel Case:“ arrayList1”,以避免与类混淆。使用正则表达式替换字符串中的数字。尝试运行以下for循环:

for (String item : arrayList1) {
    String result = item.replaceAll("[0-9]","");
    System.out.println(result);
}

10-07 16:27