Java if, if-else, if-else-if

Java If If Else If Else If



การใช้คำสั่งควบคุมโฟลว์เป็นข้อกำหนดทั่วไปสำหรับการแก้ปัญหาการเขียนโปรแกรมใดๆ ส่วนใหญ่จะใช้เพื่อสร้างเอาต์พุตเฉพาะตามเงื่อนไขเฉพาะ คำสั่งนี้ทำการตัดสินใจตามค่าบูลีนที่ส่งคืนโดยคำสั่ง การประกาศคำสั่ง if-else-if ค่อนข้างคล้ายกับภาษาการเขียนโปรแกรมอื่นๆ เช่น C, C++ เป็นต้น การใช้คำสั่ง 'if' ที่แตกต่างกันใน Java ได้อธิบายไว้ในบทช่วยสอนนี้

คำสั่ง 'if' ประเภทต่างๆ:

คำสั่ง 'if' อย่างง่าย:

ไวยากรณ์:







ถ้า (นิพจน์เงื่อนไข) {
คำแถลง1…NS
}

จะตรวจสอบนิพจน์เงื่อนไข และหากนิพจน์กลับเป็นจริง คำสั่งใดคำสั่งหนึ่งจะถูกดำเนินการ มิฉะนั้น จะไม่มีการดำเนินการใดๆ



คำสั่ง 'if-else':

ไวยากรณ์:



ถ้า (นิพจน์เงื่อนไข) {
คำแถลง1...NS
}
อื่น{
คำแถลง1...NS
}

หากนิพจน์เงื่อนไขคืนค่า จริง คำสั่งใดคำสั่งหนึ่งจะดำเนินการ มิฉะนั้น คำสั่งอื่นจะดำเนินการ





คำสั่ง 'if-else-if':

ไวยากรณ์:

ถ้า (นิพจน์เงื่อนไข1) {
คำแถลง1...NS
}
อื่น ถ้า(นิพจน์เงื่อนไข2) {
คำแถลง1...NS
}
.
.
อื่น ถ้า(นิพจน์เงื่อนไข n) {
คำแถลง1...NS
}
อื่น
คำแถลง1...NS

คำสั่ง 'if' ด้านบนนี้เรียกอีกอย่างว่าบันได 'if-else-if' โดยจะตรวจสอบนิพจน์เงื่อนไขแรก และหากคืนค่าเป็นเท็จ ก็จะตรวจสอบนิพจน์เงื่อนไขที่สองเป็นต้น หากนิพจน์เงื่อนไขทั้งหมดคืนค่าเท็จ นิพจน์นั้นจะดำเนินการคำสั่งของส่วนอื่น



ซ้อนคำสั่ง 'ถ้า':

ไวยากรณ์:

ถ้า (นิพจน์เงื่อนไข1) {
คำแถลง1...NS
ถ้า (นิพจน์เงื่อนไข1) {
คำแถลง1...NS
}
อื่น
คำแถลง1...NS
}

เมื่อมีการประกาศคำสั่ง 'if' ใด ๆ ภายในคำสั่ง if อื่น คำสั่งนั้นจะถูกเรียกว่า 'if' ที่ซ้อนกัน หากเงื่อนไข 'if' ภายนอกคืนค่าเป็น true มันจะตรวจสอบเงื่อนไข 'if' ภายในและทำการตัดสินใจตามมูลค่าที่ส่งคืน

ตัวอย่างที่ 1: การใช้คำสั่ง 'if' อย่างง่าย

รหัสต่อไปนี้แสดงการใช้คำสั่ง 'if' อย่างง่าย เงื่อนไข 'if' แรกตรวจสอบค่าของตัวเลขว่ามากกว่า 50 หรือไม่ เงื่อนไข 'if' ที่สองตรวจสอบความยาวของสตริงที่น้อยกว่า 6 หรือไม่

สาธารณะ ระดับif1{

สาธารณะ คงที่ โมฆะหลัก( สตริง []args) {
//ประกาศค่าตัวเลข
intตัวเลข= ห้าสิบ;

//เช็คค่าว่ามากกว่า 50 หรือเปล่า
ถ้า(ตัวเลข> ห้าสิบ)
{
ระบบ .ออก.พิมพ์('จำนวนน้อยกว่าหรือเท่ากับ 50');
}

//ประกาศค่าสตริง
สตริง รหัสผ่าน= '1234';

//ตรวจสอบความยาวของสตริงว่าน้อยกว่า 6 หรือไม่
ถ้า(รหัสผ่าน.ระยะเวลา() < 6)
{
ระบบ .ออก.พิมพ์('รหัสผ่านต้องไม่น้อยกว่า 6 ตัวอักษร');
}
}

}

เอาท์พุท:

ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันโค้ด ที่นี่ เงื่อนไข 'if' แรกส่งคืนเป็นเท็จ และไม่มีข้อความใดถูกพิมพ์ เงื่อนไข 'if' ที่สองเป็นจริง และข้อความจะถูกพิมพ์

ตัวอย่างที่ 2: การใช้คำสั่ง 'if-else'

รหัสต่อไปนี้แสดงการใช้คำสั่ง 'if-else' ในโค้ดนี้ ผู้ใช้จะดึงค่าจำนวนเต็ม หากค่าอินพุตอยู่ระหว่าง 13 ถึง 17 เงื่อนไข 'if' จะคืนค่าเป็น true ข้อความเฉพาะจะถูกพิมพ์ออกมา มิฉะนั้นจะพิมพ์ข้อความอื่น

//นำเข้าแพ็คเกจสแกนเนอร์
นำเข้า java.util.Scanner;
สาธารณะ ระดับif2{

สาธารณะ คงที่ โมฆะหลัก( สตริง []args) {

// สร้างวัตถุสแกนเนอร์
อินพุตสแกนเนอร์= ใหม่สแกนเนอร์( ระบบ .ใน);

ระบบ .ออก.พิมพ์('พิมพ์อายุของคุณ : ');

// ดึงข้อมูลตัวเลขจากผู้ใช้
intอายุ=ป้อนข้อมูล.nextInt();

// ตรวจสอบว่าค่าอินพุตอยู่ในช่วง 13-17 หรือไม่
ถ้า(อายุ> = 13 &&อายุ<18)
{
ระบบ .ออก.พิมพ์('คุณเป็นวัยรุ่น');
}
อื่น
{
ระบบ .ออก.พิมพ์('คุณไม่ใช่วัยรุ่น');
}

//ปิดวัตถุสแกนเนอร์
ป้อนข้อมูล.ปิด()

}
}

เอาท์พุท:

ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันโค้ด ที่นี่ 15 ถูกนำมาเป็นอินพุต และเอาต์พุตต่อไปนี้จะถูกพิมพ์เพราะหากเงื่อนไขส่งคืนเป็นจริง

ตัวอย่างที่ 3: การใช้คำสั่ง 'if-else-if'

การใช้คำสั่ง 'if-else-if' แสดงในตัวอย่างต่อไปนี้ ที่นี่ ค่าสตริงจะถูกนำมาเป็นอินพุตจากผู้ใช้ เงื่อนไข 'if' แรกจะตรวจสอบค่าอินพุต และหากคืนค่าเป็นเท็จ ค่าจะตรวจสอบตามเงื่อนไข 'if' ถัดไป เป็นต้น ข้อความของส่วน else จะพิมพ์ออกมาหากเงื่อนไข 'if' ทั้งหมดกลับเป็นเท็จ

//นำเข้าแพ็คเกจสแกนเนอร์
นำเข้า java.util.Scanner;
สาธารณะ ระดับif3{

สาธารณะ คงที่ โมฆะหลัก( สตริง []args) {

// สร้างวัตถุสแกนเนอร์
เครื่องสแกนใน= ใหม่สแกนเนอร์( ระบบ .ใน);
ระบบ .ออก.พิมพ์('ใส่ชื่อของคุณ : ');

// รับข้อมูลสตริงจากผู้ใช้
สตริง ชื่อ=ใน.ต่อไป();

// ตรวจสอบค่าอินพุตเท่ากับ 'Jolly' หรือไม่
ถ้า(ชื่อ.เท่ากับ('จอลลี่'))
{
ระบบ .ออก.พิมพ์('คุณได้รับราคาแรก');
}
// ตรวจสอบค่าอินพุตเท่ากับ 'Janifer' หรือไม่
อื่น ถ้า(ชื่อ.เท่ากับ('เจนิเฟอร์'))
{
ระบบ .ออก.พิมพ์('คุณได้รับราคาที่สอง');
}
// ตรวจสอบค่าอินพุตเท่ากับ 'Jony' หรือไม่
อื่น ถ้า(ชื่อ.เท่ากับ('ไอออน'))
{
ระบบ .ออก.พิมพ์('คุณได้รับราคาที่สาม');
}
อื่น
{
ระบบ .ออก.พิมพ์('ลองครั้งหน้า');
}
//ปิดวัตถุสแกนเนอร์
ใน.ปิด();

}

}

เอาท์พุท:

ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันโค้ด ที่นี่, ' Janifer ’ ถูกนำมาเป็นอินพุตจากผู้ใช้

ตัวอย่างที่ 4: การใช้คำสั่ง 'if' ที่ซ้อนกัน

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

//นำเข้าแพ็คเกจสแกนเนอร์
นำเข้า java.util.Scanner;
สาธารณะ ระดับif4{

สาธารณะ คงที่ โมฆะหลัก( สตริง []args) {

// สร้างวัตถุสแกนเนอร์
เครื่องสแกนใน= ใหม่สแกนเนอร์( ระบบ .ใน);

ระบบ .ออก.พิมพ์('ระบุเพศของคุณ : ');
// รับข้อมูลสตริงจากผู้ใช้
สตริง เพศ=ใน.ต่อไป();

ระบบ .ออก.พิมพ์('ระบุอายุของคุณ : ');
// ดึงข้อมูลตัวเลขจากผู้ใช้
intอายุ=ใน.nextInt();

// ตรวจดูว่าเพศเท่ากับ 'ชาย' หรือเปล่า
ถ้า(เพศ.เท่ากับ('ชาย'))
{
// ตรวจสอบอายุมากกว่า 30 หรือไม่
ถ้า(อายุ> 30)
{
ระบบ .ออก.พิมพ์('คุณอยู่ในกลุ่มที่ 1');
}
อื่น
{
ระบบ .ออก.พิมพ์('คุณอยู่ในกลุ่ม 2');
}
}
อื่น
{
ระบบ .ออก.พิมพ์('คุณอยู่ในกลุ่ม 3');
}
//ปิดวัตถุสแกนเนอร์
ใน.ปิด();
}
}

เอาท์พุท:

ผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากรันโค้ด ที่นี่, 'ชาย' ถูกนำมาเป็น เพศ , และ 25 ถูกนำมาเป็น อายุ ค่า

บทสรุป:

การใช้งานสี่อย่างที่แตกต่างกันของคำสั่ง 'if' ได้อธิบายไว้ในบทช่วยสอนนี้โดยใช้ตัวอย่างง่ายๆ บทช่วยสอนนี้จะช่วยให้โปรแกรมเมอร์ใหม่เรียนรู้แนวคิดของคำสั่งเงื่อนไขใน Java จากพื้นฐาน