我想对两个并行数组进行排序,一个是 String ,另一个是 double 数据类型
我对编程领域比较陌生,我希望你能帮助我对这些数组进行排序。这个想法是在文本区域上显示菜单项并按名称对项目进行排序。并行数组包含食品,另一个数组包含价格。
String[] items = {"Gatspy", "Coffee", "Chicken", "Mango Juice"};
double[] prices = {8.99, 23.50, 29.90, 7.50};
I'm relatively new to the programming scene and i would like you to assist me with sorting of these arrays. The idea is to display a menu item on a textArea and sort the items by name. The parralel arrays contain food items and the other one prices.
String[] items = {"Gatspy", "Coffee", "Chicken", "Mango Juice"};
double[] prices = {8.99, 23.50, 29.90, 7.50};
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
或者如何将商品名称和价格封装在一个类中,然后拥有该类的单个实例数组并使用
Comparator
对它们进行排序?例如
Or how about encapsulating the item name and price in a class, then have a single array of instances of this class and use a
Comparator
to sort them?E.g.
首先不要使用数组,使用 <代码>地图。在您的情况下,请使用
TreeMap
,它按其键排序。现在迭代条目:
参考: Java 教程 > 集合跟踪 > 地图界面
Don't use arrays in the first place, use a
Map
. In your case, use aTreeMap
, it's sorted by its keys.Now iterate over the entries:
Reference: Java Tutorial > Collections Trail > The Map Interface
您应该使用对象:
然后您可能有一个 Items 数组(或列表):
并且您可以使用 Arrays.sort() (或 Collections.sort() 如果您使用列表而不是数组)。
有关更多详细信息,请阅读有关集合的 Java 教程。
You should use objects:
Then you may have an array (or a list) of Items :
and you may sort this array using Arrays.sort() (or Collections.sort() if you use a List instead of an array).
Read the Java tutorial on Collections for more details.
可能的方法可能与此 math3 库中实现的方法相同:
org.apache.commons.math3.util.MathArrays#sortInPlace
Possible approach could be the same as implemented in this math3 library:
org.apache.commons.math3.util.MathArrays#sortInPlace