name := 'Bob'
println('Hello, name!') // `` is used for string interpolation
println(name.len)
bobby := name + 'by' // + is used to concatenate strings
println(bobby) // ==> "Bobby"
println(bobby.substr(1, 3)) // ==> "ob"
// println(bobby[1:3]) // This syntax will most likely replace the substr() method
在V中,字符串是只读字节数组。
字符串数据使用UTF-8编码。
单引号和双引号都可用于表示字符串(TODO:尚不支持双引号)。为保持一致性,vfmt
将双引号转换为单引号,除非该字符串包含单引号字符。字符串是不可变的。这意味着子字符串函数非常有效:不执行复制,不需要额外的分配。
V
中的所有运算符必须在两侧都具有相同类型的值。如果age
是int
,则不编译此代码:
println('age = ' + age)
我们必须将age
转换为string
:
println('age = ' + age.str())
或使用字符串插值(首选):
println('age = $age')