装箱和拆箱

装箱和拆箱

Java提供了原始类型对应的引用类型,在1.5之后的版本还提供了自动装箱和自动拆箱,结合最新版本的泛型,几乎可以忽略这块。

​



 1 import java.util.*;
 2 
 3 public final class Program {
 4     public static void main(String[] args) {
 5         ArrayList list = new ArrayList();
 6         
 7         list.add(1);
 8         int item1 = (Integer) list.get(0);
 9         
10         System.out.println(item1);
11     }
12 }



​

注意:自动装箱和自动拆箱是Java提供的语法糖。

泛型

Java的泛型是编译器提供的语法糖,官方称之为:类型参数搽除,先看一下语法,然后总结一点规律:

泛型方法

测试代码

​



 1     static <T> void puts(T msg) {
 2         println(msg);
 3     }
 4 
 5     static void println(Object msg) {
 6         System.out.println("Object:" + msg);
 7     }
 8 
 9     static void println(String msg) {
10         System.out.println("String:" + msg);
11     }



​

调用泛型方法

1         System.out.println("generic method test");
2         puts("hello");
3         Program.<String> puts("hello");

输出的结果是

1 generic method test
2 Object:hello
3 Object:hello

泛型类

测试代码

​



1 class TestGenericClass<T> {
2     T value;
3 
4     void setValue(T value) {
5         this.value = value;
6     }
7 }
​
 

调用代码

1         System.out.println("generic class test");
2         System.out.println(t.value);

输出结果

1 generic class test
2 1

尚学堂给同学们带来全新的Java300集课程啦!java零基础小白自学Java必备优质教程_手把手图解学习Java,让学习成为一种享受_哔哩哔哩_bilibiliicon-default.png?t=M4ADhttps://www.bilibili.com/video/BV1qL411u7eE?spm_id_from=333.337.search-card.all.click

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值