gpt4 book ai didi

ruby - Ruby 中的字符串是可变的吗?

转载 作者:数据小太阳 更新时间:2023-10-29 06:25:04 27 4
gpt4 key购买 nike

字符串在 Ruby 中是可变的吗?根据documentation

str = "hello"
str = str + " world"

创建一个值为 "hello world" 的新字符串对象,但是当我们这样做时

str = "hello"
str << " world"

它没有提到它创建了一个新对象,那么它是否改变了 str 对象,该对象现在将具有值 "hello world"

最佳答案

是的,<<改变同一个对象,+创建一个新的。示范:

irb(main):011:0> str = "hello"
=> "hello"
irb(main):012:0> str.object_id
=> 22269036
irb(main):013:0> str << " world"
=> "hello world"
irb(main):014:0> str.object_id
=> 22269036
irb(main):015:0> str = str + " world"
=> "hello world world"
irb(main):016:0> str.object_id
=> 21462360
irb(main):017:0>

关于ruby - Ruby 中的字符串是可变的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5686621/

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