[英]Bubble Sort code : Exception in main thread
public class Main {
public static void main(String[] args){
int nums[] = {9,8,4,5,6,7};
int temp=0;
for(int i=0;i<nums.length;i++){
for(int j=0;j<nums.length;j++){
if(nums[j]>nums[j+1]){ //swap
temp=nums[j];
nums[j]=nums[j+1];
nums[j+1]=temp;
}
}
}
for(int i=0;i<nums.length;i++){ //print array after sorting
System.out.print(nums[i]+"-->");
}
}
}
我需要按升序對解決方案進行排序。 但是,它不斷拋出錯誤-->
線程“main”中的異常 java.lang.ArrayIndexOutOfBoundsException:索引 6 超出 Average.main(Average.java:21) 處長度 6 的范圍。
那是因為在內部循環中你迭代直到j < nums.length
但隨后你訪問j+1
索引nums[j+1]
。 將內循環替換為
for (int j = 0; j < nums.length - 1; j++) {
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.