【发布时间】:2019-05-05 02:45:57
【问题描述】:
我有一个代码应该从一个字符串中取出 2 个元素。使用字母数字可以正常工作,但是当我输入一个相同数字的字符串时,即只是“1”:(111111111),没有返回任何东西或只是“1”或与我预期的非常不同的东西。
这是我的代码:
String str= "222222222";
System.out.println(str.replace(str.substring(3, 5), "")); }
在这种情况下,返回“2”,但是 如果字符串少一个“2”,则不返回任何内容
感谢您的帮助:)
【问题讨论】:
-
这不是预期的吗?你有什么期待?
-
str.substring(3,5)是"22"。所以你用""替换每个"22" -
... 因为有奇数个 2,所以你会得到一个不匹配的
"2" -
或许你应该阅读文档,即
replace(target, replacement)的javadoc -
这绝对是一个逻辑问题。我会直接去 javadoc 谢谢大家,人们
标签: java string replace substring