Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 按降序排列ArrayList_Java_Sorting_Arraylist - Fatal编程技术网

Java 按降序排列ArrayList

Java 按降序排列ArrayList,java,sorting,arraylist,Java,Sorting,Arraylist,所以我试着把我的ArrayList从最大到最小排序。用户只能输入数字,然后将数字转换为字符串。这一切都很好,但当我显示我的分数时,我会得到这样的结果 98 81 81 76 64 105 103 100 任何人都知道如何使它分类 105 103 100 98 81 81 76 64 Dom—请记住,字符串是一组字符,每个字符都有一个整数值。排序字符串!==排序数字。Dom-请记住,字符串是一组字符,每个字符都有一个整数值。排序字符串!==对数字进行排序。您将数字保留为字符串,因此您将按字典顺

所以我试着把我的ArrayList从最大到最小排序。用户只能输入数字,然后将数字转换为字符串。这一切都很好,但当我显示我的分数时,我会得到这样的结果

98
81
81
76
64
105
103
100
任何人都知道如何使它分类

105
103
100
98
81
81
76
64

Dom—请记住,字符串是一组字符,每个字符都有一个整数值。排序字符串!==排序数字。

Dom-请记住,字符串是一组字符,每个字符都有一个整数值。排序字符串!==对数字进行排序。

您将数字保留为
字符串,因此您将按字典顺序对它们进行排序(
'9'
位于
'1'
之后)。相反,您应该将字符串解析为
Integer
s(例如,使用
Integer.valueOf
)并存储在
数组列表中。现在,当您对其进行排序时,元素将根据其数值进行计算。

您将数字保留为
字符串,因此您将按字典顺序对其进行排序(
'9'
位于
'1'
之后)。相反,您应该将字符串解析为
Integer
s(例如,使用
Integer.valueOf
)并存储在
数组列表中。现在,当您对其进行排序时,元素将根据其数值进行计算。

以下是代码

    List<String> firstArrayList = new ArrayList<String>();
    firstArrayList.add("4"); // .add(readUSerInput());
    firstArrayList.add("30");
    firstArrayList.add("1");
    firstArrayList.add("02");

    ArrayList<Integer> newArrayList = new ArrayList<Integer>();

    for(String numero: firstArrayList){
        newArrayList.add(Integer.parseInt(numero));
    }

    newArrayList.sort(Collections.reverseOrder());

    // To check
    for(Integer numero: newArrayList){
        // use a Scanner() to print numero to the screen
    }
List firstArrayList=新建ArrayList();
firstArrayList.add(“4”);/。添加(readUSerInput());
firstArrayList.添加(“30”);
firstArrayList.添加(“1”);
firstArrayList.添加(“02”);
ArrayList newArrayList=新ArrayList();
for(字符串编号:firstArrayList){
add(Integer.parseInt(numero));
}
排序(Collections.reverseOrder());
//查证
for(整数编号:newArrayList){
//使用扫描仪()将数字打印到屏幕上
}
这是代码

    List<String> firstArrayList = new ArrayList<String>();
    firstArrayList.add("4"); // .add(readUSerInput());
    firstArrayList.add("30");
    firstArrayList.add("1");
    firstArrayList.add("02");

    ArrayList<Integer> newArrayList = new ArrayList<Integer>();

    for(String numero: firstArrayList){
        newArrayList.add(Integer.parseInt(numero));
    }

    newArrayList.sort(Collections.reverseOrder());

    // To check
    for(Integer numero: newArrayList){
        // use a Scanner() to print numero to the screen
    }
List firstArrayList=新建ArrayList();
firstArrayList.add(“4”);/。添加(readUSerInput());
firstArrayList.添加(“30”);
firstArrayList.添加(“1”);
firstArrayList.添加(“02”);
ArrayList newArrayList=新ArrayList();
for(字符串编号:firstArrayList){
add(Integer.parseInt(numero));
}
排序(Collections.reverseOrder());
//查证
for(整数编号:newArrayList){
//使用扫描仪()将数字打印到屏幕上
}


ArrayList怎么了?@Steven我们都做完了今年的家庭作业,教授只是给任何想尝试的人分配额外的作业。我让它按降序排序,但它会从最大的两位数到三位数列出它。如果这有意义的话,那么,你试过什么?你被哪一部分的援助困住了?你的目标是哪种技术。网JAVA还有什么?ArrayList怎么了?@Steven我们都做完了今年的家庭作业,教授只是给任何想尝试的人分配额外的作业。我让它按降序排序,但它会从最大的两位数到三位数列出它。如果这有意义的话,那么,你试过什么?你被哪一部分的援助困住了?你的目标是哪种技术。网JAVA还有别的吗?那很好!我正在使用NetBeans JOptionPane,当我让程序接受这个数字时,我只得到Integer.parseInt(textfield),而不是仅仅添加字符串。这非常有效!我使用的是NetBeans JOptionPane,当我让程序接受数字时,我只得到Integer.parseInt(textfield),而不是仅仅添加字符串。谢谢你,这也帮助我解决了我的问题。我一直在编写Bukkit Minecraft插件,并在做Java编程的学校作业,它们与Java在我大脑中的工作方式有点冲突。哈哈,谢谢你,这也帮助我解决了我的问题。我一直在编写Bukkit Minecraft插件,并在做Java编程的学校作业,它们与Java在我大脑中的工作方式有点冲突。哈哈,什么是Util.afficher()?这不会按升序排序吗?谢谢你的注意,我相应地编辑了,使用Collection.reverseOrder()你好Justin。好实际上,它确实有效,我在eclipse上尝试了这段代码,并使用正确的Integer类获得了正确的ordre。如果需要,我会删除,但我不明白你为什么认为它不起作用。糟糕,我错过了数组列表的副本!。在您的示例中,您只有一位数的字符串,这可以为错误的解决方案提供正确的答案。很抱歉。什么是Util.afficher()?那不按升序排序吗?谢谢你注意,我做了相应的编辑,使用Collection.reverseOrder()你好Justin。好实际上,它确实有效,我在eclipse上尝试了这段代码,并使用正确的Integer类获得了正确的ordre。如果需要,我会删除,但我不明白你为什么认为它不起作用。糟糕,我错过了数组列表的副本!。在您的示例中,您只有一位数的字符串,这可以为错误的解决方案提供正确的答案。很抱歉。