求解答
夜懂訫 2014-05-06 05:27:57 package lianxi;
public class TextString {
public static void main(String[] args)
{
String s="asdada5sd125156a6dADSADXA";
String L="abcdefghijklmnopqrstuvwxyz";
String U="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
int Lcount=0,Ucount=0,Ocount=0;
for(int i=0;i<=s.length();i++)
{
char c=s.charAt(i);
if(L.indexOf(c) !=-1) {Lcount ++;}
else if(U.indexOf(c) !=-1){Ucount ++;}
else{Ocount ++;}
}
System.out.println(Lcount+","+Ucount+","+Ocount);
}
}
这是看了马学兵老师视频以后 ,他布置的作业!我在自己eclipse上也敲出这样的代码 可是就是不能运行通过!难道是我的IDE有问题么?
下面是运行以后控制台给出的警告:
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 25
at java.lang.String.charAt(String.java:686)
at lianxi.TextString.main(TextString.java:12)
这个作业还有另外一个算法的代码如下:package lianxi;
public class TextString {
public static void main(String[] args)
{
String s="asdada5sd125156a6dADSADXA";
int Lcount=0,Ucount=0,Ocount=0;
for(int i=0;i<=s.length();i++)
{
char c=s.charAt(i);
if(c>='a'&&c<='z') {Lcount ++;}
else if(c>='A'&&c<='Z'){Ucount ++;}
else{Ocount ++;}
}
System.out.println(Lcount+","+Ucount+","+Ocount);
}
}
还是给我不能通过!控制台给出这样的警告:
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 25
at java.lang.String.charAt(String.java:686)
at lianxi.TextString.main(TextString.java:10)
String.java:686显示的内容代码是: throw new StringIndexOutOfBoundsException(index);
感觉总是在if(c>='a'&&c<='z')这个地方出了问题 但是到底在哪里出的问题呢