繁体   English   中英

如何在 Java 的数组中用另一个替换整个字符串

[英]How to replace a whole string with another in an array in Java

我想在数组中用 String newString替换,比如 String oldString

for (int i = 0; i < text.length; i++) {
    if (text[i].equals(oldString)) {
        text[i] = text[i].replace(oldString, newString);
    }
}

Java 中的 go 怎么会这样?

在这种情况下,您不需要使用replace() ,因为您已经在检查text[i]是否等于oldString ,这意味着您正在替换整个String ,这意味着分配就足够了:

for (int i = 0; i < text.length; i++) {
   if (text[i].equals(oldString)) {
      text[i] = newString;
   }
}

另一方面,如果您想将等于oldStringtext[i]的子字符串替换为newString ,您可以编写:

for (int i = 0; i < text.length; i++) {
    text[i] = text[i].replace(oldString,newString);
}

您可以在此数组的索引上使用IntStream并以某种方式处理某些字符串:

String[] text = {"Lorem", "oldString", "dolor", "sit", "amet"};

IntStream.range(0, text.length)
        // to filter the certain strings, or you
        // can skip this line to process each string
        .filter(i -> text[i].equals("oldString"))
        // processing a string
        .forEach(i -> text[i] = text[i].replace("oldString", "newString"));

System.out.println(Arrays.toString(text));
// [Lorem, newString, dolor, sit, amet]

另请参阅:替换字符串数组中的某些字符串

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM