List中能取到已知字段名的值吗?

从一个List中取出多个值进行计算再放入另一个List里应该怎么做?

没听清楚你要怎么计算.. 计算和之后 再加入第二个list,那list2的 长度要改变了吧 。
你设一个数组来接受第一个list1的值,然后再计算数组里的数据。 再存入list2..

或者直接计算你 list1里面的值 然后直接存

取决你的计算方法

我第一个想到的就是循环,你能说点更清楚点么?

可以,获取你所知道的所需要计算的key的值,然后进行累加,将最新的结果存放至新的list,然后将其余的值放至新的list即可。

package com.yao.xfire.client;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class SumList {

public static void main(String[] args) {
    List<String> list = new ArrayList<>();
    list.add("money:2000");
    list.add("money:3000");
    list.add("money:4000");
    list.add("age:18");
    list.add("age:19");
    list.add("age:20");
    list.add("姓名:张三");
    list.add("姓名:李四");
    List<String> list2 = getLsit(list);
    for(String str:list2) {
        System.out.println(str);
    }
}

public static List<String> getLsit(List<String> resList) {
    List<String> list2 = new ArrayList<String>();
    Map<String, Integer> map = new HashMap<String,Integer>();
    String key,value;
    for(String str: resList) {
        key = str.split(":")[0];
        value= str.split(":")[1];
        try {
            Integer valInt = Integer.parseInt(value);
            if(map.containsKey(key)) {
                Integer tmpInt = map.get(key);
                map.put(key, valInt+tmpInt);
            }else {
                map.put(key, valInt);
            }
        } catch (Exception e) {
            list2.add(str);
        }
    }
    for(String key1: map.keySet()) {
        list2.add(key1+":"+String.valueOf(map.get(key1)));
    }
    return list2;
}

}

打印结果:
姓名:张三
姓名:李四
money:9000
age:57