有这样一组list数据{lot=1;pp=2},{lot=2,pp=3},{lot=1;pp=4},{lot=1,pp=1} 怎么样求各lot对应的pp,用java解决要的结果 当然是1 对1,2,4
 2对3;--------------------------------------------------谢谢。

解决方案 »

  1.   

    lot=1;pp=2
    是不是可以考虑把这俩数据封装成对象。
    之后链表中存放这样的对象。或者用Map这个结构也行。比list方便
      

  2.   

    用hashmap<KEY,VALUE>来做,用每一组数据的第二个数做KEY 第一个数做VALUE 求哪些KEY的VALUE相等就可以了
      

  3.   

    首先循环list 把list数值放到map对象里面, 以lot为键,以pp为数值,如果该键的key存在的话,则把得到pp的 数值 追加到键 下面,循环map 就可以得到 你想的结果。map数值 value  进行排序。
      

  4.   


    public static void main(String[] args) {
    List<TestList> list = new ArrayList<TestList>();
    List<Integer> tempPp = findPp(1,list);
    for (Integer u : tempPp) {
    System.out.println(u);
    }
    } public static List<Integer> findPp(Integer lot,List<TestList> list){
    List<Integer> temp = new ArrayList<Integer>();
    for (TestList u : list) {
    if(u.getLot()==lot){
    temp.add(u.getPp());
    }
    }
    return temp;
    }
    Bean
    package Dao;public class TestList {
    private Integer lot;
    private Integer pp; public Integer getLot() {
    return lot;
    }
    public void setLot(Integer lot) {
    this.lot = lot;
    }
    public Integer getPp() {
    return pp;
    }
    public void setPp(Integer pp) {
    this.pp = pp;
    }
    }