gpt4 book ai didi

java - 为什么使用 useDelimiter(Pattern 模式) 与 useDelimiter(String 模式)

转载 作者:行者123 更新时间:2023-11-30 08:08:30 26 4
gpt4 key购买 nike

根据java:

public Scanner useDelimiter(String pattern) Sets this scanner's delimiting pattern to a pattern constructed from the specified String. An invocation of this method of the form useDelimiter(pattern) behaves in exactly the same way as the invocation useDelimiter(Pattern.compile(pattern)).

使用Pattern.compile(pattern)有什么优势吗?我读到 Pattern.compile(pattern) 会将编译后的模式放入内存中,从而使扫描仪搜索速度更快。 useDelimiter(String pattern) 是否也会将模式放入内存中?

简而言之,它们的行为方式真的完全相同吗?

最佳答案

useDelimiter(String) 可能比 useDelimiter(Pattern) 更高效,因为它不仅像 Pattern.compile(String)< 那样编译模式 但它还缓存最多 7 个编译模式并简单地查找它们。但是,如果您经常使用超过 7 个模式,则会发生缓存流失,这可能会降低性能,因此您最好自己编译和缓存模式。

关于java - 为什么使用 useDelimiter(Pattern 模式) 与 useDelimiter(String 模式),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30739640/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com