【发布时间】:2014-08-06 23:57:29
【问题描述】:
这里是 Java 新手。我来自 Python。在迭代 Java Set 时,关于删除或添加元素的 SO 也有类似的问题。我想知道的是修改集合中包含的元素。例如,["apple", "orange"] 到 ["iapple", "iorange"]。另外,我想在原地做,即不创建另一个集合,而是在迭代时将修改后的元素放入新集合中。
显然一个简单的for循环是行不通的,如下:
import java.util.Arrays;
import java.util.Set;
import java.util.HashSet;
class Test {
public static void main (String[] args) {
Set<String> strs = new HashSet<String>(Arrays.asList("apple", "orange"));
for (String str : strs) {
str = "i" + str;
}
}
}
【问题讨论】:
-
函数式方法是通过对原始集合应用转换函数来创建新集合。新集合可能只是对原始集合和转换函数的引用——技术到位。
-
@emory Yap。我想到了FP方法。我的印象是Java并不是特别适合FP。您介意提供代码示例吗?
-
我认为您正在寻找类似stackoverflow.com/a/19710021/348975
标签: java