ChatGPT 實驗輔助幫助寫 code 真的挺方便的
最近開始玩 ChatGPT
找尋如何好好善用的過程、挺有趣的。
今天來試著用它來幫助回答 stackoverflow
一開始遇到這題:
AsynchronousServerSocketChannel vs ServerSocketChannel performance
題目其實並不是很精準, 不曉得怎麼回答.
但這或許是 ChatGPT 的強項^^
直接把答案貼給他.
問題: Creating Supplier stream of Stream
第二題就有點意思了, 因為我不曉得 Java 的 Supplier interface
於是問 chatGPT, 他給的回答還蠻詳盡的:
這個 example 是能執行的,
Supplier<Integer>
就是用 Java lambda 把 get() 實作出來
Integer get() { return random.next(); }
有了 Supplier 這個 interface, 就更能做到泛型, 更好的將函氏抽象定義,
實現 Functional Programming.
回到 Stackoverflow 原本的問題,
其實也有人有回應, Java stream 的 document 也有提到:
A stream should be operated on (invoking an intermediate or terminal stream operation) only once.
This rules out, for example, "forked" streams, where the same source feeds two or more pipelines, or multiple traversals of the same stream.
A stream implementation may throw IllegalStateException
if it detects that the stream is being reused.
However, since some stream operations may return their receiver rather than a new stream object, it may not be possible to detect reuse in all cases.
留言
張貼留言