คลาส Boolean ของแพ็คเกจ lang มี 2 วิธีคือ parseBoolean() และ valueOf()
-
parseBoolean(สตริง) − เมธอดนี้ยอมรับตัวแปร String และส่งคืนบูลีน หากค่าสตริงที่ระบุเป็น "จริง" (โดยไม่คำนึงถึงกรณี) เมธอดนี้คืนค่า จริง อย่างอื่น หากเป็นค่าว่างหรือ เท็จ หรือ ค่าอื่นจะส่งคืนค่าเท็จ
-
valueOf(สตริง) − เมธอดนี้ยอมรับค่าสตริง แยกวิเคราะห์ และส่งคืนอ็อบเจ็กต์ของคลาสบูลีนตามค่าที่กำหนด คุณสามารถใช้วิธีนี้แทนตัวสร้าง หากค่าสตริงที่ระบุเป็น "จริง" เมธอดนี้จะคืนค่าจริงหรือคืนค่าเป็นเท็จ
ตัวอย่าง
<ก่อนหน้า>นำเข้า java.util.Scanner; คลาสสาธารณะ VerifyBoolean { โมฆะคงที่สาธารณะหลัก (สตริง args []) { Scanner sc =สแกนเนอร์ใหม่ (System.in); System.out.println("ป้อนค่าสตริง:"); สตริง str =sc.next(); ผลลัพธ์บูลีน =Boolean.parseBoolean(str); System.out.println(ผลลัพธ์); ผลลัพธ์บูลีน2 =Boolean.valueOf(str); System.out.println(ผลลัพธ์2); }}ผลลัพธ์1
ป้อนค่าสตริง:truetruetrue
ผลลัพธ์2
ป้อนค่าสตริง:falsefalsefalse
แต่ไม่มีวิธีใดที่จะตรวจสอบว่าค่าของสตริงที่ระบุเป็น "จริง" หรือไม่ ไม่มีวิธีการตรวจสอบว่าค่าของสตริงเป็นประเภทบูลีนหรือไม่ คุณต้องตรวจสอบโดยตรงโดยใช้ if ลูปหรือนิพจน์ทั่วไป
ตัวอย่าง :การใช้ if loop
<ก่อนหน้า>นำเข้า java.util.Scanner; คลาสสาธารณะ VerifyBoolean { โมฆะคงที่สาธารณะหลัก (สตริง args []) { Scanner sc =สแกนเนอร์ใหม่ (System.in); System.out.println("ป้อนค่าสตริง:"); สตริง str =sc.next(); if(str.equalsIgnoreCase("true")||str.equalsIgnoreCase("false")){ System.out.println("สตริงที่กำหนดเป็นประเภทบูลีน"); } อื่น { System.out.println ("สตริงที่ระบุไม่ใช่ประเภทบูลีน"); } }}ผลลัพธ์1
ป้อนค่าสตริง:trueGiven string เป็นประเภทบูลีน
ผลลัพธ์2
ป้อนค่าสตริง:falseGiven string เป็นประเภทบูลีน
ผลลัพธ์3
ป้อนค่าสตริง:helloGiven string ไม่ใช่ประเภทบูลีน
ตัวอย่าง :การใช้นิพจน์ทั่วไป
<ก่อน> นำเข้า java.util.Scanner; นำเข้า java.util.regex.Matcher; นำเข้า java.util.regex.Pattern; คลาสสาธารณะ VerifyBoolean { โมฆะสาธารณะหลัก (สตริง args []) { Scanner sc =สแกนเนอร์ใหม่ (ระบบ .ใน); System.out.println("ป้อนค่าสตริง:"); สตริง str =sc.next(); รูปแบบรูปแบบ =Pattern.compile("จริง|เท็จ", Pattern.CASE_INSENSITIVE); ตัวจับคู่ตัวจับคู่ =pattern.matcher (str); if(matcher.matches()) { System.out.println ("สตริงที่ระบุเป็นประเภทบูลีน"); } อื่น { System.out.println ("สตริงที่ระบุไม่ใช่ประเภทบูลีน"); } }}ผลลัพธ์1
ป้อนค่าสตริง:trueGiven string เป็นประเภทบูลีน
ผลลัพธ์2
ป้อนค่าสตริง:falseGiven string เป็นประเภทบูลีน
ผลลัพธ์3
ป้อนค่าสตริง:helloGiven string ไม่ใช่ประเภทบูลีน