怎样循环创建多个普通列表list集合

怎样循环创建多个普通列表list集合

public void addPlayList(PlayList playList){//添加播放列表
    Scanner sc = new Scanner(System.in);
    System.out.println("输入要添加播放列表的名称:");
    String name = sc.next();
   if(playListMap.containsKey(name)==true){
    	System.out.println("该播放列表已存在");
    }else{
    	for(int i=0;i<10;i++){
    	List<Song> newList=new ArrayList<Song>();//添加新的普通列表
    	playList=new PlayList(name);
    	newList.add(null);
    	playListMap.put(name,playList);
    	}
    	 System.out.println("播放列表添加成功!"); 
    }          
    	}

怎样才能新增普通列表时新建一个跟之前不同的列表集合?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
提问者 哈哈哈毛 2018-08-16 19:33:32
提问者 哈哈哈毛 2018-08-16 19:19:31
public void addPlayList(PlayList playList){//添加播放列表
    Scanner sc = new Scanner(System.in);
    System.out.println("输入要添加播放列表的名称:");
    String name = sc.next();
   if(playListMap.containsKey(name)==true){
    	System.out.println("该播放列表已存在");
    }else{
    	List<Song> newList=new ArrayList<Song>();//添加新的普通列表
    	playList=new PlayList(name,newList);
    	newList.add(null);
    }
    	playListMap.put(name,playList);
    	
    	 System.out.println("播放列表添加成功!"); 
   }


好帮手慕雪 2018-08-16 10:39:30

不同的列表集合?现在就是不同的集合,playList不就是你每次new出来的嘛。但你循环中的name是一样,没有更改,导致每次playListMap.put时会把原来的覆盖掉。祝:学习愉快

  • 提问者 哈哈哈毛 #1
    那name在里面该如何改,我在里面的name是键盘输入啊?
    2018-08-16 11:16:45
  • 提问者 哈哈哈毛 #2
    List<Song> newList=new ArrayList<Song>();//添加新的普通列表,这句话是在里面是创建新的集合的,但对象名是固定的啊,对象名固定不就会覆盖原来的数据吗
    2018-08-16 11:23:47
  • 提问者 哈哈哈毛 #3
    List<Song> newList=new ArrayList<Song>();//添加新的普通列表,这句话是在里面是创建新的集合的,但对象名是固定的啊,对象名固定不就会覆盖原来的数据吗
    2018-08-16 11:23:54
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师