เมื่อคุณกำลังเขียนโปรแกรม เป็นเรื่องปกติที่จะเขียนโค้ดที่ควรดำเนินการเมื่อตรงตามเงื่อนไขที่กำหนดเท่านั้น
ตัวอย่างเช่น คุณอาจต้องการสั่งซื้อบนเว็บไซต์อีคอมเมิร์ซของคุณก็ต่อเมื่อผู้ใช้ได้ส่งที่อยู่ของพวกเขา หรือคุณอาจเปิดร้านกาแฟและต้องการให้ส่วนลดแก่ผู้ใช้สำหรับกาแฟของพวกเขา หากพวกเขาสั่งซื้อกาแฟมากกว่าห้าแก้วในสัปดาห์ที่ผ่านมา
ในการเขียนโปรแกรม เราใช้คำสั่งแบบมีเงื่อนไขเพื่อจุดประสงค์นี้ คำสั่งแบบมีเงื่อนไขดำเนินการกลุ่มโค้ดเฉพาะโดยพิจารณาจากเงื่อนไขที่ประเมินว่าเป็นจริงหรือเท็จ ใน Java if...else
คำสั่งคือคำสั่งควบคุมโฟลว์ที่ให้คุณรันบล็อกของโค้ดได้ก็ต่อเมื่อตรงตามเงื่อนไขที่กำหนดเท่านั้น
บทแนะนำนี้จะสำรวจวิธีใช้ if...else
คำสั่งใน Java และสำรวจตัวอย่างบางส่วนของ if...else
คำสั่งที่ใช้ในโปรแกรม Java
Java If Statement
คำสั่งเงื่อนไขพื้นฐานที่สุดคือ if
คำแถลง. if
คำสั่งประเมินว่าคำสั่งนั้นเท่ากับจริงหรือเท็จ และจะดำเนินการก็ต่อเมื่อคำสั่งนั้นมีค่าเท่ากับจริงเท่านั้น หากคำสั่งประเมินเป็นเท็จ โปรแกรมจะข้าม if
คำสั่งและรันโปรแกรมที่เหลือต่อไป
ใน Java if
งบเขียนดังนี้:
if (condition_is_met) { // Execute code }
มาทำลายมันกันเถอะ if
ของเรา คำสั่งยอมรับ เงื่อนไข ซึ่งเป็นนิพจน์บูลีนที่คืนค่าจริงหรือเท็จ จากนั้น รหัสที่ควรดำเนินการหากเงื่อนไขที่ประเมินว่าเป็นจริงนั้นอยู่ในวงเล็บปีกกา ({})
รหัสภายใน if
เยื้องคำสั่ง นอกจากนี้ if
คำสั่งไม่ต้องการอัฒภาคต่อท้าย ซึ่งแตกต่างจากโค้ดบรรทัดอื่นๆ ใน Java
81% ของผู้เข้าร่วมกล่าวว่าพวกเขารู้สึกมั่นใจมากขึ้นเกี่ยวกับโอกาสในการทำงานด้านเทคโนโลยีหลังจากเข้าร่วม bootcamp จับคู่กับ Bootcamp วันนี้
ผู้สำเร็จการศึกษาจากหลักสูตร bootcamp โดยเฉลี่ยใช้เวลาน้อยกว่าหกเดือนในการเปลี่ยนอาชีพ ตั้งแต่เริ่มต้น bootcamp ไปจนถึงหางานแรก
มาดูตัวอย่างเพื่ออธิบายวิธีการทำงานกัน สมมติว่าเรากำลังเปิดร้านกาแฟ และเราต้องการเสนอส่วนลด 10% ให้กับลูกค้าที่ซื้อกาแฟมากกว่าห้าแก้วในสัปดาห์ที่แล้ว เราสามารถใช้รหัสต่อไปนี้เพื่อตรวจสอบว่าลูกค้ามีสิทธิ์รับข้อเสนอหรือไม่:
public class CheckDiscount { public static void main(String[] args) { int coffees_ordered_in_last_week = 4; int discount = 0; if (coffees_ordered_in_last_week > 5) { discount = 10; } System.out.println("This customer is eligible for a " + discount + "% discount."); } }
เมื่อเรารันโค้ดของเรา การตอบสนองต่อไปนี้จะถูกส่งกลับ:
ลูกค้ารายนี้มีสิทธิ์ได้รับส่วนลด 0%
มาทำลายรหัสของเรากัน ขั้นแรก เราประกาศคลาสที่เรียกว่า CheckDiscount ซึ่งโค้ดของเราสำหรับโปรแกรมนี้ถูกปิดไว้
ต่อไป เราประกาศตัวแปรชื่อ coffees_ordered_in_last_week
ที่ติดตามจำนวนกาแฟที่ลูกค้าของเราสั่งในสัปดาห์ที่ผ่านมา จากนั้นเราจะเริ่มต้นตัวแปรที่เรียกว่า "ส่วนลด" ซึ่งติดตามส่วนลดที่ลูกค้าของเรามีสิทธิ์
ในบรรทัดถัดไป เราใช้ if
คำสั่งที่ตรวจสอบว่า coffees_ordered_in_last_week
มากกว่า 5 หากเป็นลูกค้าจะมีสิทธิ์ได้รับส่วนลด 10% ถ้าไม่ใช่ โปรแกรมจะข้ามโค้ดในส่วนif
คำแถลง.
ในกรณีนี้ ลูกค้าของเราได้สั่งกาแฟเพียงสี่แก้วในสัปดาห์ที่แล้ว ดังนั้นโปรแกรมของเราจึงไม่เรียกใช้ discount = 10
บรรทัดของรหัส ในตอนท้ายของโปรแกรม เราพิมพ์ข้อความไปยังคอนโซลโดยระบุว่า This customer is eligible for a [X]% discount.
โดยที่ X เท่ากับส่วนลดที่กำหนดโดยโปรแกรม
ถ้าเป็นอย่างอื่น Java
เมื่อเราใช้ if
คำสั่ง เราจะรันโค้ดเมื่อเงื่อนไขเป็นจริงเท่านั้น อย่างไรก็ตาม บ่อยครั้งเราต้องการให้บล็อกโค้ดอื่นทำงานหากเงื่อนไขเป็นเท็จ
else
คำสั่งเขียนหลัง if
และไม่มีเงื่อนไข else
คำสั่งเป็นทางเลือกและจะดำเนินการก็ต่อเมื่อเงื่อนไขใน if
คำสั่งประเมินเป็นเท็จ
นี่คือไวยากรณ์สำหรับ Java if...else
คำแถลง:
if (condition_is_met) { // Execute code } else { // Execute other code }
ลองใช้ตัวอย่างของเราจากด้านบนเพื่อแสดงวิธีการทำงาน สมมติว่าเรากำลังจัดโปรโมชันซึ่งลูกค้าทุกคนมีสิทธิ์ได้รับส่วนลด 5% ในวันเสาร์ วันนี้เป็นวันเสาร์ ดังนั้นเราจึงต้องการมอบส่วนลด 5% ให้กับลูกค้าแต่ละราย ส่วนลดนี้มีให้เฉพาะผู้ที่ไม่ได้สั่งกาแฟมากกว่า 5 แก้วในสัปดาห์ที่แล้ว เนื่องจากผู้ที่สั่งกาแฟมากกว่า 5 แก้วมีสิทธิ์ได้รับส่วนลด 10%
เราสามารถใช้โปรแกรมต่อไปนี้เพื่อมอบส่วนลด 10% ให้กับลูกค้าแต่ละรายที่สั่งกาแฟมากกว่าห้าแก้วในสัปดาห์ที่แล้ว และมอบส่วนลด 5% ให้กับลูกค้าคนอื่นๆ ทุกราย:
class CheckDiscount { public static void main(String[] args) { int coffees_ordered_in_last_week = 4; int discount = 0; if (coffees_ordered_in_last_week > 5) { discount = 10; } else { discount = 5; } System.out.println("This customer is eligible for a " + discount + "% discount."); } }
รหัสของเราส่งคืน:
This customer is eligible for a 5% discount.
รหัสของเราทำงานในลักษณะเดียวกับตัวอย่างแรกของเรา อย่างไรก็ตาม ในครั้งนี้ เราได้ระบุ else
คำสั่งในโค้ดของเรา ซึ่งจะรันหากคำสั่ง coffees_ordered_in_last_week > 5
ประเมินเป็นเท็จ ในกรณีนี้ ลูกค้าของเราไม่ได้สั่งกาแฟห้าแก้ว ดังนั้นคำสั่งนั้นจึงถูกประเมินว่าเป็นเท็จ
เป็นผลให้โปรแกรมของเรารันเนื้อหาของ else
บล็อกซึ่งกำหนดค่าของ discount
ตัวแปรเป็นห้า ดังนั้น เมื่อโปรแกรมของเราแจ้งส่วนลดที่ลูกค้ามีสิทธิ์ได้รับ 5% จะถูกระบุเป็นส่วนลด
ถ้าเป็นอย่างอื่น ถ้า Java
คุณอาจกำลังเขียนโปรแกรมที่คุณต้องการประเมินหลายคำสั่งและรันโค้ดขึ้นอยู่กับว่าคำสั่งใด (ถ้ามี) ที่ประเมินว่าเป็นจริง นั่นคือที่ที่ if...else...if
คำสั่งเข้ามา if...else...if
คำสั่งตรวจสอบหนึ่งคำสั่งจากนั้นประเมินมันสำหรับคำสั่งที่ตามมา
นี่คือไวยากรณ์สำหรับ Java if...else...if
คำแถลง:
if (condition1_is_met) { // Run condition 1 code } else if (condition2_is_met) { // Run condition 2 code } else { // Run other code }
if
คำสั่งจะดำเนินการจากบนลงล่าง เมื่อนิพจน์ประเมินเป็นจริง โค้ดภายในบล็อกที่เกี่ยวข้องจะทำงาน หากไม่มีนิพจน์ใดที่ประเมินว่าเป็นจริง โค้ดภายใน else
คำสั่งจะทำงาน
สมมติว่าเราต้องการเสนอส่วนลด 15% ให้กับทุกคนที่สั่งกาแฟมากกว่าสิบแก้วในสัปดาห์ที่แล้ว ลูกค้าเหล่านี้มักจะเป็นคนที่สั่งซื้อให้เพื่อนหรือที่ทำงานของพวกเขา ดังนั้นเราจึงต้องการรักษาพวกเขาไว้ให้มากที่สุด
เราสามารถใช้รหัสต่อไปนี้เพื่อเสนอส่วนลดนี้ นอกเหนือจากส่วนลด 5% ในวันเสาร์และส่วนลด 10% สำหรับผู้ที่สั่งกาแฟมากกว่าห้าแก้วในสัปดาห์ที่แล้ว:
class CheckDiscount { public static void main(String[] args) { int coffees_ordered_in_last_week = 4; int discount = 0; if (coffees_ordered_in_last_week > 5) { discount = 10; } else if (coffees_ordered_in_last_weel > 10) { discount = 15; } else { discount = 5; } System.out.println("This customer is eligible for a " + discount + "% discount."); } }
เมื่อเรารันโค้ดของเรา สิ่งต่อไปนี้จะถูกส่งกลับ:
This customer is eligible for a 5% discount.
ลูกค้าของเราได้สั่งกาแฟเพียงสี่ชนิดในสัปดาห์ที่แล้ว ดังนั้นเนื้อหาของelse
ของเรา คำสั่งจะถูกดำเนินการ แต่ถ้าลูกค้าสั่งกาแฟเกิน 5 แก้ว มูลค่าของ discount
ตัวแปรจะถูกตั้งค่าเป็น 10; หากลูกค้าสั่งกาแฟเกิน 10 แก้ว มูลค่า discount
ตัวแปรจะถูกตั้งค่าเป็นสิบห้า
บทสรุป
if
คำสั่งใช้ใน Java เพื่อเรียกใช้บล็อกของรหัสหากเงื่อนไขบางอย่างประเมินเป็นจริง if...else
คำสั่งใช้กับ if
คำสั่งเรียกใช้โค้ดหากเงื่อนไขประเมินเป็นเท็จ นอกจากนี้ if...else...if
คำสั่งใช้เพื่อประเมินหลายเงื่อนไข
บทช่วยสอนนี้กล่าวถึงวิธีการควบคุมโฟลว์ของโปรแกรม Java ของคุณโดยใช้ if
. โดยอ้างอิงจากตัวอย่าง , if...else
และ if...else...if
งบ. ตอนนี้คุณพร้อมที่จะเริ่มใช้คำสั่งเงื่อนไข Java เหล่านี้อย่างผู้เชี่ยวชาญแล้ว!