2018_3_29 集合框架 泛型 和 包装类

泛型

1.创建集合类对象时,在集合类后面添加<Type(类型)>,指定集合中元素的类型,这种集合称为泛型集合;

语法: List<Type>.....              Map<keyType,ValueType>..........

            Set<Type>.........            Iterator<Type>.............

2.使用泛型的好处:在从集合中取出元素时,无需进行强制转换,避免了ClassCastException异常;

3.代码实例:

//Map类用Iterator 迭代器 遍历元素
		Dog dog=new Dog("皮皮","拉布拉多");
		Dog dog1=new Dog("花花","哈巴狗");
		Dog dog2=new Dog("喵喵","何苗");
		
		Map<String ,Dog> dogs=new HashMap<String,Dog>();
		dogs.put("皮皮", dog);
		dogs.put("花花", dog1);
		dogs.put("喵喵", dog2);
		//用Set类保存键集
		Set<String> set=dogs.keySet();
		Iterator<String> it=set.iterator();
		//通过遍历键值,访问Value值
		while(it.hasNext()){
			System.out.println(dogs.get(it.next()).getStrain());
		}
		
		//List类用Iterator 迭代器遍历元素:
		List<Dog> listDogs=new ArrayList();
		listDogs.add(dog);
		listDogs.add(dog1);
		listDogs.add(dog2);
		
		Iterator<Dog> ite=listDogs.iterator();
		while(ite.hasNext())
		{
			System.out.println(ite.next().getStrain());
		}

使用泛型后,取出的对象即为创建集合对象时指定的类型,通过.即可以.出它所属类的所有方法属性,体现了

使用泛型的好处

包装类

ArrayList list=new ArrayList();
		list.add(19);
		list.add("禾苗");
		list.add('润');
		list.add(18.9);

1.以上代码,在向集合添加元素时,add()方法参数却传了基本类型,这会报错吗?

显然这样不会报错,因为他们使用了包装类

2.包装类的含义:指将基本类型包装成类类型;

3.java为每种基本数据类型都提供了包装类,因此java中共有8种包装类:Byte

Short,Integer,Long,Float,Double,Boolean,Character;包装类位于java.lang包当中;

4.包装类常用的构造方法:

public Type(type value)

Type代表包装类,type代表基本类型,创建包装类的代码如下:

                Integer intValue=new Integer(21);
		Long longValue=new Long(21L);
		Character charValue=new Charcter('l');
		Boolean blooeanValue=new Boolean(true);
		Float floatValue=new Float(21F);

5.常用的转换:

                //1.包装类到基本类型的转换
		//语法:public type typeValue();
		
		Integer integerId=new Integer(25);
		int a=integerId.intValue();
		Boolean bl=new Boolean(true);
		boolean b=bl.booleanValue();
		
		
		//2.字符串到基本类型的转换
		//语法:public static type parseType(String type)
		
		int num=Integer.parseInt("1");
		boolean bl1=bl.parseBoolean("true");




猜你喜欢

转载自blog.csdn.net/qq1043002305/article/details/79739038