Erlang - โอเปอเรเตอร์
ตัวดำเนินการคือสัญลักษณ์ที่บอกให้คอมไพเลอร์ดำเนินการทางคณิตศาสตร์หรือตรรกะเฉพาะ
Erlang มีตัวดำเนินการประเภทต่อไปนี้ -
- ตัวดำเนินการเลขคณิต
- ตัวดำเนินการเชิงสัมพันธ์
- ตัวดำเนินการทางตรรกะ
- ตัวดำเนินการ Bitwise
ตัวดำเนินการเลขคณิต
ภาษา Erlang สนับสนุนตัวดำเนินการเลขคณิตปกติเป็นภาษาใดก็ได้ ต่อไปนี้เป็นตัวดำเนินการทางคณิตศาสตร์ที่มีอยู่ใน Erlang
แสดงตัวอย่าง
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
+ | การเพิ่มตัวถูกดำเนินการสองตัว | 1 + 2 จะให้ 3 |
- | ลบตัวถูกดำเนินการที่สองจากตัวแรก | 1 - 2 จะให้ -1 |
* | การคูณของตัวถูกดำเนินการทั้งสอง | 2 * 2 จะให้ 4 |
/ | การหารตัวเศษด้วยตัวส่วน | 2/2 จะให้ 1 |
rem | ส่วนที่เหลือของการหารจำนวนแรกด้วยตัวที่สอง | 3 rem 2 จะให้ 1 |
div | ส่วนประกอบ div จะทำการหารและส่งกลับองค์ประกอบจำนวนเต็ม | 3 หาร 2 จะให้ 1 |
ตัวดำเนินการเชิงสัมพันธ์
ตัวดำเนินการเชิงสัมพันธ์อนุญาตให้เปรียบเทียบวัตถุ ต่อไปนี้เป็นตัวดำเนินการเชิงสัมพันธ์ที่มีอยู่ใน Erlang
แสดงตัวอย่าง
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
== | ทดสอบความเท่าเทียมกันระหว่างสองวัตถุ | 2 = 2 จะให้เป็นจริง |
/ = | ทดสอบความแตกต่างระหว่างสองวัตถุ | 3 / = 2 จะให้เป็นจริง |
< | ตรวจสอบเพื่อดูว่าวัตถุทางซ้ายน้อยกว่าตัวถูกดำเนินการด้านขวาหรือไม่ | 2 <3 จะให้เป็นจริง |
= < | ตรวจสอบเพื่อดูว่าวัตถุด้านซ้ายน้อยกว่าหรือเท่ากับตัวถูกดำเนินการด้านขวาหรือไม่ | 2 = <3 จะให้เป็นจริง |
> | ตรวจสอบเพื่อดูว่าวัตถุด้านซ้ายมีค่ามากกว่าตัวถูกดำเนินการด้านขวาหรือไม่ | 3> 2 จะให้เป็นจริง |
> = | ตรวจสอบเพื่อดูว่าวัตถุด้านซ้ายมากกว่าหรือเท่ากับตัวถูกดำเนินการด้านขวาหรือไม่ | 3> = 2 จะให้เป็นจริง |
ตัวดำเนินการทางตรรกะ
ตัวดำเนินการทางตรรกะเหล่านี้ใช้เพื่อประเมินนิพจน์บูลีน ต่อไปนี้เป็นตัวดำเนินการเชิงตรรกะที่มีอยู่ใน Erlang
แสดงตัวอย่าง
ตัวดำเนินการ | คำอธิบาย | ตัวอย่าง |
---|---|---|
หรือ | นี่คือโอเปอเรเตอร์“ หรือ” เชิงตรรกะ | จริงหรือจริงจะให้จริง |
และ | นี่คือโอเปอเรเตอร์“ และ” เชิงตรรกะ | จริงเท็จจะให้เท็จ |
ไม่ | นี่คือโอเปอเรเตอร์ "ไม่ใช่" เชิงตรรกะ | ไม่เท็จจะให้จริง |
xor | นี่คือโอเปอเรเตอร์“ xor” เอกสิทธิ์เฉพาะทางตรรกะ | จริง x หรือเท็จจะให้จริง |
ตัวดำเนินการ Bitwise
Erlang มีตัวดำเนินการสี่บิต ต่อไปนี้เป็นตัวดำเนินการระดับบิตที่มีอยู่ใน Erlang
แสดงตัวอย่าง
ซีเนียร์ | ตัวดำเนินการและคำอธิบาย |
---|---|
1 | band นี่คือโอเปอเรเตอร์“ และ” แบบบิต |
2 | bor นี่คือโอเปอเรเตอร์“ หรือ” แบบบิต |
3 | bxor นี่คือ "xor" แบบบิตหรือเฉพาะตัวหรือโอเปอเรเตอร์ |
4 | bnot นี่คือตัวดำเนินการปฏิเสธแบบบิต |
ต่อไปนี้เป็นตารางความจริงที่แสดงตัวดำเนินการเหล่านี้ -
น | q | p & q | p | q | p ^ q |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 0 |
1 | 0 | 0 | 1 | 1 |
ลำดับความสำคัญของตัวดำเนินการ
ตารางต่อไปนี้แสดงลำดับความสำคัญของตัวดำเนินการสำหรับตัวดำเนินการ Erlang ตามลำดับความสำคัญจากมากไปหาน้อยพร้อมกับการเชื่อมโยง ลำดับความสำคัญของตัวดำเนินการและการเชื่อมโยงใช้เพื่อกำหนดลำดับการประเมินผลในนิพจน์ที่ไม่ได้อยู่ในวงเล็บ
ตัวดำเนินการ | ความสัมพันธ์ |
---|---|
: | |
# | |
ไม่ใช่ไม่ใช่ | |
/, *, div, rem, band และ | เชื่อมโยงด้านซ้าย |
+, -, บอร์, bxor หรือ, xor | เชื่อมโยงด้านซ้าย |
==, / =, = <, <,> =,> |