使用泛型,原始类型不能作为类型参数传递。在下面给出的示例中,如果将int原语类型传递给box类,则编译器将报错。为了解决这种情况,无涯教程需要传递Integer 对象而不是int基本类型。
package com.learnfk; public class GenericsTester { public static void main(String[] args) { Box<Integer> integerBox = new Box<Integer>(); //编译器错误 //ReferenceType //- Syntax error, insert "Dimensions" to complete ReferenceType //Box<int> stringBox=new Box<int>(); integerBox.add(new Integer(10)); printBox(integerBox); } private static void printBox(Box box) { System.out.println("Value: " + box.get()); } } class Box<T> { private T t; public void add(T t) { this.t = t; } public T get() { return t; } }
这将产生以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/java-generics/java-generics-no-primitive.html
来源:LearnFk无涯教程网
Value: 10
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)