|
|
1
32
正如您所注意到的,这与Ruby的设计是一致的。不可变字符串比可变字符串效率更高—由于字符串被重复使用,因此复制更少—但这会使程序员的工作更加困难。将字符串视为可变的是很直观的—您可以将它们连接在一起。为了解决这个问题,Java默默地翻译串联(通过
Ruby还有很多破坏性的方法,比如
另一个可能的原因是Ruby的灵感来自Perl,而Perl恰好使用可变字符串。 Ruby有符号和冻结字符串,它们都是不可变的。作为额外的好处,每个可能的字符串值的符号都保证是唯一的。 |
|
|
2
5
这是我的意见,不是马茨的。为了回答这个问题,当我说一种语言有“不可变的字符串”时,这意味着
|
|
Ben · 统计向量中的单词在字符串中出现的频率 1 年前 |
|
|
bear_525 · 从列中删除中间名和首字母,并保存在单独的列中 1 年前 |
|
|
asdfadf · 为什么具有相同内存值的字符串和整数打印方式不同? 1 年前 |
|
|
user764754 · 防止多行原始字符串文字中出现新行字符 1 年前 |
|
|
Bogaso · 从列表中返回与模式匹配的元素 1 年前 |
|
|
Jasco · 如何使用VBA提取两个相似字符之间的字符串中的单词? 1 年前 |