字符
在V中,可以使用:=运算符定义字符串。默认情况下,字符串(与其他变量一样)是不可变的。 一个可以使用""或 ''来表示字符串。使用vfmt时,除非包含单引号字符,否则所有双引号字符串都将转换为单引号字符串。
name := 'Bob'
println(name) // Bob
println(name.len) // 3获取字符串的长度使用.len。
插入
可以在变量前面使用$进行字符串插值:
name:= 'Bob'
println('Hello $name!') // Hello Bob!使用${}可以有更复杂的插值语法表达式:
struct User {
name string
age int
}
bob := User {
name: 'Bob'
age: 17
}
println('Say Hello to a new User: ${bob.name}, ${bob.age}') // Say Hello to new User: Bob, 17
println('${bob.name}s age is higher or equal to 18: ${bob.age >= 18}') // 0 <=> number representation for false连接操作符
使用+运算符符字符串会被连接。
添加到字符串与连接可以使用+=运算符。因为字符串在默认情况下是不可变的,所以只有用mut声明它们时才能这样做。
在V中,字符串数据使用UTF-8编码,字符串本身是一个只读字节数组。这使得切片成为可能,这意味着我们可以访问单个字符的文本或字符串变量的切片。
Notes
V中的所有运算符两边必须具有相同类型的值。下面的代码无法编译,因为age是int类型的:
因此,我们需要使用.str()或使用字符串插值(最好用的方法)将其转换为字符串:
要定义字符,可以使用:`` 。原始字符串可以定义为前缀r。
Last updated
Was this helpful?