我有几个字符串变量,都需要以相同的方式进行操作。 (小写,去掉符号和数字,并修剪重复的字符)有什么方法可以用循环更改所有这些字符串,而不必列出所有字符串并在单独的行上对每个字符串执行操作?
obj1 = obj1.toLowerCase().replaceAll("[^a-z]", "").[snip]
obj2 = obj2.toLowerCase().replaceAll("[^a-z]", "").[snip]
obj3 = obj3.toLowerCase().replaceAll("[^a-z]", "").[snip]
obj4 = obj4.toLowerCase().replaceAll("[^a-z]", "").[snip]
...是我现在必须做的,但我只想写一次操作行。
最佳答案
您可以使用 Stream 来获取列表:
List<String> results = Stream.of(obj1, obj2, obj3, obj4)
.map(s -> s.toLowerCase().replaceAll("[^a-z]", "").[snip])
.collect(toList());
关于Java 对多个字符串执行相同的操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50891798/