Operators
ตัวดำเนินการเป็นเครื่องหมายหรือกลุ่มของเครื่องหมายที่ใช้ในการทำการอย่างใดอย่างหนึ่ง เช่น การกำหนดค่า การประมวลผลทางคณิตศาสตร์ หรือการเปรียบเทียบทางตรรกะ เป็นต้น
ตัวดำเนินการ (Operator) คือ สัญลักษณ์ที่ใช้ในนิพจน์หรือคำสั่งเพื่อกำหนดกระบวนการทำงานของโปรแกรม ในการเขียนโปรแกรม เราสามารถใช้ตัวดำเนินการเพื่อทำสิ่งต่างๆ ดังนี้
การกำหนดค่าให้กับตัวแปรหรือค่าคงที่ (Assign a value)
การดำเนินการทางคณิตศาสตร์ (Basic Arithmetic)
เครื่องหมาย + (Additional operator) นอกจากจะถูกใช้เพื่อดำเนินการกับตัวเลขแล้ว ยังสามารถใช้ในการเชื่อมต่อข้อความ (Concatenation) ได้ด้วย ตัวอย่างเช่น
การดำเนินการด้วยตัวดำเนินการกำหนดค่าเชิงประกอบ (Compound Assignment)
การดำเนินการเพื่อเปรียบเทียบ (Comparison Operators)
ตัวดำเนินการกลุ่มนี้จะทำหน้าที่ในการเปรียบเทียบค่าที่ถูกเก็บในตัวแปร 2 ตัวแปร เช่น ค่าของตัวแปร a และ ค่าของตัวแปร b โดยจะได้ผลลัพธ์จากการทำงานเป็นข้อมูลมูลประเภท Boolean (true หรือ false) ตัวดำเนินการเปรียบเทียบ ประกอบด้วย
การใช้
==
ในการเปรียบเทียบว่า a และ b มีค่าเท่ากัน ใช่หรือไม่ เช่น a == bการใช้
!=
ในการเปรียบเทียบว่า a และ b มีค่าไม่เท่ากัน ใช่หรือไม่ เช่น a != bการใช้
>
ในการเปรียบเทียบว่า a มีค่ามากกว่า b หรือไม่ เช่น a > bการใช้
<
ในการเปรียบเทียบว่า a มีค่าน้อยกว่า b หรือไม่ เช่น a < bการใช้
>=
ในการเปรียบเทียบว่า a มีค่ามากกว่าหรือเท่ากับ b หรือไม่ เช่น a >= bการใช้
<=
ในการเปรียบเทียบว่า a มีค่าน้อยกว่าหรือเท่ากับ b หรือไม่ เช่น a <= b
ตัวอย่างการใช้ตัวดำเนินการแบบเปรียบเทียบ เช่น
การดำเนินการด้านตรรกะ (Logical Operator)
ตัวดำเนินการที่ใช้เพื่อประมวลผลทางตรรกศาสตร์กับข้อมูลประเภท Boolean (true หรือ false) ตัวดำเนินการในกลุ่มนี้ประกอบด้วย
Logical NOT (
!
)Logical AND (
&&
)Logical OR (
||
)
โดยหากกำหนดให้ a และ b เป็นตัวแปรประเภท Boolean แล้ว จะได้ผลลัพธ์การดำเนินการด้วยตัวดำเนินการด้านตรรกะ ดังนี้
a
b
!a
a && b
a || b
true
true
false
true
true
true
false
false
false
true
false
true
true
false
true
false
false
true
false
false
ตัวอย่างการใช้ตัวดำเนินการด้านตรรกะ เช่น
ลำดับในการทำงานของตัวดำเนินการ (Order of operations)
ตัวดำเนินการแต่ละตัวต่างก็มีลำดับความสำคัญ (Precedence) ของการทำงานก่อนหลังแตกต่างกันไป โดยตัวดำเนินการที่มีความสำคัญสูงจะทำงานก่อนตัวดำเนินการที่มีความสำคัญต่ำ
ความสำคัญของตัวดำเนินการในภาษา Swift สามารถเรียงลำดับได้ ดังนี้
Logical NOT (
!
)Multiplication (
*
)Division (
/
)Module (
%
)Addition (
+
)Substraction (
-
)Less than (
<
)Less than or equal (
<=
)More than (
>
)More than or equal (
>=
)Equal (
==
)Not be equal (
!=
)Logical AND (
&&
)Logical OR (
||
)
ตัวดำเนินการอื่นๆ
Ternary conditional operator เป็นตัวดำเนินการที่มีการตรวจสอบเงื่อนไขเพื่อการตัดสินใจในการทำงาน ซึ่งมีรูปแบบการใช้งาน คือ condition ? a : b
โดยถ้าเงื่อนไขเป็น true ผลลัพธ์จะเป็น a แต่ถ้าเป็น false ผลลัพธ์จะเป็น b
Nil-coalescing operator เป็นตัวดำเนินการที่ใช้สำหรับตรวจสอบค่า Optional ซึ่งมีรูปแบบการใช้งาน คือ optional ?? default
โดยหากพบว่ามีการกำหนดค่าใน Optional ก็จะทำการ Unwrap แต่ถ้าหากเป็น nil ก็จะกำหนดค่า default เข้าไปแทนที่
Range Operator เป็นตัวดำเนินการเพื่อใช้ในการกำหนดช่วงของข้อมูล ซึ่งมักถูกใช้ร่วมกับการเขียนคำสั่งแบบกำหนดเงื่อนไข (Condition Statement) และ ลูป (Loop) โดยสามารถแบ่งออกเป็นประเภทต่างๆ ได้ดังนี้
(1) Closed range operator ( a...b ) เป็นการกำหนดช่วงของข้อมูลโดยเริ่มตั้งแต่ค่า a ไปจนถึงค่า b เช่น
(2) Half-Open range operator (a..<b) เป็นการกำหนดช่วงของข้อมูลโดยเริ่มตั้งแต่ค่า a ไปจนถึงค่า b แต่ไม่นับค่า b เช่น
(3) One-Sided range operator เป็นการกำหนดช่วงของข้อมูล โดยการระบุค่าแรกหรือค่าสุดท้ายของช่วงข้อมูลเพียงอย่างใดอย่างหนึ่ง เช่น
แหล่งข้อมูลอ้างอิง
The Swift Programming Language (Swift 5.0), Apple Inc., 2018. Available on: Apple Book Store.
App Development with Swift, Apple Inc., 2017. Available on: Apple Book Store.
รายละเอียดเพื่อการอ้างอิง ผู้เขียน ธิติ ธีระเธียร วันที่เผยแพร่ วันที่ 27 เมษายน 2562. เข้าถึงได้จาก https://ajthiti.gitbook.io/swift/operators เงื่อนใขในการใช้งาน This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
Last updated
Was this helpful?