作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
大家好!我想将类型传递给通用类型,例如 Arraylist,我该怎么做?我做了一个简单的Example,让你知道我想要什么,当然这段代码是错误的。
public static void passObjType(Object obj) {
Class clazz = obj.getClass();
ArrayList<clazz> arr = new ArrayList<clazz>();
}
public static void main(String[] args) {
HashSet<String> hs = new HashSet<String>();
passObjType(hs);
}
我希望,如果我输入一个 HashSet 对象,函数 PassObjType() 将创建一个带有 HashSet 的 Arraylist,如果我输入一个 String 对象,那么它将创建一个带有 String 的 Arraylist。我怎样才能做到这一点?
最佳答案
可以使用Java泛型来获取Object类型的参数,如下:
public static<T> void passObjType(T e) {
ArrayList<T> arr = new ArrayList<T>();
}
public static void main(String[] args) {
HashSet<String> hs = new HashSet<String>();
String hp = new String();
passObjType(hs);
passObjType(hp);
}
关于java - 如何将类型传递给 java 中的泛型类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22096247/
我是一名优秀的程序员,十分优秀!