首页 > 代码库 > java集合练习
java集合练习
分组练习:
List<List<Student>> list=new ArrayList<List<Student>>();这个是二维集合,分组的时候可以在第一层循环中创建一个list,用来接收循环的时候返回的对象,然后把list添加到二维集合中
package com.hanqi;import java.util.ArrayList;import java.util.List;import java.util.Random;public class fenzu { public static void main(String[] args){ List<Student> l=DataSourceModel.getStuList(); List<List<Student>> list=new ArrayList<List<Student>>();/*int[][] i=new int[5][];int[] a=new int[]{1,2,3};i[3]=a;System.out.println(i[3][1]);*/ Random r=new Random(); int fenzur=4; int zsize=13; for(int i=0;i<(13/fenzur);i++){ List<Student> li= new ArrayList<Student> (); for(int j=0;j<fenzur;j++){ int a=r.nextInt(4); li.add(l.get(a)); l.remove(a); if(l.size()<2){ li.add(l.get(0)); } }list.add(li); System.out.println(li); System.out.println(li.size()); }}}
删除重复的对象就也可以用双层for循环来查找出重复的,也可以将list集合转化成set集合,因为set不可以重复,所以就将重复的自动删除了
public static void chachong(List l){ for(int a=0;a<l.size();a++){ int size=0; for(int b=0;b<l.size();b++){ if(l.get(a).equals(l.get(b))){ size++; if(size>1){ l.remove(b); } } } } } public static void kaitou( List l){//j开头的名字 for(int i=0;i<l.size();i++){ if(‘J‘==(l.get(i).toString().charAt(0))){//判断两个字符相等可以用== System.out.println(l.get(i)); } } } public static void bnianling(List l){//比年龄 for(int a=0;a<l.size();a++){ if(((Student) l.get(a)).getAge()>25){//括号的student是强转成student型?? System.out.println(l.get(a)); } } }}
因为map没有直接的iterator接口,所以可以动过keyset方法获得键值,将键值赋给set集合(因为,list可以重复,而set不可以重复)或者collection集合,就可以实现iterator接口了
Collection<Integer> c=m.keySet(); Iterator<Integer> i=c.iterator(); while (i.hasNext()){ int a=i.next(); if(a>=1004&&a<=1009){ System.out.println(a); if(a==1005){ i.remove(); continue; }}
java集合练习
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。