zoukankan      html  css  js  c++  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;
    	    	}}
    

      

  • 相关阅读:
    第01组 Beta冲刺(4-5)
    第01组 Beta冲刺(3-5)
    第01组 Beta冲刺(2-5)
    第01组 Beta冲刺(1-5)
    等价类划分-一个程序输入三个整数,判断三角形是不等边,还是等腰还是等边
    Jmeter入门(8)- Jmeter关联
    Jmeter发送数据库请求(JDBC Request)报错
    Jmeter入门(7)- 连接数据库
    Jmeter入门(6)- 参数化
    Jmeter入门(5)- jmeter取样器的HTTP请求
  • 原文地址:https://www.cnblogs.com/gaofangquan/p/7257807.html
Copyright © 2011-2022 走看看