java - 迭代 List<String> 并修改 String

标签 java string collections

我不能用这种方式修改 List 的元素:

for (String s : list)
{
   s = "x" + s;
}

执行后这个列表的代码元素没有改变 如何用最简单的方式通过List实现modyfing的迭代。

最佳答案

由于 String 对象是不可变的,因此您无法更改正在迭代的值。此外,您不能修改在这样的循环中迭代的列表。执行此操作的唯一方法是使用标准循环遍历列表索引或使用 ListIterator 接口(interface):

for (int i = 0; i < list.size(); i++)
{
    list.set(i, "x" + list.get(i));
}

for (ListIterator i = list.listIterator(); i.hasNext(); )
{
    i.set("x" + i.next());
}

关于java - 迭代 List<String> 并修改 String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4851663/

相关文章:

java - Hibernate 查询未返回正确的值

c - Vugen - 在 mkdir 路径中创建动态值

java - 如何对 HashMap 列表进行排序

scala - 编写性能 scala 不可变集合

Java 接口(interface)使用指南——接口(interface)中的 getter 和 setter 是否不好?

java - 使用 cobertura 插件跳过*测试*

java - MongoDB Java 驱动程序 API 文档中提供的 DBCursor 和 MongoCursor 之间的区别

java - 如何使用Java将合并排序数组int代码格式化为数组字符串代码?

c++ - 打印 float ,保持精度

java - 哪个java集合允许重复键