Java 使用不带集合的泛型

Java 使用不带集合的泛型,java,Java,假设我有以下几点: List<Apple> myList = new ArrayList<Apple>(); 可能吗?您正在寻找的 类混合器{ T; 公共作废合并(T参数){ //东西 } } 课堂测试{ 公开作废法(){ blendedApple=新搅拌机(); blendapple.blendIt(新苹果()); BlendedBanana=新搅拌机(); blendBannana.blendIt(新Bannana()); } } 是的,它是: public cla

假设我有以下几点:

List<Apple> myList = new ArrayList<Apple>();
可能吗?

您正在寻找的

类混合器{
T;
公共作废合并(T参数){
//东西
}
}
课堂测试{
公开作废法(){
blendedApple=新搅拌机();
blendapple.blendIt(新苹果());
BlendedBanana=新搅拌机();
blendBannana.blendIt(新Bannana());
}
}
是的,它是:

public class Blender<T> {
   public void blendIt(T arg) { ... }
}
公共类混合器{
公共void blendIt(T arg){…}
}

在Java中,泛型不仅仅用于
集合。它是一个通用概念,适用于类、方法等。您可以创建一个泛型类。

您可以使用
instanceof
操作符检查它是否是
Banana
Apple
的实例。是的,我可以,但是当我把草莓放进搅拌机里的时候,它就会变坏,所以灵活的解决方案是非常有用的required@TomatoMato不客气。:)还要记住,在泛型类的声明中不能使用通配符。i、 例如,类混合器是一个编译器错误:)顺便说一句,不要忘记将答案标记为已接受:)
class Blender<T>{
T t;
public void blendIt(T arg){
//stuff
}
}

class Test {
   public void method() {
     Blender<Apple> blendedApple = new Blender<Apple>();
     blendedApple.blendIt(new Apple()); 
     Blender<Bannana> blendedBannana = new Blender<Bannana>();     
     blendedBannana.blendIt(new Bannana());
   }
 }
public class Blender<T> {
   public void blendIt(T arg) { ... }
}