yanjianpeng_2018 2022-09-30 11:11 采纳率: 100%
浏览 50
已结题

不用返回值接集合结果修改集合内容不生效

在一个方法a()中有一个集合List list = new ArrayList<>();
给集合list添加元素list.add

private void a(){
   List<Sting> list = new ArrayList<>();
  list.add()...
}

在这个方法中调用另一个方法,并传入list, 并对list筛选

private void filterByDeptTypePosition(List<String> list){
    list = list.stream().filter(f -> { .....}
}

再回到a()方法发现集合元素并没有变化,是什么原因 jdk版本"1.8.0_101"

  • 写回答

3条回答 默认 最新

  • 心寒丶 优质创作者: 编程框架技术领域 2022-09-30 11:23
    关注

    你要接收返回操作后的list

    private void a(){
       List<Sting> list = new ArrayList<>();
      list.add()...
    list = filterByDeptTypePosition();
    }
     
    private List<String> filterByDeptTypePosition(List<String> list){
        list = list.stream().filter(f -> { .....}
    return list ;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 10月8日
  • 已采纳回答 9月30日
  • 创建了问题 9月30日