首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

将类型传递给泛型方法(嵌套泛型)

在Java中,泛型方法可以接受一个或多个类型参数,以便在方法中使用这些类型参数来创建泛型集合或其他泛型对象。要将类型传递给泛型方法,可以在调用方法时指定类型参数。

以下是一个简单的示例,演示了如何将类型传递给泛型方法:

代码语言:java
复制
public class GenericMethodExample {
    public static void main(String[] args) {
        // 调用泛型方法,指定类型参数为String
        GenericMethod<String> genericMethod = new GenericMethod<>();
        genericMethod.printList(Arrays.asList("Hello", "World"));
    }
}

class GenericMethod<T> {
    public void printList(List<T> list) {
        for (T item : list) {
            System.out.println(item);
        }
    }
}

在这个例子中,我们定义了一个名为GenericMethod的泛型类,它有一个名为printList的泛型方法。在调用printList方法时,我们指定了类型参数为String,并传递了一个包含字符串的列表。

在泛型方法中,可以使用类型参数T来创建泛型对象,例如在这个例子中的List<T>。这样,我们就可以在方法中使用泛型类型,而不需要知道具体的类型。

如果需要在泛型方法中使用多个类型参数,可以在尖括号<>中列出所有类型参数,例如:

代码语言:java
复制
public class GenericMethodExample {
    public static void main(String[] args) {
        // 调用泛型方法,指定类型参数为String和Integer
        GenericMethod<String, Integer> genericMethod = new GenericMethod<>();
        genericMethod.printMap(new HashMap<String, Integer>() {{
            put("Hello", 1);
            put("World", 2);
        }});
    }
}

class GenericMethod<K, V> {
    public void printMap(Map<K, V> map) {
        for (Map.Entry<K, V> entry : map.entrySet()) {
            System.out.println(entry.getKey() + " -> " + entry.getValue());
        }
    }
}

在这个例子中,我们定义了一个名为GenericMethod的泛型类,它有一个名为printMap的泛型方法,该方法接受一个泛型类型参数K和一个泛型类型参数V。在调用printMap方法时,我们指定了类型参数为StringInteger,并传递了一个包含字符串和整数的映射。

在泛型方法中,可以使用类型参数KV来创建泛型对象,例如在这个例子中的Map<K, V>。这样,我们就可以在方法中使用泛型类型,而不需要知道具体的类型。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券