String word = "abcdefg";
int a_counter = word.length() - word.replace("a", "").length();
此代码为我提供了'word'字符串中'a'的计数。但有人可以解释一下它的工作原理吗?(Java)
答案 0 :(得分:1)
添加syso
语句后,现在应该清楚。
word.length()
- 实际长度为7
word.replace(“a”,“”) - 从字符串a
中删除abcdefg
,因此长度变为6
,返回长度为{{的新字符串对象 1}}
6
<强>输出强>
public static void main(String[] args) throws Exception {
String word = "abcdefg";
System.out.println(word.length());
System.out.println(word.replace("a", "").length());
int a_counter = word.length() - word.replace("a", "").length();
System.out.println(a_counter);
}
答案 1 :(得分:1)
word.length()
为您提供字符串中所有字符的数量。
word.replace("a", "")
从初始字符串中删除所有&#39;以及生成新字符串。两者的长度差异就是你的初始字符串中的&#39; a的数量...
答案 2 :(得分:0)
word.length()
= 7且word.replace("a", "")
= bcdefg,其长度为6,所以7-6 = 1
答案 3 :(得分:0)
初始字符串word
word.length()
通过从word
word.replace("a", "")
word
中不是'a'的字符数。或者从word
word.replace("a", "").length()
word
word.length() - word.replace("a", "").length();
答案 4 :(得分:0)
_drafts
返回单词长度(谢谢Captain Obvious)。
word.length()
删除所有&#39; a&#39;后返回单词的长度。 随着&#34; abcdefg&#34;如你所说,你得到:
word.replace("a", "").length