หากคำสั่งใช้การแสดงออกของบูลีนหรือค่าบูลีนเป็นเงื่อนไขสาขาเพื่อดำเนินการควบคุมสาขาโดยที่คำสั่งมีสามรูปแบบดังต่อไปนี้:
แบบฟอร์มแรก:
ถ้า (นิพจน์ตรรกะ) {คำสั่ง…}รูปแบบที่สอง:
if (นิพจน์ตรรกะ) {คำสั่ง…} else {คำสั่ง…}รูปแบบที่สาม:
ถ้า (นิพจน์ตรรกะ) {คำสั่ง…} อื่นถ้า (นิพจน์ตรรกะ) {คำสั่ง…} … // อาจมีศูนย์หรือมากกว่านั้นถ้าคำสั่งอื่น // คำสั่งสุดท้ายสามารถละเว้นได้ {คำสั่ง}ในสามรูปแบบของภาษา IF ด้านบนวงเล็บที่วางไว้หลังจากนั้นสามารถเป็นนิพจน์ตรรกะนั่นคือค่าคืนของนิพจน์นี้สามารถเป็นจริงหรือเท็จ หากบล็อกไม่ปรากฏในรูปแบบที่สามมันจะกลายเป็นรูปแบบที่สอง
ในคำสั่งด้านข้างต้นถ้า (นิพจน์ลอจิก) อื่น ๆ ถ้า (นิพจน์ลอจิก) และอื่น ๆ จะถูกปิดล้อมด้วยการจัดฟันแบบหยิกรหัสหลายบรรทัดจะเรียกว่าบล็อกโค้ด กระบวนการ ตัวอย่างเช่นโปรแกรมต่อไปนี้:
รายการโปรแกรม: รหัส/04/4-2/testif.java
Public Class Public {โมฆะคงที่สาธารณะหลัก (String [] args) {int อายุ = 30; คำแถลงทั้งหมดดำเนินการร่วมกันหรือจะไม่ถูกดำเนินการร่วมกัน {system.out.println ("อายุมีอายุมากกว่า 20 ปีแล้ว"); ");}}}}ดังนั้นหากคำสั่งบล็อกหลังจากถ้า (นิพจน์ลอจิก) อื่น ๆ ถ้า (นิพจน์ตรรกะ) และมิฉะนั้นจะมีคำสั่งบรรทัดเดียวเท่านั้นที่สามารถใช้งานจัดฟันได้ วงเล็บปีกกาเพื่อกำหนดพวกเขาโดยรวม รหัสต่อไปนี้สามารถดำเนินการได้ตามปกติ (เช่นเดียวกับด้านบนสำหรับรายการโปรแกรม):
// กำหนดตัวแปร A และกำหนดค่า int a = 5; ถ้า (A> 4) // ถ้า A> 4 ดำเนินการร่างการดำเนินการต่อไปนี้มีการใช้รหัสหนึ่งบรรทัดเป็นรหัสบล็อก println ("A มากกว่า 4");โดยทั่วไปเราขอแนะนำไม่ให้ละเว้นการจัดฟันแบบหยิกของบล็อกการดำเนินการหลังจากนั้นถ้าอย่างอื่นถ้าแม้ว่าร่างกายการดำเนินการตามเงื่อนไขจะมีรหัสเดียวเพียงบรรทัดเดียว ความเป็นไปได้ของข้อผิดพลาด
// กำหนดตัวแปร B และกำหนดค่าให้กับมัน int b = 5; .println ("B มากกว่า 4"); ("B ไม่มากกว่า 4");บรรทัดของรหัสที่ระบุเป็น BOLD ในรหัสด้านบน: System.out.println ("B ไม่เกิน 4"); จะถูกดำเนินการเสมอเพราะรหัสบรรทัดนี้ไม่ได้อยู่ในหน่วยงานการดำเนินการตามเงื่อนไขหลังจากอื่น มิฉะนั้นร่างกายการดำเนินการตามเงื่อนไขคือ B--;
ถ้าอย่างอื่นถ้าหลังจากการดำเนินการตามเงื่อนไขเป็นทั้งบล็อกคำสั่งที่มีการจัดฟันแบบหยิกแล้วบล็อกคำสั่งทั้งหมดจะถูกใช้เป็นร่างกายการดำเนินการตามเงื่อนไข; แม้แต่คำสั่งที่ว่างเปล่า (คำสั่งที่ว่างเปล่าคือเครื่องหมายอัฒภาค)
หากมีหลายคำสั่งหลังจากบล็อก IF เป็นตัวดำเนินการตามเงื่อนไขหากการจัดฟันแบบหยิกของร่างกายการดำเนินการตามเงื่อนไขนี้ถูกละเว้นมันจะทำให้เกิดข้อผิดพลาดในการรวบรวม
// กำหนดตัวแปร C และกำหนดค่า int c = 5; -; มีข้อผิดพลาดในการรวบรวมอื่น ๆ // มิฉะนั้นดำเนินการร่างการดำเนินการต่อไปนี้มีการใช้รหัสเดียวเท่านั้นที่ใช้เป็นรหัสบล็อกรหัส OUT.println ("C ไม่มากกว่า 4");ในรหัสข้างต้นเนื่องจากการดำเนินการตามเงื่อนไขหลังจากที่ถูกละเว้นการจัดฟันระบบจะใช้เฉพาะ C-; System.out.println ("C มากกว่า 4"); .