根据某三国游戏提供的武将资料,完成需求:
// 1.武力值排名前三的值是多少
// 2.求武力值最高3人名字
// 3.统计各个地区的武将
// 4.统计各个年龄段的武将 比如:10~19岁,20~29岁,30~39岁 40~49岁 50~59岁 60岁以上
// 5.统计各个年龄段的武将男女比例
// 6.统计平均年龄
// 7.统计平均年龄最高的地区
代码:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.*;
import java.util.function.Consumer;
public class Test6 {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new FileReader("sanguo.txt"));
TreeSet<String> set = new TreeSet<>();
//TreeMap<Integer, WuJiang> wjmap = new TreeMap<>();
ArrayList<WuJiang> wjlist = new ArrayList<>();
String wujiang = null;
//将武将添加进集合
while ((wujiang = reader.readLine()) != null) {
set.add(wujiang);
}
for (String s : set) {
String regx = "\\s+";
String[] split = s.split(regx);
//System.out.println(split.length);
//if (split.length == 7) {
WuJiang wu = new WuJiang();
Integer of = Integer.valueOf(split[0]);
wu.setName(split[1]);
wu.setHometown(split[2]);
wu.setSex(split[3]);
wu.setStart(Integer.valueOf(split[4]));
wu.setEnd(Integer.valueOf(split[5]));
wu.setForceValue(Integer.valueOf(split[6]));
wjlist.add(wu);
}
//1.求武力值排行前三的人和武力值。
TreeMap<Integer, String> qiansan = new TreeMap<>(new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o2 - o1;
}
});
wjlist.forEach(new Consumer<WuJiang>() {
@Override
public void accept(WuJiang wuJiang) {
qiansan.put(wuJiang.getForceValue(), wuJiang.getName());
}
});
System.out.println("武将战力前三: ");
Set<Map.Entry<Integer, String>> entries = qiansan.entrySet();
int c = 0;
for (Map.Entry<Integer, String> entry : entries) {
Syste