Java嵌套循环中容易出现的问题

  • 现象

    总是加载数据的总集合大小为0,后来经过断点调试才发现原因: i 和 j 不能混淆

    for (int i = 0; i < songsTypes.size(); i++) {
    SongsType songsType = songsTypes.get(i);
    int mCurrentId = songsType.getId();
    MusicSortItem musicSortItem = new MusicSortItem();
    musicSortItem.setmTitle(songsType.getType_name());
    musicSortItem.setType(true);
    allItems.add(musicSortItem);
    for (int j = 0; j < songSheetBeanList.size();j++) {
        SongSheetBean ssb = songSheetBeanList.get(j);
        if (mCurrentId == ssb.getType_id()) {
            MusicSortItem musicSortItemSub = new MusicSortItem();
            musicSortItemSub.setmTitle(ssb.getSSheet());
            musicSortItemSub.setType(false);
            musicSortItemSub.setShid(ssb.getShid());
            allItems.add(musicSortItemSub);
        }
    }
    }
    
  • 需要注意

    嵌套循环外层和层的循环,不能混淆颠倒位置


版权声明:本文为qq_27274997原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。