下面的代码给出了问题,我只需要将字符串中的字母转换为字符,并且当我运行我的测试时,当代码变为char c = t.charAt(0);
时,我不断收到错误。确切的错误消息是:将字符串转换为char时的StringIndexOutOfBoundsException。可能的原因?
java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:0
我不能让它只是把字母串到一个char。任何提示将非常感谢。
String[] zombies;
int num = 0;
Vector<Zombie> practice = new Vector<Zombie>();
String zombieString = "SZI1";
zombies = zombieString.split("");
for (String t : zombies) {
if (isNumeric(t)) {
int multiplier = Integer.parseInt(t);
String extraZombie = zombies[num - 1];
char x = extraZombie.charAt(0);
for (int i = 0; i <= multiplier; i++) {
Zombie zombie = Zombie.makeZombie(x);
practice.add(zombie);
}
} else {
char c = t.charAt(0);
//Zombie zombie = Zombie.makeZombie(c);
//practice.add(zombie);
num++;
}
}
sooo,有什么错误? – 2013-04-21 01:11:32
你用来获得僵尸的分割看起来不太有用。让我看看 - 那个错误表明它等于空字符串。你怎么看? – duffymo 2013-04-21 01:12:30
“t”可能是空字符串。 @duffymo我认为他正试图将这些字符串分成单个字符或许? – KyelJmD 2013-04-21 01:13:44