สนิม - ผู้ปฏิบัติงาน
ตัวดำเนินการกำหนดฟังก์ชันบางอย่างที่จะดำเนินการกับข้อมูล ข้อมูลที่ตัวดำเนินการทำงานเรียกว่าตัวถูกดำเนินการ พิจารณานิพจน์ต่อไปนี้ -
7 + 5 = 12
ที่นี่ค่า 7, 5 และ 12 เป็นตัวถูกดำเนินการในขณะที่ + และ = เป็นตัวดำเนินการ
ตัวดำเนินการหลักใน Rust สามารถจำแนกได้เป็น -
- Arithmetic
- Bitwise
- Comparison
- Logical
- Bitwise
- Conditional
ตัวดำเนินการเลขคณิต
สมมติค่าในตัวแปร a และ b คือ 10 และ 5 ตามลำดับ
แสดงตัวอย่าง
ซีเนียร์ No | ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|---|
1 | + (เพิ่มเติม) | ส่งคืนผลรวมของตัวถูกดำเนินการ | a + b คือ 15 |
2 | - (การลบ) | ส่งกลับผลต่างของค่า | ab คือ 5 |
3 | * (การคูณ) | ส่งคืนผลิตภัณฑ์ของค่า | a * b คือ 50 |
4 | / (แผนก) | ดำเนินการหารและส่งกลับผลหาร | a / b คือ 2 |
5 | % (โมดูลัส) | ดำเนินการหารและส่งคืนส่วนที่เหลือ | a% b คือ 0 |
NOTE - ไม่รองรับตัวดำเนินการ ++ และ - ใน Rust
ตัวดำเนินการเชิงสัมพันธ์
ตัวดำเนินการเชิงสัมพันธ์ทดสอบหรือกำหนดชนิดของความสัมพันธ์ระหว่างสองเอนทิตี ตัวดำเนินการเชิงสัมพันธ์ใช้เพื่อเปรียบเทียบค่าตั้งแต่สองค่าขึ้นไป ตัวดำเนินการเชิงสัมพันธ์ส่งคืนค่าบูลีน - จริงหรือเท็จ
สมมติว่าค่าของ A คือ 10 และ B คือ 20
แสดงตัวอย่าง
ซีเนียร์ No | ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|---|
1 | > | มากกว่า | (A> B) เป็นเท็จ |
2 | < | น้อยกว่า | (A <B) เป็นจริง |
3 | > = | มากกว่าหรือเท่ากับ | (A> = B) เป็นเท็จ |
4 | <= | น้อยกว่าหรือเท่ากับ | (A <= B) เป็นจริง |
5 | == | ความเท่าเทียมกัน | (A == B) เป็นเท็จ |
6 | ! = | ไม่เท่ากับ | (A! = B) เป็นจริง |
ตัวดำเนินการทางตรรกะ
ตัวดำเนินการทางตรรกะใช้เพื่อรวมเงื่อนไขสองเงื่อนไขขึ้นไป ตัวดำเนินการทางตรรกะส่งคืนค่าบูลีนด้วย สมมติว่าค่าของตัวแปร A คือ 10 และ B คือ 20
แสดงตัวอย่าง
ซีเนียร์ No | ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|---|
1 | && (และ) | ตัวดำเนินการจะคืนค่าจริงก็ต่อเมื่อนิพจน์ทั้งหมดที่ระบุส่งคืนเป็นจริง | (A> 10 && B> 10) เป็นเท็จ |
2 | || (หรือ) | ตัวดำเนินการจะส่งคืนค่าจริงหากนิพจน์อย่างน้อยหนึ่งนิพจน์ที่ระบุกลับเป็นจริง | (A> 10 || B> 10) เป็น True |
3 | ! (ไม่) | ตัวดำเนินการส่งคืนค่าผกผันของผลลัพธ์ของนิพจน์ สำหรับ Eg:! (> 5) คืนค่าเท็จ | ! (A> 10) เป็นจริง |
ตัวดำเนินการ Bitwise
สมมติตัวแปร A = 2 และ B = 3
แสดงตัวอย่าง
ซีเนียร์ No | ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|---|
1 | & (Bitwise AND) | ดำเนินการบูลีน AND กับอาร์กิวเมนต์จำนวนเต็มแต่ละบิต | (A & B) คือ 2 |
2 | | (BitWise หรือ) | ดำเนินการบูลีนหรือการดำเนินการกับอาร์กิวเมนต์จำนวนเต็มแต่ละบิต | (A | B) คือ 3 |
3 | ^ (Bitwise XOR) | ดำเนินการบูลีนเอกสิทธิ์เฉพาะหรือการดำเนินการกับอาร์กิวเมนต์จำนวนเต็มแต่ละบิต Exclusive OR หมายความว่าตัวถูกดำเนินการตัวใดตัวหนึ่งเป็นจริงหรือตัวถูกดำเนินการสองเป็นจริง แต่ไม่ใช่ทั้งสองอย่าง | (A ^ B) คือ 1 |
4 | ! (ไม่ Bitwise) | เป็นตัวดำเนินการยูนารีและดำเนินการโดยการย้อนกลับบิตทั้งหมดในตัวถูกดำเนินการ | (! B) คือ -4 |
5 | << (Shift ซ้าย) | มันย้ายบิตทั้งหมดในตัวถูกดำเนินการตัวแรกไปทางซ้ายตามจำนวนตำแหน่งที่ระบุในตัวถูกดำเนินการที่สอง บิตใหม่เต็มไปด้วยศูนย์ การเลื่อนค่าไปทางซ้ายหนึ่งตำแหน่งจะเทียบเท่ากับการคูณด้วย 2 การเลื่อนสองตำแหน่งจะเทียบเท่ากับการคูณด้วย 4 และอื่น ๆ | (A << 1) คือ 4 |
6 | >> (Shift ขวา) | ตัวดำเนินการกะไบนารีขวา ค่าของตัวถูกดำเนินการด้านซ้ายจะถูกย้ายไปทางขวาตามจำนวนบิตที่ระบุโดยตัวถูกดำเนินการด้านขวา | (A >> 1) คือ 1 |
7 | >>> (เลื่อนขวาด้วยศูนย์) | ตัวดำเนินการนี้เหมือนกับตัวดำเนินการ >> ยกเว้นว่าบิตที่เลื่อนไปทางซ้ายจะเป็นศูนย์เสมอ | (A >>> 1) คือ 1 |