Java:选择排序停止,没有任何错误消息

问题描述

我正在为我的计算机科学课制作一个基本程序,该程序应该在数组上执行选择排序。
问题是,它停止在过程的中间,我不知道为什么。
它曾经给我提供了一个超出范围的异常,由于某种原因,它不再起作用了。
如果有人可以帮助我解决此问题,我将不胜感激。

import java.util.Random;
public class main {

    public static void main(String[] args) {
        int i;
        int j;
        int k;
        int tausch;
        //int size = 10;
        Random rand = new Random();
        int z[] = new int[10];
        for(i=0;i<10;i++) {
            z[i] = rand.nextInt(10) + 1;
        }
        for(i=0;i<z.length;i++) {
            System.out.print(z[i]+",");
        }
        
        long startTime = System.nanoTime();
        for(i=0;i<z.length;i++) {
            k = i;
            for(j=i+1;j<10;i++) {
                if(z[k] > z[j]) {
                    k = j;
                }
            }
            tausch = z[i];
            z [i] = z[k];
            z[k] = tausch;
        }
        long endTime = System.nanoTime();
        long totalTime = endTime - startTime;
        
        System.out.println();
        for(i=0;i<z.length;i++) {
            System.out.print(z[i]+",");
        }
        System.out.println();
        System.out.print(totalTime);
        
    }

}

解决方法

for(j=i+1;j<10;i++)

应该是for(j=i+1;j<10;j++)-您要增加错误的变量。