Rust-tuple
提供:Dev Guides
錆-タプル
タプルは複合データ型です。 スカラー型は、1つのタイプのデータのみを格納できます。 たとえば、i32変数は単一の整数値のみを格納できます。 複合型では、一度に複数の値を格納でき、異なる型にすることができます。
タプルの長さは固定です-一度宣言すると、サイズを拡大または縮小できません。 タプルインデックスは 0 から始まります。
構文
//Syntax1
let tuple_name:(data_type1,data_type2,data_type3) = (value1,value2,value3);
//Syntax2
let tuple_name = (value1,value2,value3);
図
次の例では、タプルの値を表示します。
fn main() {
let tuple:(i32,f64,u8) = (-325,4.9,22);
println!("{:?}",tuple);
}
_println!( "\ {}"、tuple)_構文を使用して、タプルの値を表示することはできません。 これは、タプルが複合型であるためです。 _println!( "\ {:?}"、tuple_name)_構文を使用して、タプルの値を出力します。
出力
(-325, 4.9, 22)
図
次の例では、個々の値をタプルで出力します。
fn main() {
let tuple:(i32,f64,u8) = (-325,4.9,22);
println!("integer is :{:?}",tuple.0);
println!("float is :{:?}",tuple.1);
println!("unsigned integer is :{:?}",tuple.2);
}
出力
integer is :-325
float is :4.9
unsigned integer is :2
図
次の例では、タプルをパラメーターとして関数に渡します。 タプルは値によって関数に渡されます。
fn main(){
let b:(i32,bool,f64) = (110,true,10.9);
print(b);
}
//pass the tuple as a parameter
fn print(x:(i32,bool,f64)){
println!("Inside print method");
println!("{:?}",x);
}
出力
Inside print method
(110, true, 10.9)
破壊する
割り当ての破棄は、タプルの値を展開する錆の特徴です。 これは、タプルを個別の変数に割り当てることで実現されます。
次の例を考慮してください-
fn main(){
let b:(i32,bool,f64) = (30,true,7.9);
print(b);
}
fn print(x:(i32,bool,f64)){
println!("Inside print method");
let (age,is_male,cgpa) = x;//assigns a tuple to
distinct variables
println!("Age is {} , isMale? {},cgpa is
{}",age,is_male,cgpa);
}
変数_x_は、letステートメントに割り当てられるタプルです。 各変数-age、is_male、cgpaには、タプル内の対応する値が含まれます。
出力
Inside print method
Age is 30 , isMale? true,cgpa is 7.9