|
|
1
32
正如您所注意到的,这与Ruby的设计是一致的。不可变字符串比可变字符串效率更高—由于字符串被重复使用,因此复制更少—但这会使程序员的工作更加困难。将字符串视为可变的是很直观的—您可以将它们连接在一起。为了解决这个问题,Java默默地翻译串联(通过
Ruby还有很多破坏性的方法,比如
另一个可能的原因是Ruby的灵感来自Perl,而Perl恰好使用可变字符串。 Ruby有符号和冻结字符串,它们都是不可变的。作为额外的好处,每个可能的字符串值的符号都保证是唯一的。 |
|
|
2
5
这是我的意见,不是马茨的。为了回答这个问题,当我说一种语言有“不可变的字符串”时,这意味着
|