作者cjdcjdc (ㄚ达)
看板java
标题[问题] 写排序的程式遇到java.lang.ArrayIndexOutOfBoundsException
时间Wed Aug 22 14:52:10 2007
public class tttt {
public static void main(String args[]){
int listy[]={12,45,78,89,56,46,15,89};
sort_list(listy);
String str1="排序後阵列内容如下:\n";
for(int i=0;i<8;i++)
str1=str1 + String.valueOf(listy[i]) + ",";
System.out.println(str1);
}
static void sort_list(int listy[]){
int i,j,x;
for(i=0;i<7;i++){
for(j=i+1;i<8;j++){
if(listy[i]<listy[j]){
x=listy[i];listy[i]=listy[j];listy[j]=x;
}
}
}
}
}
以上是完整的程式码
写完後,执行时,出现错误
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8
at tttt.sort_list(tttt.java:15)
at tttt.main(tttt.java:4)
但我检查了一下,我在存取时,
并没有超出阵列的索引范围,个数均在8个以下,
为什麽会有错误呢?
烦请老手纠正一下,谢谢罗~~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.167.224.118
1F:推 BDFishX:第二个 for 是不是该 j<8? 08/22 14:53
2F:推 cjdcjdc:啊啊啊.....竟然犯了小错误.....,谢谢指正。 08/22 15:37