Java---泛型

1.泛型

泛型可以标识集合的元素

泛型的好处

1.可以把运行的错误 转到编译时报错

2.避免强转的麻烦

3.规范集合的数据 数据更加安全

2.正向  反向 遍历数组

private static void fun1() {
		//泛型前后的类型要一致
		//1.7JDK  菱形泛型 :后面填的可以省去
		//
		ArrayList<String> list = new ArrayList<String>();
		list.add("a");
		list.add("b");
		list.add("c");
		list.add("d");
		//遍历集合
		ListIterator<String> listIterator = list.listIterator();
		//正向遍历
		while(listIterator.hasNext()) {
			//获取集合中的元素
			String next = listIterator.next();
			System.out.println(next);
		}
		//逆向遍历
		//判断前一个是否有元素
		while(listIterator.hasPrevious()) {
			//获取前一个元素
			String string = listIterator.previous();
			System.out.println(string);
		}
	}

结果:abcddcba;

3.多参数的参数

int ... num 可以看成一个数组

当做数组来遍历

使用方法:1.可以传一个数组

            2.可以传多个数 用逗号隔开

public static void main(string[] ags){
        int[] a= {1,2,3,5};
        for (int i = 0; i < a.length; i++) {
			System.out.println(a[i]);
		}

}

结果:    1

           2

           3

           5

4.泛型中的int[]和Integer[]区别

public static void main(String[] args) {

int[] a= {1,2,3,5};
		//根据泛型 这个集合 每一个元素 都是一个数组 数组打印出来是地址
		List<int[]> asList = Arrays.asList(a);
		System.out.println(asList);
		//直接传入int[] 数组 系统不会帮你进行自动装箱
		Integer[] newArray= {1,2,3,5};
		//直接把数组中的元素 放入集合中
		List<Integer> asList2 = Arrays.asList(newArray);
		System.out.println(asList2);
}

结果:


5.

?extends E

Person是父类 Student是子类 这里就不写了
//创建一个Person集合 保存2个Person
		ArrayList<Person> list = new ArrayList<>();
		list.add(new Person("wang1",11));
		list.add(new Person("wang2",11));
		//创建一个Student集合 保存2个student
		ArrayList<Student> list2 = new ArrayList<>();
		list2.add(new Student("peng1",12));
		list2.add(new Student("peng2",12));
		//addAll(Collection<? extends E> c) 
		list.addAll(list2);
		//list2.addAll(list);这里就错了
		System.out.println(list);

结果:

[Person [name=wang1, age=11], Person [name=wang2, age=11], Person [name=peng1, age=12], Person [name=peng2, age=12]]


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值