我最近对这个问题感到沮丧,其中 OP 想要根据被格式化的数字的特征来改变输出的格式。
自然的机制是动态地构造格式,但因为PrintStream.format
采用 aString
而不是 aCharSequence
构造必须以 a 的构造结束String
。
构建一个实现动态格式的类会更加自然和高效,CharSequence
而无需创建另一个String
.
这似乎是 Java 库中的一个常见主题,默认情况下似乎需要 aString
即使不变性不是必需的。我知道由于显而易见的原因, Map
s 和Set
s 中的键通常应该是不可变的,但据我所知,在 a就足够String
的地方经常使用。CharSequence