java类型参数推断_Java泛型类型推断

类型推断表示Java编译器查看方法调用及其对应的声明,以检查和确定类型参数。 推断算法检查参数的类型,如果可用,则返回分配的类型。 推断算法尝试找到一个可以填满所有类型参数的特定类型。

编译器会生成未经检查的转换警告,而不使用内部类型推断。

语法

Box integerBox = new Box<>();

在上面语法中,

Box − Box是一个泛型类。

<> − 尖括号运算符表示类型推断。

描述

使用尖括号运算符编译器可确定参数的类型。该操作符可从Java SE 7版本开始支持使用。

示例

使用您喜欢的编辑器创建以下java程序,并保存到文件:TypeInference.java 中,代码如下所示 –

package com.yiibai; public class TypeInference { public static void main(String[] args) { // type inference Box2 integerBox = new Box2<>(); // unchecked conversion warning Box stringBox = new Box(); integerBox.add(new Integer(198)); stringBox.add(new String("Hello World")); System.out.printf("Integer Value :%dn", integerBox.get()); System.out.printf("String Value :%sn", stringBox.get()); } } class Box2 { private T t; public void add(T t) { this.t = t; } public T get() { return t; } }

执行上面代码,得到以下结果 –

Integer Value :198 String Value :Hello World

¥ 我要打赏   纠错/补充 收藏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值