gpt4 book ai didi

java - 从另一个 arraylist java 从最高到最低排序和位置更改

转载 作者:搜寻专家 更新时间:2023-11-01 08:34:06 26 4
gpt4 key购买 nike

我有两个arraylist.,

一个是整数数组,另一个是字符串数组。在这里,我需要对整数数组值进行排序,以从最高值到最低值排序。这时我也需要从字符串数组中移动位置。

例如:

字符串数组:[注册和行政主管、网页设计、IT - 软件工程师、会计师、网络工程师]整数数组:[4, 2, 2, 6, 2]

但是我需要上面的结果.,

字符串数组:[会计、注册和行政主管、IT - 软件工程师、网络工程师、网页设计]整数数组:[6, 4, 2, 2, 2]

需要对整数数组进行排序,同时更改字符串数组的位置,如果整数数组中出现相同的值,则需要按字母顺序排序。我该怎么办?

有没有最短的路?

最佳答案

希望对您有所帮助:

int[] intArray = new int[] { 4, 2, 2, 6, 2 };
String[] strArray = new String[] { "Register & Head of Administration", "Web Designing", "IT - Software Engineer", "Accountant", "Network Engineer" };
int tmp0 = 0;
String tmp1 = "";
for (int i = 0; i < intArray.length; i++) {

for (int j = i + 1; j < intArray.length; j++) {

if (intArray[j] > intArray[i]) {

// swap in int-Array
tmp0 = intArray[i];
intArray[i] = intArray[j];
intArray[j] = tmp0;

// swap in string-Array
tmp1 = strArray[i];
strArray[i] = strArray[j];
strArray[j] = tmp1;
} else if (intArray[j] == intArray[i]) {

// sorts alphabetically
if (strArray[j].compareTo(strArray[i]) < 0) {

tmp1 = strArray[i];
strArray[i] = strArray[j];
strArray[j] = tmp1;
}
}
}
}

//output
for (int k = 0; k < intArray.length; k++) {

System.out.println(strArray[k] + " " + intArray[k]);
}

输出:

会计师 6
注册和行政主管 4
IT - 软件工程师 2
网络工程师2
网页设计 2

关于java - 从另一个 arraylist java 从最高到最低排序和位置更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38141218/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com