ArrayList检索第一个和最后一个结果而不对ArrayList进行排序

gym*_*ode 0 java arrays sorting netbeans arraylist

我有一个String的ArrayList,我想在计算字母顺序后检索名字的第一个和最后一个结果.以下是我的代码片段:

ArrayList<String> list = new ArrayList<String>(20);
    list.add("Charles Darwin");
    list.add("Albert Einstein");
    list.add("Issac Newton");
    list.add("Tony Hoare");
    list.add("Grace Hopper");
    list.add("Edgar Dijkstra");
    list.add("Ada Lovelace");
    list.add("Charles Babbage");
    list.add("Stephen Hawking");

String biggest = "";
            String smallest = "";

            for (int i = 0; i < list.size(); i++) {
                String first = list.get(i);
                for (int j = 0; j < list.size(); j++) {
                    String second = list.get(j);
                    if (!first.equalsIgnoreCase(second)) {
                        if (first.compareToIgnoreCase(second)>0){
                            biggest=first;
                        }
                        if (first.compareToIgnoreCase(second)<0){
                            smallest=first;
                        }
                    }

                }
            }
System.out.println(biggest);
            System.out.println(smallest);
Run Code Online (Sandbox Code Playgroud)

我能够检索每个值进行比较,但结果总是显示斯蒂芬霍金是最大和最小的.

我想要的结果是最大的Ada Lovelace和最小的Tony Hoare.

Evg*_*eev 5

您可以使用Collections.min/max