JavaSE进阶
11.7.4 Map集合框架集
11.8 练习
1、练习:判断输出结果为何?
public class TestFor {
public static void main(String[] args){
String[] str = new String[5];
for(String myStr : str){
myStr = "atguigu";
System.out.println(myStr);
}
for(int i = 0;i < str.length;i++){
System.out.println(str[i]);
}
}
}
2、请从键盘随机输入10个整数保存到List中,并按倒序、从大到小的顺序显示出来
3、编写程序,在main方法中接收5个参数整数字符串;
创建TreeSet类型的集合,将5个字符串以整数形式添加到集合中;
增强型for循环遍历该集合,打印所有元素,并将所有元素之和打印出来。
第12章 泛型
12.1 泛型的概念
泛型:标签
举例:超市购物架上很多瓶子,每个瓶子装的是什么,有标签
中药店,每个抽屉外面贴着标签
集合容器类在设计阶段/声明阶段不能确定这个容器到底实际存的是什么类型的对象,所以在JDK1.5之前只能把元素类型设计为Object,JDK1.5之后使用泛型来解决。因为这个时候除了元素的类型不确定,其他的部分是确定的,例如关于这个元素如何保存,如何管理等是确定的,因此此时把元素的类型设计成一个参数,这个类型参数叫做泛型。Collection<E>,List<E>,ArrayList<E> 这个<E>就是类型参数,即泛型
从JDK1.5以后,Java引入了“参数化类型(Parameterized type)”的概念,允许我们在创建集合时再指定集合元素的类型,正如:List<String>,这表明该List只能保存字符串类型的对象。
所谓泛型,就是允许在定义类、接口时指定类型参数(我们称为类型形参),这个类型形参将在使用时(例如,继承或实现这个接口,用这个类型声明变量、创建对象时)确定(即传入实际的类型参数,也称为类型实参)。JDK1.5改写了集合框架中的全部接口和类,为这些接口、类增加了泛型支持,从而可以在声明集合变量、创建集合对象时传入类型实参。