返回流的方法是否存在命名约定? 我唯一发现的是answer on S.O(最后一段),但我不明白它是基于什么。返回流的命名java方法
回答
因为我写了那段话,我觉得有必要回答。 :-)
假设您有一个类表示单一类型事物的聚集,并且您想将它们的Stream
返回给调用者。
如果对于你要返回的东西完全毫不含糊,那么你也可以调用方法stream()
。 JDK中有很多方法,名为stream()
,它们返回一个明显类型的流。
有时你要返回的是同一事物或不同事物的不同表示,或其他。在这种情况下,似乎有一个惯例来选择一个复数名词来表示流中返回的事物的类型。
要查看这些内容,请查看Javadoc并点击顶部导航栏中的使用链接。这将带您进入交叉参考页面。寻找那些有你感兴趣的。
例如类型的返回值的所有方法,请参阅使用页为Stream
,IntStream
,LongStream
和DoubleStream
。有很多名为stream()
的方法返回流。但也有:
java.io.BufferedReader.lines()
java.lang.CharSequence.chars()
java.lang.CharSequence.codePoints()
java.nio.CharBuffer.chars()
java.nio.file.File.lines()
java.util.Random.ints()
java.util.Random.longs()
java.util.Random.doubles()
java.util.SplittableRandom.ints()
java.util.SplittableRandom.longs()
java.util.SplittableRandom.doubles()
java.util.concurrent.ThreadLocalRandom.ints()
java.util.concurrent.ThreadLocalRandom.longs()
java.util.concurrent.ThreadLocalRandom.doubles()
当然,也有很多的方法不符合这一点。 NIO文件实用程序类具有Files.find()
,Files.list()
和Files.walk()
。分割字符串的结果流由java.util.regex.Pattern.splitAsStream
返回。我不认为有人喜欢AsStream
后缀,但是再次,没有人能想到更好的。另一方面,提议的JDK 9增强功能可以获得正则表达式匹配结果流,它将被命名为Matcher.results()
。
一如既往的启发。谢谢。 – Vitaliy 2015-03-02 18:40:15
- 1. Java:方法返回
- 2. 命名Java库的方法?
- 3. 方法getModule返回已命名模块中的类的未命名模块
- 4. Java方法返回null
- 5. Java:方法不返回。 (XComponent.dispose
- 6. 来自http方法的返回流
- 7. 为负值返回0的方法的命名
- 8. 无法返回方法java内的值
- 9. 命名空间流星方法打包
- 10. Kotlin-布尔返回方法的命名约定
- 11. 返回列表方法中的复数/单数命名
- 12. 重命名返回的JSON
- 13. 返回两组交集的不同签名的方法(Java)
- 14. 无法返回对象方法名称
- 15. Java子类的方法返回零值
- 16. java中的新方法并返回
- 17. 的Java:方法返回String或诠释
- 18. 阻止返回null的方法java
- 19. Java:不返回主的方法
- 20. 返回的Java方法接口类型
- 21. 返回接口类型的Java方法
- 22. java使用方法中的返回值
- 23. Java返回数组列表的返回方法?
- 24. Java方法命名约定和重载
- 25. 回购方法命名约定
- 26. 在Java方法签名,返回类型extends关键字
- 27. 有没有解决方法来从forEach方法“返回”流?
- 28. 方法,返回匿名类型C#
- 29. 匿名方法返回类型铸造
- 30. java方法返回多个值
它基于现有代码中已经很明显的内容,即JRE本身和教程中的示例代码。它可能还没有任何风格指南,但如果斯图尔特马克斯认识到并推荐这种模式,它很快就会成为一种常见模式。顺便说一句,我独立地得出了相同的结论,所以它真的是一种可识别的模式。 – Holger 2015-03-02 08:46:18