<T> Stream<T> - 不理解这个返回类型

我是 Streams 的新手,在查看一些方法时,我看到了这个返回类型:

<T> Stream<T>

我不明白“ <T> Stream<T>”和“ Stream<T>”之间的区别。多余的有<T>什么作用?谢谢你的帮助。我试着谷歌一下。


蝴蝶不菲
浏览 344回答 2
2回答

斯蒂芬大帝

当我们在 Java 中处理泛型时,我们应该知道我们可以像public interface Stream<T>这样定义泛型类或接口,因此任何即时方法都将使用 T 类型,Stream<T> filter(但是如果您在同一个类/接口中定义静态方法,则应定义泛型返回类型public static<T> Stream<T> empty()或如果你想定义一个具有新泛型返回类型的实例方法,<R> Stream<R> map(因为你可以在非泛型类中有一个泛型方法。我希望它有帮助。干杯

青春有我

它不仅特定于Stream.静态泛型方法需要它们自己的泛型声明 (&nbsp;public static <T>) 与类的泛型声明分开。Stream 的concat方法是static,例如,public&nbsp;static&nbsp;<T>&nbsp;Stream<T>&nbsp;concat(Stream<?&nbsp;extends&nbsp;T>&nbsp;a,&nbsp;Stream<?&nbsp;extends&nbsp;T>&nbsp;b)而它的filter方法不是。Stream<T>&nbsp;filter(Predicate<?&nbsp;super&nbsp;T>&nbsp;predicate);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java