tuple是多种类型组合到一起的,复合类型,长度固定,tuple中元素的顺序也是一定的。
fn main(){
let tup:(i32,f64,u8)=(500,6.4,1);
}
变量tup被绑定了一个元组值(500,6.4,1),该tuple的类型是(i32,f64,u8)
使用模式匹配解构tuple
fn main(){
let tup = (500,6.4,1);
let (x,y,z)=tup;
println!("The value of y is:{}",y);
}
用.来访问tuple
访问某个特定的元素
fn main(){
let x:(i32,f64,u8)=(500,6.4,1);
let five_hunderd =x.0;
let six_point_four = x.1;
let one = x.2;
}
for instance
fn main(){
let s1 = String::from("hello");
let (s2,len) = calculate_length(s1);
print!("The value of '{}' is {}.",s2,len);
}
fn calculate_length(s:String)->(String,usize){
let length = s.len();
(s,length)
}
calculate_length函数接收s1字符串的所有权,计算length,然后将字符串所有权和length赋值给s2和len