编写main方法实现如下功能:1随机生成30个 红、黄、蓝 汉字放入到数组String ss中打印数组内容2统计每个字有多少个3尝试将数组中的内容按照 红--》黄--》蓝 排序后再打印数组ss的内容
import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
import java.util.Random;
public class Main {
public static void main(String[] args) {
String[] ss = new String[30];
Random random = new Random();
Map<String, Integer> countMap = new HashMap<>();
for (int i = 0; i < ss.length; i++) {
int randomNumber = random.nextInt(3);
String color;
if (randomNumber == 0) {
color = "红";
} else if (randomNumber == 1) {
color = "黄";
} else {
color = "蓝";
}
ss[i] = color;
countMap.put(color, countMap.getOrDefault(color, 0) + 1);
}
System.out.println("数组内容:");
System.out.println(Arrays.toString(ss));
System.out.println("每个字的数量:");
for (Map.Entry<String, Integer> entry : countMap.entrySet()) {
System.out.println(entry.getKey() + ": " + entry.getValue());
}
Arrays.sort(ss, (s1, s2) -> {
if (s1.equals("红")) {
return -1;
} else if (s1.equals("黄") && s2.equals("蓝")) {
return -1;
} else {
return 1;
}
});
System.out.println("排序后的数组内容:");
System.out.println(Arrays.toString(ss));
}
}
``
原文地址: https://www.cveoy.top/t/topic/ixSY 著作权归作者所有。请勿转载和采集!