我有一个字符串列表: 列表 = {"100:250:33","100:234:590","100:250:3400".........n}
我想用另一个字符串替换此列表中所有字符串的第一部分; 例如:字符串 str = "vn433";
预期:结果列表:{"vn433:250:33","vn433:234:590","vn433:250:3400"}
使用 for 循环会很耗时,所以我可以使用流吗? 我正在使用 Java 8。 任何帮助将不胜感激。谢谢
您可以使用
List.replaceAll
修改列表中的所有元素。要替换字符串中直到特定字符之前的所有字符,您可以使用字符串修改或正则表达式。这是使用第二个的示例:
private static final Pattern PATTERN = Pattern.compile(".*?:");
public static void main(String[] args) {
List<String> myList = new ArrayList<>();
myList.add("100:250:33");
myList.add("100:234:590");
myList.add("100:250:3400");
myList.replaceAll(s -> PATTERN.matcher(s).replaceFirst("vn433:"));
myList.forEach(System.out::println);
}