作者pugboy (缘投肥)
看板java
标题[问题] 请问关於ReverseString程式的问题
时间Sat Apr 7 10:03:44 2012
各位大哥大姐你们好,我是刚学习JAVA的新手,第一次发文,如有冒犯之处,请多包涵
就是我在一个自学网上练习一个习题,
题目为:写一个将颠倒字串输出的程式ReverseString.java。
我将此网站给的答案另存为Java档
然後compile成class档
最後执行 java ReverseString
跑出一串讯息为
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at ReverseString.main<ReverseString.java:10>
是不是哪里出错呢?并没有将颠倒字串输出阿,
可不可以请各位大哥大姐帮我解决问题呢?
不好意思麻烦了,谢谢。
Code如下:
import java.io.*;
/**ReverseString
将第一个参数字串以相反的顺序输出
*/
public class ReverseString {
public static void main(String[] args) throws IOException{
int length = args[0].length();
//输出结果为result
char result[] = new char[length];
//for args[0]中的第一个字到最後一个字
for(int i = 0 ; i < length;i++){
//result[length - i - 1] = args[0][i]
result[length - i - 1] = args[0].charAt(i);
}//end for
System.out.println(result);
}//end main
}//end ReverseString
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.133.52.180
1F:→ pugboy:我在网路上找到java.lang.arrayindexOutOfBoundsException 04/07 10:10
2F:→ pugboy:的意思是数组上限超出了,是什麽意思呢? 04/07 10:13
3F:→ pugboy:i < length 是这行出的问题吗? 04/07 10:14
4F:推 PsMonkey:都告诉你第十行出问题了,你也讲一下第十行是啥吧..... 04/07 11:10
5F:推 eieio:意思是例如 array A[] 长度为 5,结果你去抓 A[10] 04/07 12:08
6F:推 eieio:如果 args[] 是空的,那 args[0] 也会爆掉 04/07 12:11
7F:→ pugboy:第十行是int length = args[0].length(); 04/07 14:47
8F:→ pugboy:所以是我一开始设的长度问题吗? 谢谢P大跟E大的回覆! 04/07 14:53
9F:→ pugboy:还是试不出来耶... 04/07 15:47
10F:→ ssc24:执行 java ReverseString HelloWorld 看结果 04/07 16:28
11F:→ pugboy:谢谢你ssc24大大 成功了 04/07 16:42
12F:推 mrker:可以把String转成StringBuilder 有reverse可用 04/08 00:08
13F:推 risker760915:他字串是从args[0]取得,而这个是你要给他的 04/10 17:33