ภายในบล็อกของคลาสหรือบล็อกของเมธอดจะประกอบด้วยบรรทัดของประโยคคำสั่ง (Statement) โดยประโยคคำสั่งแบ่งออกเป็น 4  ชนิดคือ Declaration Statement คือประโยคคำสั่งในการประกาศตัวแปร Expression Statement คือประโยคคำสั่งที่มีการดำเนินการ เช่น มีการดำเนินการทางคณิตศาสตร์ เปลี่ยนค่าของตัวแปร เรียกใช้งานเมธอด สร้างออบเจกต์ เป็นต้น Control Flow Statement คือประโยคคำสั่งแบบมีเงื่อนไข เช่น บล๊อคของคำสั่ง if  และ Iteration Statement เรียกว่าประโยคคำสั่งวนซ้ำ คือการกำหนดให้โปรแกรมทำงานซ้ำๆตามเงื่อนไขที่กำหนด

     ประโยคคำสั่งแต่ละประโยคจะต้องปิดท้ายด้วยอักขระ  ;   เพื่อบอกว่าจบประโยคคำสั่งแล้ว ตัวอย่างของประโยคคำสั่งแต่ละชนิดตามรูปด้านล่าง

ประโยคคำสั่งในการประกาศตัวแปร (Declaration Statement)

     เป็นประโยคคำสั่งที่ใช้ในการประกาศตัวแปร ตัวอย่างเช่น

     โดยมีรูปแบบของประโยคคำสั่งคือ 

ตัวแปร = ข้อมูลหรือนิพจน์

     จากตัวอย่างด้านบน int double และ String คือ ชนิดข้อมูล ส่วน  secondValue doubleValue และ name คือตัวแปร สำหรับเลข 15 12.24 และข้อความ Sombat คือข้อมูล ในกรณีที่เป็นการสร้างออบเจกต์จากคลาส เราจะต้องประกาศตัวแปรเพื่อเก็บออบเจกต์ที่ถูกสร้างขึ้นมาเช่นเดียวกับที่เราประกาศตัวแปรเพื่อเก็บข้อมูล

     รูปแบบของการประกาศตัวแปรเพื่อเก็บออบเจกต์จะเป็นแบบเดียวกันกับการประกาศตัวแปรเพื่อเก็บข้อมูลโดยมองว่าออบเจกต์เป็นชนิดข้อมูลแบบหนึ่ง ตัวอย่างเช่น

     ซึ่ง Car ก็คือคลาส Car ที่เรามองว่าเป็นชนิดข้อมูล myCar คือตัวแปร และ new Car() คือคำสั่งในการสร้างออบเจกต์ โดย new เป็นคีย์เวิร์ดในภาษาจาวาและ Car() คือเมธอดคอนสตรัคเตอร์ของคลาส Car

ประโยคคำสั่งในการดำเนินการ (Expression Statement)

     เป็นประโยคคำสั่งที่ประกอบด้วยนิพจน์ เช่น มีการดำเนินการทางคณิตศาสตร์ มีการดำเนินการทางตรรกศาสตร์  มีการเปลี่ยนค่าของตัวแปร มีการเรียกใช้งานเมธอด เป็นต้น ประโยคคำสั่งดำเนินการจะถูกใช้ปะปนไปกับประโยคคำสั่งแบบอื่นด้วย ตัวอย่างเช่น 

ประโยคคำสั่งเพื่อเปลี่ยนทิศทางการดำเนินการ (Control Flow Statement)

     เป็นประโยคคำสั่งแบบมีเงื่อนไขซึ่งประกอบด้วยคีย์เวิร์ดที่เป็นคำสั่งแบบมีเงื่อนไขและนิพจน์ที่ให้ผลลัพธ์ทางตรรกศาตร์ ตัวอย่างเช่น

คำสั่ง If

     If เป็นคำสั่งที่ใช้ในการสร้างประโยคคำสั่งแบบมีเงื่อนไข โดยหากผลลัพธ์ของเงื่อนไขเป็นจริง (true) จึงจะทำตามประโยคคำสั่งที่อยู่ภายใต้บล็อกของ if การกำหนดเงื่อนไขสามารถทำได้โดยใช้ตัวดำเนินการดังที่กล่าวมาเพื่อสร้างเงื่อนไขที่ต้องการ รูปแบบการใช้คำสั่ง if ดังนี้

If (เงื่อนไขที่ต้องการตรวจสอบ) {

ประโยคคำสั่ง;

ประโยคคำสั่ง;

ประโยคคำสั่ง;

}

    สิ่งที่ต้องระวังคือในการกำหนดเงื่อนไขคือผลลัพธ์ต้องเป็นจริงตามความต้องการของเรา จากตัวอย่างด้านล่างเรากำหนดค่าเท็จ (false) ให้กับตัวแปรและกำหนดให้เงื่อนไขตรวจสอบว่าตัวแปรต้องเป็นเท็จจึงจะเป็นจริงตามที่เราต้องการ

     ตัวอย่างด้านล่างเป็นการใช้ตัวดำเนินการหลายแบบผสมกันเพื่อตัดเกรดของนักเรียน สังเกตุว่าเราจะใส่วงเล็บกับทุกๆคู่ของการดำเนินการตามลำดับเพื่อให้แน่ใจว่าลำดับการคำนวนจะเป็นไปตามที่ต้องการและเพื่อให้คนที่มาอ่านโปรแกรมในภายหลังหลังเข้าใจง่ายขึ้น

คำสั่ง if – else

          If – else เป็นคำสั่งที่ใช้ในการสร้างประโยคคำสั่งแบบมีเงื่อนไข โดยหากเงื่อนไขเป็นจริงจึงจะทำตามประโยคคำสั่งที่อยู่ภายใต้บล็อกของ if แต่ถ้าเงื่อนไขเป็นเท็จจะทำตามประโยคคำสั่งที่อยู่ภายใต้บล็อกของ else การกำหนดเงื่อนไขสามารถทำได้โดยใช้ตัวดำเนินการดังที่กล่าวมาเพื่อสร้างเงื่อนไขที่ต้องการ รูปแบบการใช้คำสั่ง if – elseดังนี้

If (เงื่อนไขที่ต้องการตรวจสอบ) {

ประโยคคำสั่ง;

ประโยคคำสั่ง;

ประโยคคำสั่ง;

} else {

ประโยคคำสั่ง;

ประโยคคำสั่ง;

ประโยคคำสั่ง;

}

     เราสามารถซ้อนเงื่อนไข if – else หลายๆชั้นได้ตามตัวอย่าง

If (เงื่อนไขที่ต้องการตรวจสอบ) {

            ประโยคคำสั่ง;

            ประโยคคำสั่ง;

} else  If (เงื่อนไขที่ต้องการตรวจสอบ) { 

ประโยคคำสั่ง;

ประโยคคำสั่ง;

} else  If (เงื่อนไขที่ต้องการตรวจสอบ) { 

ประโยคคำสั่ง;

ประโยคคำสั่ง;

} else {

ประโยคคำสั่ง;

ประโยคคำสั่ง;

}

Ternary Operator

     Ternary Operator เป็นรูปแบบย่อๆของ  if – else โดยมีโครงสร้างดังนี้

(เงื่อนไข)? ค่าที่จะกำหนดให้เมื่อเป็นจริง : ค่าที่จะกำหนดให้เมื่อเป็นเท็จ ;

     เรามักจะใช้รูปแบบ ternary operator ในการกำหนดค่าหลังจากตรวจสอบเงื่อนไขให้กับตัวแปร ตัวอย่างเช่น 

switch

     switch เป็นคำสั่งที่ใช้ในการสร้างประโยคคำสั่งแบบมีเงื่อนไขอีกรูปแบบหนึ่ง โดยเป็นคำสั่งที่ใช้ในการตรวจสอบข้อมูลของตัวแปรและเลือกชุดของประโยคคำสั่งที่เหมาะสมขึ้นมาทำงาน รูปแบบการใช้คำสั่ง switch มีดังนี้

switch (ตัวแปร) {

case ค่าที่ตรงกับตัวแปร:

ประโยคคำสั่ง;

ประโยคคำสั่ง;

break;

case ค่าที่ตรงกับตัวแปร:

ประโยคคำสั่ง;

ประโยคคำสั่ง;

break;

case ค่าที่ตรงกับตัวแปร:

ประโยคคำสั่ง;

ประโยคคำสั่ง;

break;

default:

ประโยคคำสั่ง;

ประโยคคำสั่ง;

break;

}

     โดยตัวแปรที่จะนำมาตรวจสอบต้องกำหนดข้อมูลให้กับตัวแปรมาก่อน และหากค่าของตัวแปรตรงกับ case ใดก็ให้ดำเนินการด้วยชุดของประโยคคำสั่งภายใต้ case นั้น ในกรณีที่ไม่ตรงกับ case ใดๆ ชุดของประโยคคำสั่งภายใต้ default จะถูกดำเนินการ สังเกตุว่าคำสั่ง switch จะไม่ได้มีการตรวจสอบเงื่อนไขใดๆ แต่จะดูจากค่าของข้อมูลเลย หากข้อมูลตรงกับ case ใดก็ไปทำ case นั้น

     ภายใต้คำสั่ง swtich จะต้องสร้างบล็อกเช่นเดียวกัน ท้ายบรรทัดของคำสั่ง case จะต้องปิดท้ายด้วยอักขระ :  และทุก case รวมถึง default จะต้องปิดด้วยคำสั่ง break;  เราสามารถกำหนดให้หลายๆ case ใช้ชุดประโยคคำสั่งเดียวกันได้โดยเขียน case x: case y: case z: ต่อๆกันไปในบรรทัดเดียวกัน ตัวอย่างเช่น

ประโยคคำสั่งวนซ้ำ (Iteration Statement)

     เป็นประโยคคำสั่งซึ่งประกอบด้วยคีย์เวิร์ดที่เป็นคำสั่งเพื่อวนซ้ำและนิพจน์ที่ให้ผลลัพธ์ทางตรรกศาตร์เพื่อตรวจสอบว่าจะเลิกดำเนินการวนซ้ำเมื่อใด การทำคำสั่งวนซ้ำมักจะเรียกว่าลูป (loop) 

คำสั่ง for

     คำสั่ง for เป็นคำสั่งวนซ้ำที่ใช้นิพจน์ทางคณิตศาสตร์และตรรกศาสตร์ในการกำหนดจำนวนครั้งที่ต้องการวนซ้ำ โดยรูปแบบของคำสั่งมีดังนี้

for (กำหนดค่าเริ่มต้น; เงื่อนไขในการตรวจสอบ; เงื่อนไขการเปลี่ยนแปลงค่า) {

ประโยคคำสั่ง;

ประโยคคำสั่ง;

ประโยคคำสั่ง;

}

     การกำหนดค่าเริ่มต้นเป็นการประกาศตัวแปรพร้อมกับกำหนดค่าที่เป็นตัวเลขตั้งต้นให้กับตัวแปร เงื่อนไขในการตรวจสอบเป็นการเปรียบเทียบเพื่อหาผลลัพธ์ทางตรรกศาสตร์ว่าค่าในตัวแปรเป็นจริงหรือเป็นเท็จโดยหากเงื่อนไขยังเป็นจริงจะทำการวนซ้ำต่อ เงื่อนไขในการเปลี่ยนแปลงค่าเป็นการดำเนินการกับตัวแปรเพื่อให้เปลี่ยนค่าด้วยวิธีการทางคณิตศาสตร์ 

     การดำเนินการของคำสั่งจะเริ่มจากตรวจสอบค่าตัวแปรซึ่งหากเงื่อนไขยังเป็นจริงก็จะเปลี่ยนแปลงค่าตัวแปรตามวิธีการที่กำหนดและดำเนินการประโยคคำสั่งภายในบล็อก ดังนั้นหากตรวจสอบพบว่าเงื่อนไขเป็นเท็จตั้งแต่ครั้งแรกจะไม่มีดำเนินการประโยคคำสั่งในบล็อกเลยแม้เพียงครั้งเดียว

     ตัวอย่างด้านล่างเป็นการใช้คำสั่ง for เพื่อพิมพ์ค่าตัวแปรโดยกำหนดค่าเริ่มต้นของตัวแปรเป็น 0 เงื่อนไขในการวนซ้ำคือตัวแปรต้องไม่เกิน 10 และปรับปรุงข้อมูลตัวแปรโดยการบวกเพิ่มทีละ 1

     ตัวแปรที่เรากำหนดในคำสั่ง for มักจะใช้ตัวอักษร i หรือ j หรือ k ซึ่งเมื่อคำสั่งวนซ้ำยุติการทำงานแล้วตัวแปรเหล่านี้ก็จะถูกเลิกใช้งาน การกำหนดเงื่อนไขและการเปลี่ยนแปลงค่าต้องดูให้ดีว่าไม่ทำให้เกิดการทำงานแบบไม่รู้จบ โดยมากเรามักจะพบการใช้คำสั่ง for เพื่อการนับจำนวนครั้งในการวนซ้ำ เช่น for (i=1; i < 10; 1++)  เราสามารถนับถอยหลังก็ได้ เช่น for (i=10; i > 0; 1–) และเราสามารถใช้คำสั่ง if เพื่อตรวจสอบเงื่อนไขและใช้คำสั่ง break; เพื่อยกเลิกการทำงานของคำสั่ง for ก่อนที่จะทำงานครบตามเงื่อนไขได้ ตามตัวอย่างด้านล่างโปรแกรมจะพิมพ์แค่เลข 4 แล้วหยุดโดยไม่ต้องรอถึงเลข 9 

คำสั่ง for-each

    ในจาวาเวอร์ชั่น 5 ได้เพิ่มรูปแบบพิเศษของคำสั่ง for ขึ้นมาเพื่อใช้ในการวนรอบเพื่ออ่านชุดข้อมูลในอาเรย์ String หรือ Collection โดยไม่ต้องใช้ดัชนีอ้างอิงเรียกว่า for – each โดยมีรูปแบบการใช้งานคือ 

for (ชนิดข้อมูล ตัวแปรที่ใช้รับข้อมูลที่ : ชุดข้อมูล ) {

ประโยคคำสั่ง;

ประโยคคำสั่ง;

ประโยคคำสั่ง;

}

     ตัวอย่างเช่น

คำสั่ง while

     คำสั่ง while เป็นคำสั่งวนซ้ำที่ใช้นิพจน์ทางตรรกศาสตร์เพื่อตรวจสอบว่าจะดำเนินการวนซ้ำหรือไม่ โดยหากเงื่อนไขเป็นจริงจึงจะดำเนินการชุดประโยคคำสั่งภายใต้บล็อก โดยรูปแบบของคำสั่งมีดังนี้

while (นิพจน์ตรรกศาสตร์){

ประโยคคำสั่ง;

ประโยคคำสั่ง;

ประโยคคำสั่ง;

}

     เราสามารถใช้คำสั่ง break; เพื่อออกจากการวนซ้ำก่อนที่จะจบตามเงื่อนไขได้เช่นเดียวกับคำสั่ง for ตัวอย่างด้านล่างเป็นการเขียนโปรแกรมให้ทำงานแบบเดียวกับตัวอย่างในคำสั่ง for

      สังเกตุว่าการประกาศตัวแปรไม่ได้เป็นส่วนหนึ่งของคำสั่ง while ดังนั้นหากเงื่อนไขไม่เป็นจริงตั้งแต่แรก ชุดของประโยคคำสั่งภายในบล็อกของ while จะไม่ถูกดำเนินการเลย

คำสั่ง do-while

     คำสั่ง do-while เป็นคำสั่งวนซ้ำที่ใช้นิพจน์ทางตรรกศาสตร์เพื่อตรวจสอบว่าจะดำเนินการวนซ้ำหรือไม่ สังเกตุว่าคำสั่ง do-while จะมีการดำเนินการชุดประโยคคำสั่งอย่างน้อย 1 ครั้งเพราะการตรวจสอบเงื่อนไขอยู่ที่ด้านท้ายของบล็อก โดยรูปแบบของคำสั่งมีดังนี้

do {

ประโยคคำสั่ง;

ประโยคคำสั่ง;

ประโยคคำสั่ง;

} while (นิพจน์ตรรกศาสตร์);

          เราสามารถใช้คำสั่ง break; เพื่อออกจากการวนซ้ำก่อนที่จะจบตามเงื่อนไขได้เช่นเดียวกับคำสั่ง for ตัวอย่างด้านล่างเป็นการเขียนโปรแกรมให้เงื่อนไขเป็นเท็จตั้งแต่แรกเพื่อแสดงให้เห็นว่ามีการดำเนินการชุดประโยคคำสั่งอย่างน้อย 1 ครั้ง