zoukankan      html  css  js  c++  java
  • 容器

    版权声明:本文为博主原创文章。转载请注明出处 http://blog.csdn.net/buyingfei8888 https://blog.csdn.net/buyingfei888/article/details/31791313

    如今作用是实现算法不必写一堆数据结构,直接调用,确实简单非常多。

    经常使用容器层次结构:


    一个小样例实现上面所说容器:

    import java.util.*;
    import java.io.*;
    public class test {
    	public static void main(String[] args){
    	/*	//IO 输入
    		try{
    			BufferedReader buf;
    			buf=new BufferedReader(new InputStreamReader(System.in));
    			String str=buf.readLine();
    			System.out.println("IO输入 输出结果:");
    			System.out.print(str);
    		}catch(Exception ex){
    			System.out.println(ex.toString());
    		}*/
    		
    		//Iterator 遍历练习 
    		iterator it=new iterator();
    		it.play();
    		it.show();
    		
    		
    		//Collection 容器
    		Collect col=new Collect();
    		col.play();
    		
    		//LinkedList 容器
    		linkedlist link=new linkedlist();
    		link.display();
    		
    		//arraylist 容器
    		arraylist array=new arraylist();
    		array.display();
    		
    		//treeset 容器
    		treeset trset=new treeset();
    		trset.display();
    		
    		//hashs 容器
    		hashset hashs=new hashset();
    		hashs.display();
    		
    		//sortedset 容器
    		sortedset sortset=new sortedset();
    		sortset.display();
    		
    		//map 容器
    		map m=new map();
    		m.display();
    		
    		//treeset 实现自己主动排序  要实现Comparable接口
    		Set<Student> treeset=new TreeSet<Student>();
    		treeset.add(new Student("小王",0));
    		treeset.add(new Student("小li",1));
    		treeset.add(new Student("小mei",5));
    		treeset.add(new Student("小bu",3));
    		treeset.add(new Student("xiaodui",9));
    		treeset.add(new Student("小ge",6));
    		System.out.println("
    输出结果:"+treeset);
    	}
    	
    
    }
    //Iterator 遍历练习 
    class iterator{
    	//Iterator  仅仅能从后到前
    	public void play(){
    		System.out.println("
    "+ "Iterator 输出结果:");
    		List list=new LinkedList();
    		list.add("zhangsan");
    		list.add("lisi");
    		list.add("wangwu");
    		Iterator it=list.iterator();
    		while(it.hasNext()){
    			String str=(String)it.next();
    			if("lisi".equals(str)){
    				it.remove();
    			}
    			//System.out.println("
     "+ list);
    			System.out.print("  "+str);
    			
    			
    		}
    	}
    	//ListIterator  两个方向遍历向上和向下
    	public void show(){
    		System.out.println("
    "+"ListIterator 输出结果:");
    		List<String> list=new LinkedList<String>();
    		list.add("zhangsan");
    		list.add("lisi");
    		list.add("wangwu");
    		ListIterator it=list.listIterator();
    		//Iterator it=list.iterator();
    		while(it.hasNext()){
    			String str=(String)it.next();
    			if("lisi".equals(str)){
    				it.remove();
    			}
    			//String str=(String)it.next();
    		}
    		if(it.hasPrevious()==false){
    			System.out.println("前面没有内容");
    		}
    		while(it.hasPrevious()){
    			String str1=(String)it.previous();
    			System.out.print(str1 + "  ");
    			
    		}
    	}
    }
    	//Collection 容器
    	class Collect{
    		public void play(){
    			Collection<Integer> c1=new LinkedList<Integer>();
    			Collection<Integer> c2=new LinkedList<Integer>();
    			System.out.println("
    "+"Collection 输出结果:");
    			for(int i=0;i<5;i++){
    				c1.add(i);
    			}
    			System.out.print(c1);
    		}
    		
    	}
    	//LinkedList 容器
    	class linkedlist{
    		public void display(){
    			System.out.println("
    
    "+"LinkedList 输出结果:");
    			LinkedList list;
    			list =new LinkedList();
    			list.add("张三");
    			list.add("李四");
    			System.out.println("原来大小:"+list.size());
    			System.out.println("是否包括元素张三"+list.contains("张三"));
    			System.out.println("输出各个元素:");
    			for(int i=0;i<list.size();i++){
    				
    				System.out.print(list.get(i)+" ");
    				//System.out.println(list.remove(i));
    				//list.remove(i);
    			}
    			System.out.println("删除第一个元素"+list.remove(1));
    			System.out.print("输出如今元素个数"+list.size());
    		}
    		
    	}
    	//ArrayList 容器
    	class arraylist{
    		void display(){
    			System.out.println("
    
    "+"ArrayList 输出结果:");
    			ArrayList list;
    			list=new ArrayList();
    			list.add("你好");
    			list.add("张三");
    			list.add(new Integer(10));
    			System.out.println("原来大小:" + list.size());
    			list.add("你好");
    			System.out.println("如今大小:" + list.size());
    			System.out.println("内容:" + list);
    		}
    	}
    	
    	//TreeSet 容器
    	class treeset{
    		public void display(){
    			System.out.println("
    
    "+"TreeSet 输出结果:");
    			Set s=new TreeSet();
    			s.add(2);
    			s.add(1);
    			s.add(1);
    			
    			System.out.println("输出各个元素:"+s);
    			System.out.print("set大小:"+s.size());	
    		}
    	}
    	
    	//hashset 容器
    	class hashset{
    		public void display(){
    			Set s=new HashSet();
    			s.add(1);
    			s.add(1);
    			s.add(2);
    			System.out.println("
    
    "+"HashSet 输出结果:");
    			System.out.println("输出结果是:"+s);
    			System.out.println("hashset大小是:"+s.size());
    		}
    	}
    	
    	//SortedSet 容器
    	class sortedset{
    		public void display(){
    			SortedSet<Integer> sortset=new TreeSet<Integer>();
    			System.out.println("
    
    "+"SortedSet 输出结果:");
    			for(int i=1;i<7;i++){
    				sortset.add(i);
    			}
    			System.out.println("输出第一个元素是:"+sortset.first());
    			System.out.println("输出最后一个元素是:"+sortset.last());
    		}
    	}
    	
    	class map{
    		public void display(){
    			System.out.println("
    
    "+"HashMap 输出结果:");
    			Map m = new HashMap();
    			m.put(1, new String("11"));
    			m.put("two", new Integer(2));
    			m.put(1, new String("33"));
    			m.put(3, new String("44"));
    			System.out.println("元素个数是:"+m.size());
    			System.out.println("获得键值是1的元素:"+m.get(1));
    			System.out.println("是否包括键值1:"+m.containsKey(1));
    			System.out.println("是否包括元素11:"+m.containsValue("11"));
    			m.remove(1);
    			System.out.println("删除一个元素后个数:"+m.size());
    			if(m.containsKey("two")){
    				int i = ((Integer)(m.get("two"))).intValue();
    				System.out.println("将字符窜转化为int:"+i);
    			}
    		
    		}
    	}
    	class Student implements Comparable<Student> {
    		private String name;
    		private int num;
    		public Student(String name,int num){
    			this.name=name;
    			this.num=num;
    		}
    		public String toString(){
    			return "name :"+ this.name +";number :"+ this.num+"
    ";
    		}
    		public int compareTo(Student stu){
    			if(this.num>stu.num){
    				return 1;
    			}else if(this.num<stu.num){
    				return -1;
    			}else{
    				return 0;
    			}
    		}
    
    	}




查看全文
  • 相关阅读:
    C#虚方法
    C#构造方法--实例化类时初始化的方法
    C#抽象类与抽象方法--就是类里面定义了函数而函数里面什么都没有做的类
    C#函数重载
    C#继承
    C#中public与private与static
    FPGA按一下按键,对应端口输出单个脉冲
    MyBatis学习 之 五、MyBatis配置文件
    MyBatis学习 之 四、动态SQL语句
    MyBatis学习 之 三、SQL语句映射文件(2)增删改查、参数、缓存
  • 原文地址:https://www.cnblogs.com/ldxsuanfa/p/10890680.html
  • Copyright © 2011-2022 走看看