Java 按降序排列ArrayList
所以我试着把我的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-请记住,字符串是一组字符,每个字符都有一个整数值。排序字符串!==对数字进行排序。您将数字保留为字符串,因此您将按字典顺
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。如果需要,我会删除,但我不明白你为什么认为它不起作用。糟糕,我错过了数组列表的副本!。在您的示例中,您只有一位数的字符串,这可以为错误的解决方案提供正确的答案。很抱歉。