有一种方法可以使用正则表达式函数将字符串拆分为重复字符,但我想在不使用它的情况下进行。
例如,给定一个字符串,例如:"EE B"我的输出将是一个字符串数组,例如
{"EE", " ", "B"}
我的方法是:
给定一个字符串,我将首先找到字符串中唯一字符的数量,以便我知道数组的大小。然后我会将字符串更改为字符数组。然后我会检查下一个字符是否相同。如果相同,则将它们附加在一起,如果不开始一个新字符串。
到目前为止我的代码..
String myinput = "EE B";
char[] cinput = new char[myinput.length()];
cinput = myinput.toCharArray(); //turn string to array of characters
int uniquecha = myinput.length();
for (int i = 0; i < cinput.length; i++) {
if (i != myinput.indexOf(cinput[i])) {
uniquecha--;
} //this should give me the number of unique characters
String[] returninput = new String[uniquecha];
Arrays.fill(returninput, "");
for (int i = 0; i < uniquecha; i++) {
returninput[i] = "" + myinput.charAt(i);
for (int j = 0; j < myinput.length - 1; j++) {
if (myinput.charAt(j) == myinput.charAt(j + 1)) {
returninput[j] += myinput.charAt(j + 1);
} else {
break;
}
}
} return returninput;
但是第二部分有问题,因为我不知道为什么当字符改变时它没有开始一个新的字符串。
慕桂英546537
守着一只汪
相关分类