替换 Java 中的字符串后的字符串长度?
String length after replacing a string in Java?
如何在替换字符串中的子字符串后获得新字符串的正确长度。我使用了字符串长度并得到了第一个字符串的长度。
IE。
我的字符串是 "abcdefg",长度是 7。将 "cde" 替换为 "z" 后,新字符串是 abzfg(使用全部替换),新字符串的长度仍然是 7,如果我使用字符串长度。我可以通过任何方法获得正确的长度 5 吗?
将新字符串保存在新变量中。然后检查长度。
String s = a.replace(...);
int newLength = s.length;
在 Java 中,字符串是不可变的。 http://www.programcreek.com/2013/04/why-string-is-immutable-in-java/
这意味着您必须保留对字符串对象的替换操作的结果。 (函数不直接修改字符串对象的实际内容)
示例:您可以根据自己的情况执行类似的操作
string s = "abcdefg";
s = s.replace("cde", "");
System.out.println(s.length);
字符串在 Java 中是不可变的。你不能改变它们。
您将需要使用另一个字符串或使用 StringBuilder。
String A = "abcdefg";
String B = A.substring(0,2) + 'z' + A.substring(5,6);
或使用 StringBuilder
StringBuilder A = new StringBuilder("abcdefg");
A.replace(2,5,"z");
我只是 运行 上述问题的代码,它产生了正确的输出,
即 5. 确保你写了 :-
str=str.replaceAll("cde","z");
不只是
str.replaceAll("cde","z");
(因为Java中的字符串class是不可变的)
如何在替换字符串中的子字符串后获得新字符串的正确长度。我使用了字符串长度并得到了第一个字符串的长度。 IE。 我的字符串是 "abcdefg",长度是 7。将 "cde" 替换为 "z" 后,新字符串是 abzfg(使用全部替换),新字符串的长度仍然是 7,如果我使用字符串长度。我可以通过任何方法获得正确的长度 5 吗?
将新字符串保存在新变量中。然后检查长度。
String s = a.replace(...);
int newLength = s.length;
在 Java 中,字符串是不可变的。 http://www.programcreek.com/2013/04/why-string-is-immutable-in-java/
这意味着您必须保留对字符串对象的替换操作的结果。 (函数不直接修改字符串对象的实际内容)
示例:您可以根据自己的情况执行类似的操作
string s = "abcdefg";
s = s.replace("cde", "");
System.out.println(s.length);
字符串在 Java 中是不可变的。你不能改变它们。
您将需要使用另一个字符串或使用 StringBuilder。
String A = "abcdefg";
String B = A.substring(0,2) + 'z' + A.substring(5,6);
或使用 StringBuilder
StringBuilder A = new StringBuilder("abcdefg");
A.replace(2,5,"z");
我只是 运行 上述问题的代码,它产生了正确的输出,
即 5. 确保你写了 :-
str=str.replaceAll("cde","z");
不只是
str.replaceAll("cde","z");
(因为Java中的字符串class是不可变的)