ผู้เริ่มต้นหลายคนไม่รู้ว่าการเพิ่มขึ้นและการลดลงคืออะไร แต่เรามั่นใจว่าทุกคนคงเคยเห็นการใช้ "
i++
, ++i
หรือi--
" --i
ในลูปfor
แล้ว เลยขอระบายหน่อย
เพิ่มขึ้นคืออะไร?
การเพิ่มขึ้นเป็นการดำเนินการในภาษาการเขียนโปรแกรมหลายภาษาที่เพิ่มตัวแปร ส่วนใหญ่แล้ว การเพิ่มขึ้นหมายถึงการเพิ่มขึ้นของตัวแปร 1 หน่วย การดำเนินการย้อนกลับเรียกว่าการลดลง การลดลงคือการลดลงของตัวแปร ส่วนใหญ่มักจะโดยหนึ่งด้วย ใน Java การเพิ่มขึ้นและการลดลงเป็นตัวดำเนินการเอกภาคหลักที่นำไปใช้กับตัวแปรตัวเลขใดๆ ส่วนเพิ่ม:ระบุด้วยเครื่องหมายบวกสองตัว "++
" และเพิ่มค่าของตัวแปรด้วย 1 การลดลง:ระบุด้วยเครื่องหมายลบสองตัว " --
" และลดค่าของตัวแปรลง 1 ตัวอย่าง:
int x = 10, z = 10;
x++;
z--;
System.out.println("x: " + x + ", z: " + z);
เป็นผลให้x
มันจะเพิ่มขึ้น และz
- ลดลง และในคอนโซลเราจะเห็น: x: 11
, z: 9
จริงๆ แล้วคุณสามารถเขียนได้ดังนี้:
int x = 10, z = 10;
x = x + 1;
z = z - 1;
System.out.println("x: " + x + ", z: " + z);
แต่ทำไมต้องเขียนสิ่งที่ไม่จำเป็นถ้าเราจำเป็นต้องเพิ่มหรือลดตัวแปรเพียง 1? เป็นเรื่องดีที่เราเข้าใจแล้วว่าการเพิ่มขึ้นและการลดลงคืออะไร แต่นั่นไม่ใช่ทั้งหมด การเพิ่มขึ้นและ การลดลงมี 2 รูปแบบ - คำนำหน้าและคำนำหน้า โอ้พระเจ้า คุณคิดว่านี่คืออะไร) อย่าตกใจไป ทุกอย่างก็ง่ายที่นี่เช่นกัน คำนำหน้าหรือรูปแบบคำนำหน้า ถูกประกาศก่อนตัวแปร " ++x
หรือ--x
" โดยเริ่มแรกเป็นการเพิ่มหรือลดค่าตัวแปร Postfixหรือรูปแบบ Postfix ถูกประกาศหลังตัวแปร " x++
หรือx--
" โดยเพิ่มหรือลดตัวแปรหลังการประเมิน หากคุณให้ความสนใจกับคำว่า การคำนวณ แสดงว่าคุณทำด้วยเหตุผลที่ดี เนื่องจากทั้งสองรูปแบบทำงานเหมือนกันหากไม่ได้ใช้ในการคำนวณ นี่คือตัวอย่างที่ไม่มีการคำนวณ:
int x = 10, z = 10;
x++;
++z;
System.out.println("x: " + x + ", z: " + z);
เป็นผลให้ตัวแปรทั้งสองจะเท่ากับ 11 และนี่คือตัวอย่างการคำนวณ:
int x = 10, c = 10;
final int y = 13 - x++;
final int z = 13 - ++c;
System.out.println("y: " + y + ", z: " + z);
อย่างที่คุณเห็น ทั้งตัวแปร " x
และc
" มีความเท่ากันและสมการก็คล้ายกัน แต่ใช้รูปแบบการเขียนที่แตกต่างกันของตัวดำเนินการส่วนเพิ่ม จากการคำนวณตัวแปร y จะเป็น 3 แต่z
จะเป็น 2 คุณอาจเดาได้แล้วว่าทำไมตามสิ่งที่เขียนไว้ด้านบน ถ้าไม่เช่นนั้นก็มา "เคี้ยว" ทุกอย่างด้วยกัน แบบฟอร์ม postfix จะทำงานหลังจากการคำนวณ ซึ่งหมายความว่าสมการจะทำงานดังนี้:
x = 10;
// Начало уравнения.
y = 13 - x; // С начала производим вычисление (x все еще 10)
x += 1; // Производим увеличение на 1
// Конец уравнения.
คำนำหน้าจะทำงานดังนี้:
c = 10;
// Начало уравнения.
c += 1; // Производим увеличение на 1
z = 13 - c; // Производим вычисление (c уже 11)
// Конец уравнения.
นั่นคือเรื่องราวทั้งหมด :) เราหวังว่านี่จะเป็นประโยชน์และให้ข้อมูลสำหรับคุณ ขอให้โชคดีในการเรียนรู้ Java ;) คุณสามารถเรียนรู้และฝึกฝนการใช้การเพิ่มขึ้น การลดลง และตัวดำเนินการอื่นๆ ใน Java ในหลักสูตร Javarush ในภารกิจ Java Multithreading:
GO TO FULL VERSION