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 | เชื่อมโยงด้านซ้าย |
| ==, / =, = <, <,> =,> |