การตรวจสอบว่าอาร์เรย์ Java มีค่าหรือไม่

Kar Trwc Sxb Wa Xarrey Java Mi Kha Hrux Mi



อาร์เรย์ Java ใช้เพื่อจัดเก็บค่าตัวเลขหรือค่าสตริงหลายค่าในตัวแปร มีตัวเลือกมากมายใน Java เพื่อค้นหาค่าเฉพาะในอาร์เรย์ การใช้ลูป “for” เป็นวิธีที่ง่ายที่สุดในการค้นหาค่าตัวเลขหรือสตริงในอาร์เรย์ Java อย่างไรก็ตาม Java มีฟังก์ชันในตัวมากมายเพื่อค้นหาค่าเฉพาะในอาร์เรย์ วิธีการตรวจสอบว่ามีค่าเฉพาะอยู่ในอาร์เรย์ Java หรือไม่โดยใช้ลูปและฟังก์ชัน Java ในตัวจะแสดงอยู่ในบทช่วยสอนนี้

ตัวอย่างที่ 1: การใช้ลูป “For”

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







// นำเข้าโมดูลสแกนเนอร์
นำเข้า java.util.Scanner;
CheckArrayValue1 คลาสสาธารณะ {
โมฆะคงที่สาธารณะหลัก ( สตริง [ ] หาเรื่อง ) {

// ประกาศอาร์เรย์ของค่าสตริง
สตริง [ ] strArray= { 'ชวา' , 'ค++' , 'ค#' , 'วีบี.เน็ต' , 'เจ#' } ;

// ประกาศวัตถุสแกนเนอร์
@ ระงับคำเตือน ( 'ทรัพยากร' )
Scanner lang = เครื่องสแกนใหม่ ( ระบบ.in ) ;
System.out.println ( 'ป้อนชื่อภาษาการเขียนโปรแกรม:' ) ;

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

// ตั้งค่าตัวแปรเป็น เท็จ
พบบูลีน = เท็จ ;

// วนซ้ำเพื่อตรวจสอบแต่ละค่าของลูป
สำหรับ ( อินท์ ไอ = 0 ; ฉัน < strArray.ความยาว; ฉัน++ ) {
// เปรียบเทียบแต่ละค่าของอาร์เรย์กับค่าอินพุต
ถ้า ( ชื่อ.เท่ากับ ( strArray [ ฉัน ] ) )
{
// พิมพ์ข้อความแสดงความสำเร็จ
System.out.println ( 'เดอะ '' + ชื่อ + '' มีอยู่ในอาร์เรย์' ) ;
// ตั้งค่าตัวแปรเป็น จริง
พบ = จริง ;
หยุดพัก ;
}
}

// ตรวจสอบตัวแปรเพื่อพิมพ์ข้อความแจ้งข้อผิดพลาด
ถ้า ( ! พบ )
System.out.println ( 'เดอะ '' + ชื่อ + '' ไม่มีอยู่ในอาร์เรย์' ) ;
}
}


เอาท์พุท:



เอาต์พุตต่อไปนี้จะถูกพิมพ์หาก Java ถูกนำมาใช้เป็นค่าอินพุตที่มีอยู่ในค่าอาร์เรย์:




ผลลัพธ์ต่อไปนี้จะถูกพิมพ์ถ้า Perl ถูกนำมาใช้เป็นค่าอินพุตที่ไม่มีอยู่ในค่าอาร์เรย์:





ตัวอย่างที่ 2: การใช้เมธอดประกอบด้วย()

สร้างไฟล์ Java ด้วยโค้ดต่อไปนี้ที่รับอินพุตจากผู้ใช้และตรวจสอบว่ามีค่าอินพุตอยู่ในอาร์เรย์หรือไม่โดยใช้เมธอด contains() วิธีการนี้จะคืนค่าเป็นจริงหากมีค่าอินพุตอยู่ในอาร์เรย์ มิฉะนั้นวิธีนี้จะส่งกลับค่าเท็จ



// นำเข้าโมดูลที่จำเป็น
นำเข้า java.util.Scanner;
นำเข้า java.util.Arrays;
CheckArrayValue2 คลาสสาธารณะ {
โมฆะคงที่สาธารณะหลัก ( สตริง [ ] หาเรื่อง ) {

// ประกาศอาร์เรย์ของค่าสตริง
สตริง [ ] strArray= { 'ชวา' , 'ค++' , 'ค#' , 'วีบี.เน็ต' , 'เจ#' } ;

// ประกาศวัตถุสแกนเนอร์
@ ระงับคำเตือน ( 'ทรัพยากร' )

อินพุตสแกนเนอร์ = สแกนเนอร์ใหม่ ( ระบบ.in ) ;
System.out.println ( 'ป้อนชื่อภาษาการเขียนโปรแกรม:' ) ;

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

// ตรวจสอบว่ามีค่าอยู่หรือไม่ ใน อาร์เรย์หรือไม่โดยใช้ประกอบด้วย ( ) วิธี
พบบูลีน = Arrays.asList ( strArray ) .ประกอบด้วย ( ชื่อ ) ;

// ตั้งค่าเริ่มต้น ใน ตัวแปรเอาท์พุต
สตริงเอาต์พุต = 'การ' + ชื่อ;
// ตั้งค่าข้อความเป็นตัวแปรเอาต์พุตตามตัวแปรที่พบ
เอาท์พุต += พบ ? 'มีอยู่ในอาร์เรย์' : : 'ไม่มีอยู่ในอาร์เรย์' ;
// พิมพ์ผลลัพธ์
System.out.println ( เอาท์พุท ) ;
}
}


เอาท์พุท:

ผลลัพธ์ต่อไปนี้จะถูกพิมพ์หากใช้ PHP เป็นค่าอินพุตที่ไม่มีอยู่ในค่าอาร์เรย์:


ผลลัพธ์ต่อไปนี้จะถูกพิมพ์ถ้าใช้ C++ เป็นค่าอินพุตที่มีอยู่ในค่าอาร์เรย์:

ตัวอย่างที่ 3: การใช้เมธอด AnyMatch()

สร้างไฟล์ Java ด้วยโค้ดต่อไปนี้ที่รับอินพุตจากผู้ใช้และตรวจสอบว่ามีค่าอินพุตอยู่ในอาร์เรย์หรือไม่โดยใช้เมธอด anyMatch() ของคลาส 'Stream' วิธีการนี้จะคืนค่าเป็นจริงหากมีค่าอินพุตอยู่ในอาร์เรย์ มิฉะนั้นวิธีนี้จะส่งกลับค่าเท็จ

// นำเข้าโมดูลที่จำเป็น
นำเข้า java.util.Scanner;
นำเข้า java.util.stream.IntStream;
CheckArrayValue3 คลาสสาธารณะ
{
โมฆะคงที่สาธารณะหลัก ( สตริง [ ] หาเรื่อง )
{

// ประกาศอาร์เรย์ของตัวเลข
ภายใน [ ] numArray= { 89 , สี่ห้า , 72 , 67 , 12 , 43 } ;

// ประกาศวัตถุสแกนเนอร์
@ ระงับคำเตือน ( 'ทรัพยากร' )

อินพุตสแกนเนอร์ = สแกนเนอร์ใหม่ ( ระบบ.in ) ;
System.out.println ( 'กรอกตัวเลขเพื่อค้นหา:' ) ;

// รับข้อมูลจากผู้ใช้
int num = input.nextInt ( ) ;

// ตรวจสอบว่ามีค่าอยู่หรือไม่ ใน อาร์เรย์หรือไม่โดยใช้ anyMatch ( ) วิธี
พบบูลีน = IntStream.of ( numArray ) .anyMatch ( เอ็กซ์ - > x == ไม่ ) ;

// ตั้งค่าเริ่มต้น ใน ตัวแปรเอาท์พุต
สตริงเอาต์พุต = 'การ' + หมายเลข;
// ตั้งค่าข้อความเป็นตัวแปรเอาต์พุตตามตัวแปรที่พบ
เอาท์พุต += พบ ? 'มีอยู่ในอาร์เรย์' : : 'ไม่มีอยู่ในอาร์เรย์' ;
// พิมพ์ผลลัพธ์
System.out.println ( เอาท์พุท ) ;
}
}


เอาท์พุท:

เอาต์พุตต่อไปนี้จะถูกพิมพ์หากใช้ 45 เป็นค่าอินพุตที่มีอยู่ในค่าอาร์เรย์:


เอาต์พุตต่อไปนี้จะถูกพิมพ์หากใช้ 100 เป็นค่าอินพุตที่ไม่มีอยู่ในค่าอาร์เรย์:

บทสรุป

สามวิธีที่แตกต่างกันในการตรวจสอบว่าอาร์เรย์มีค่าใดค่าหนึ่งหรือไม่ จะแสดงอยู่ในบทช่วยสอนนี้โดยใช้หลายตัวอย่าง