public static void main(String[] args) {
// TODO Auto-generated method stub
String str="aaabbddaabbcc";
String[] str2=str.split("");
String pointer=str2[0];
int count=0;
String finalStr="";
for(String str132:str2)
{
if(str132.equalsIgnoreCase(pointer))
{
++count;
}
else
{
finalStr+=str132+count;
count=0;
pointer=str132;
++count;
}
}
System.out.println(finalStr);
}
在执行 str.split("")
时,为什么我在 str2
数组的第 0 个索引中得到一个 ""
?
最佳答案
why am i getting a "" in the 0th index of the str2 array?
因为您使用的分隔符在这里已匹配:
aaaabbddaabbcc
^
由于 .split()
收集在进入字符串时“走过”的部分,因此这里它收集空字符串。
还要注意,由于分隔符为空,为了避免无限循环,在下一次迭代时,.split()
将在开始再次搜索之前转发一个字符。
关于java - 为什么在执行 split() 时,数组的第 0 个索引中有 ""且不带分隔符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22718096/