安卓从最高到最低排序,位置从另一个arraylist java更改
我有两个arraylist
一个是整数数组,另一个是字符串数组。这里我需要对整数数组值进行排序,从最高值排序到最低值。此时,我还需要移动字符串数组中的位置
例如:
字符串数组:[注册和行政主管,网页设计,IT-软件工程师,会计,网络工程师] 整数数组:[4,2,2,6,2]
但我需要上面的结果
字符串数组:[会计、注册和行政主管、IT-软件工程师、网络工程师、网站设计] 整数数组:[6,4,2,2,2]
需要对整数数组进行排序,同时更改字符串数组位置,如果整数数组中出现相同的值,则需要按字母顺序排序。我该怎么办
有最近的路吗
# 1 楼答案
试试这样的
这将是您的数据结构
现在创建这个类的数组列表
dataArrayList<DataModel>
使用方法按优先级对int数组进行排序
您应该得到一个包含所有数据的排序Arraylist
# 2 楼答案
为什么不使用第三个类将所有字符串按权重分组呢
创建一个比较器来排序WeightString,然后使用流API来使用数据
# 3 楼答案
# 4 楼答案
在您的情况下,数组小意味着使用冒泡排序(冒泡排序对于大数组来说不是一种高性能)。根据交换字符串数组的位置对int数组进行排序,如下所示
# 5 楼答案
我希望这将有助于您:
输出:
Accountant 6 Register & Head of Administration 4 IT - Software Engineer 2 NetworkEngineer 2 Web Designing 2