在java中,对数组行和索引的最大值进行计数

qjp7pelc  于 2021-07-12  发布在  Java
关注(0)|答案(2)|浏览(304)
public static void main(String[] args) {
    ArrayList<Hegyek> lista = new ArrayList<Hegyek>();
    try{
        File fájl = new File("hegyekMo.txt");
        Scanner olvasó = new Scanner(fájl, "UTF-8");

        olvasó.nextLine();
        while(olvasó.hasNextLine()){
            String[] sor = olvasó.nextLine().split(";");
            Hegyek hegy = new Hegyek();
            hegy.név = sor[0];
            hegy.hely= sor[1];
            hegy.magassag = Integer.parseInt(sor[2]);
            lista.add(hegy);
        }
    }

    catch (FileNotFoundException ex){
        System.out.println("File not exist!");
        System.exit(1);

    }
}

你好,我是新来的。如何计算“hegyekmo.txt”的行数,sor[2]在哪里最高?

1cklez4t

1cklez4t1#

如果您想知道文件“hegyekmo.txt”中的行数,您可以在应用程序中添加一个整数( int count = 0; ). 在while循环中,这个整数将增加1( count++; ). while循环结束后,整数计数将给出文件中的行数。
我不确定你是否只想知道最高的索引,但如果这是你想要的,你会得到它通过使用最终的变量长度( sor.length ).
希望我能帮你,继续工作!

2lpgd968

2lpgd9682#

需要两个辅助参数,一个用于行计数,一个用于最大值。

public static void main(String[] args) {
    ArrayList<Hegyek> lista = new ArrayList<Hegyek>();
    try{
        File fájl = new File("hegyekMo.txt");
        Scanner olvasó = new Scanner(fájl, "UTF-8");

        olvasó.nextLine();

        int rowCount = 0;
        int maxVal =Integer.MIN_VALUE;

        while(olvasó.hasNextLine()){
            rowCount++;
            String[] sor = olvasó.nextLine().split(";");
            Hegyek hegy = new Hegyek();
            hegy.név = sor[0];
            hegy.hely= sor[1];

            hegy.magassag = Integer.parseInt(sor[2]);
            if(maxVal<magassag) maxVal = magassag;
            lista.add(hegy);
        }
        //output (rowCount and maxVal)
    }

    catch (FileNotFoundException ex){
        System.out.println("File not exist!");
        System.exit(1);
    }
}

注意:由于您将值存储在 List ,你可以用 size() 方法来获取 List 它们也是文件中的行。最大值也可以从表中获得 List 使用maybe Lambda .

相关问题