开发者社区> 问答> 正文

我有两个集合 数组 我要得到 1 - A 3 -B 两条数据循环怎么写 急求:报错

[1,3],[A,B] 我有两个集合 数组 我要得到 1 - A 3 -B 两条数据循环怎么写 急求:报错

 [1,3],[A,B] 我有两个集合 数组 我要得到   1 - A 3 -B 两条数据循环怎么写 

我的代码:
private int saveLearnersClassRelation(Long learnersId, @RequestParam("classIds")Long[] classIds, @RequestParam("classNames")String[] classNames){ List<LearnersClass> list = new ArrayList<LearnersClass>(); for (Long classId : classIds) { for (int i = 0; i < classNames.length; i++) { String claName = classNames[i]; LearnersClass learnersClass = new LearnersClass(); learnersClass.setLearningId(learnersId); learnersClass.setClassId(classId); learnersClass.setClassName(claName); list.add(learnersClass); } } return learnersService.saveLearnersClassRelation(list); }

这样循环我得到了交叉四条数据

展开
收起
kun坤 2020-06-09 10:42:24 461 0
1 条回答
写回答
取消 提交回答
  • v 我如果没理解错误的话,你要数组上同一index上的数据对应,如果是这样的话很简单,一个循环就可以搞定:

    int length = min(classNames.length,classIds.length); for (int i = 0; i < length; i++) {

    String claName = classNames[i];
    String classId=  classIds[i]; LearnersClass learnersClass = new LearnersClass();

    learnersClass.setLearningId(learnersId);

    learnersClass.setClassId(classId);

    learnersClass.setClassName(claName);

    list.add(learnersClass);

    }

    }

    return learnersService.saveLearnersClassRelation(list);

    }

    2020-06-09 10:42:29
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载