6
我需要替換字符串中的某些字符: 每個DOT到下劃線。使用Guava CharMatcher作爲一個類的靜態字段。 CharMatcher線程安全嗎?
只需做:myString.replace(".","_");
哪些工作。
但是,我想使用Guava的CharMatcher
,它應該具有更好的性能。
CharMatcher dotCharMatcher = CharMatcher.anyOf(".");
dotCharMatcher.replaceFrom(myString, "_");
它運行在有許多線程的服務器上。
我可以在使用它的類中創建dotCharMatcher
靜態字段,還是應該在每個請求中創建一個靜態字段? (它是線程安全的?)
感謝
[Javadoc也提到](https://github.com/google/guava/blob/fa95e381e665d8ee9639543b99ed38020c8de5ef/guava/src/com/google/common/base/CharMatcher.java#L34)_「強烈鼓勵實現是無副作用和不可變的。「_ – Xaerxess 2014-11-05 13:44:33
而且,靜態的」CharMatcher「常量必須是線程安全的,所以在它們的構造中使用的任何東西都必須是線程安全的。 – Joe 2014-11-05 14:14:52