我们在一个类里写个泛型方法,你一般会写出如下。
public class Test{
public List<T> toList(T... args){
List<T> list= new ArrayList<T>();
for (T t:args){
list.add(t);
}
return list;
}
}
这时就编译器就会提示出错。
T cannot be resolved to a type
这里面就是因为方法或类没有申请是泛型的,编译器认不到泛型。
所以,有两种方法证编译器不会报错,
1.把类申明为泛型
public class Test<T>{
public List<T> toList(T... args){
List<T> list= new ArrayList<T>();
for (T t:args){
list.add(t);
}
return list;
}
}
2.把方法申明为泛型
public class Test{
public <T> List<T> toList(T... args){
List<T> list= new ArrayList<T>();
for (T t:args){
list.add(t);
}
return list;
}
}
第一种方法如果这个方法是静态的,也还是会报错的。也还要把在static 方法申明的泛型
public static <T> List<T> toList(T... args){
List<T> list= new ArrayList<T>();
for (T t:args){
list.add(t);
}
return list;
}
分享到:
相关推荐
java 泛型方法使用示例 java 泛型方法使用示例 java 泛型方法使用示例
泛型类、泛型方法、泛型接口、泛型委托 泛型类、泛型方法、泛型接口、泛型委托
【Flutter】Dart 泛型 ( 泛型类 | 泛型方法 | 特定类型约束的泛型 ) https://hanshuliang.blog.csdn.net/article/details/114059611 博客源码快照
C#泛型集合使用实例C#泛型集合使用实例C#泛型集合使用实例
泛型方法的使用
泛型方法是使用类型参数声明的方法,如下所示: static void Swap(ref T lhs, ref T rhs) { T temp; temp = lhs; lhs = rhs; rhs = temp; } 下面的代码示例演示一种使用 int 作为类型参数的方法调用方式: ...
c#泛型类、泛型方法、泛型接口、泛型委托
这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。 Java语言引入泛型的好处是安全简单。 在Java SE 1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”...
【Java基础】泛型方法 - 右撇子 - 博客频道 - CSDN.NET
泛型方法:演示如何在普通类中定义泛型方法,以及如何调用和使用泛型方法。 类型通配符:展示如何使用类型通配符来增加灵活性,以及如何进行类型边界约束。 泛型接口:演示如何定义和实现泛型接口,并通过示例代码...
Java中的泛型方法演示代码
泛型 反射 概念 方法 使用
自己写的一些关于java泛型的一些例子,感觉里面应该写的挺全了。希望有助于大家的学习.不足之处多多指教.
超全面javaweb教程第7天-_07_泛型方法和泛型类的使用
学习反射.调用反射内的方法 C# 加载Dll 使用反射 调用对应的方法公开方法,私有方法,泛型方法
Java泛型,泛型接口、泛型方法实例
泛型将类型参数的概念引入 .NET Framework,类型参数使得设计如下类和方法成为可能:这些类和方法将一个或多个类型的指定推迟到客户端代码声明并实例化该类或方法的时候。例如,通过使用泛型类型参数 T,您可以编写...