在java中计算数组行数和索引的最大值

在java中计算数组行数和索引的最大值,java,Java,你好,我是新来的。如何计算hegyekMo.txt的行数,sor[2]的最高值在哪里?需要两个辅助参数,一个用于行数,一个用于最大值 public static void main(String[] args) { ArrayList<Hegyek> lista = new ArrayList<Hegyek>(); try{ File fájl = new File("hegyekMo.txt");

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

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

    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);



    }
}
注意:由于您将值存储在列表中,所以可以使用size方法获取列表中的元素数量,这些元素也是文件中的行。也可以使用Lambda从表单列表中获取Max

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

很有效,非常感谢
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);
    }
}