บล็อกนี้จะสาธิตการใช้งานและการปรับใช้เมธอด “Scanner.nextLine()” ใน Java
“Scanner.nextLine()” ใน Java คืออะไร
ใน Java, the “ บรรทัดถัดไป () ” เป็นวิธีหนึ่งใน “ สแกนเนอร์ ” คลาสที่ให้บรรทัดข้อความอ่านจากวัตถุสแกนเนอร์ วิธีนี้ยอมรับตัวคั่นบรรทัดและย้ายไปยังบรรทัดถัดไปตามนั้น ดังนั้นจึงไม่รวมมันและคงฟังก์ชันการทำงานไว้เหมือนเดิม
ไวยากรณ์
สาธารณะ สตริง บรรทัดถัดไป ( )
ไวยากรณ์นี้แสดงว่าเมธอดนี้ส่งคืนบรรทัดข้อความถัดไปที่อ่านจาก ' สแกนเนอร์ ' วัตถุ.
“Scanner.nextLine()” ข้อยกเว้น
วิธีการนี้โยนข้อยกเว้นต่อไปนี้:
- NoSuchElementException: จะถูกโยนทิ้งหากไม่พบบรรทัด
- IllegalStateException: จะถูกส่งคืนหากเครื่องสแกนปิดอยู่
ก่อนไปที่ตัวอย่าง ตรวจสอบให้แน่ใจว่าได้นำเข้าแพ็คเกจต่อไปนี้เพื่อใช้ ' สแกนเนอร์ ” คลาสและเปิดใช้งาน “ ผู้ใช้ป้อนข้อมูล ”:
นำเข้า java.util.Scanner ;ตัวอย่างที่ 1: การใช้เมธอด “Scanner.nextLine()” เพื่อส่งคืนสตริงอินพุตของผู้ใช้ใน Java
ในตัวอย่างนี้ ' บรรทัดถัดไป () ” เมธอดของคลาส Scanner สามารถใช้เพื่อส่งคืนข้อความที่ผู้ใช้ป้อน เช่น “ สตริง ”:
สาธารณะ ระดับ บรรทัดถัดไป {
สาธารณะ คงที่ เป็นโมฆะ หลัก ( สตริง หาเรื่อง [ ] ) {
วัตถุสแกนเนอร์ = ใหม่ สแกนเนอร์ ( ระบบ . ใน ) ;
ระบบ . ออก . พิมพ์ ( 'ป้อนค่าสตริง: ' ) ;
สตริง x = วัตถุ. บรรทัดถัดไป ( ) ;
ระบบ . ออก . พิมพ์ ( 'ค่าสตริงคือ: ' + x ) ;
วัตถุ. ปิด ( ) ;
} }
ในข้อมูลโค้ดนี้ ให้ทำตามขั้นตอนด้านล่าง:
- ประการแรก สร้าง “ สแกนเนอร์ ” วัตถุด้วยความช่วยเหลือของ “ ใหม่ ” คำหลักและ “ สแกนเนอร์() ” ตัวสร้าง
- หลังจากนั้นป้อนค่าสตริงผ่านทาง “ บรรทัดถัดไป () ” วิธีการที่รับรองว่าผู้ใช้ป้อนข้อมูลเป็น “ สตริง '.
- สุดท้าย ส่งคืนค่าที่ผู้ใช้ป้อนและปิดเครื่องสแกนผ่าน ' ปิด() ' วิธี.
เอาต์พุต
ในเอาต์พุตนี้ จะเห็นได้ว่ามีการป้อนสตริงอินพุตของผู้ใช้และส่งคืนตามนั้น
ตัวอย่างที่ 2: การใช้เมธอด “Scanner.nextLine()” เพื่ออ่านค่าสตริงอินพุตของผู้ใช้ทีละบรรทัดใน Java
ตัวอย่างนี้ใช้วิธีการที่กล่าวถึงเพื่ออ่านสตริงอินพุตของผู้ใช้ทีละบรรทัด เพื่อให้การทำงานของอักขระหลีก “ \n ” ยังคงไม่บุบสลาย นอกจากนี้ ตัวละครจะไม่รวมอยู่ในผลลัพธ์เช่นกัน:
สาธารณะ ระดับ บรรทัดถัดไป2 {สาธารณะ คงที่ เป็นโมฆะ หลัก ( สตริง หาเรื่อง [ ] ) {
สตริง สตริง = “แฮร์รี่ \n เดวิด' ;
วัตถุสแกนเนอร์ = ใหม่ สแกนเนอร์ ( สตริง ) ;
ระบบ . ออก . พิมพ์ ( วัตถุ. บรรทัดถัดไป ( ) ) ;
ระบบ . ออก . พิมพ์ ( วัตถุ. บรรทัดถัดไป ( ) ) ;
วัตถุ. ปิด ( ) ;
} }
ใช้ขั้นตอนต่อไปนี้ตามบรรทัดโค้ดด้านบน:
- ประการแรก เริ่มต้นที่ระบุ “ สตริง ” มูลค่าสะสมอักขระหลีก “ \n ' ในระหว่าง.
- ในขั้นตอนถัดไป สร้าง “ สแกนเนอร์ ” วัตถุผ่านวิธีการที่กล่าวถึงและส่งสตริงที่เริ่มต้นเป็นอาร์กิวเมนต์ตัวสร้าง
- ตอนนี้เชื่อมโยง ' บรรทัดถัดไป () ” วิธีการสองครั้งกับวัตถุที่สร้างขึ้นเพื่ออ่านทั้งสองบรรทัดที่แยกโดยอักขระหลีกทีละรายการและปิดสแกนเนอร์
เอาต์พุต
ในผลลัพธ์นี้สามารถวิเคราะห์ได้ว่าการเริ่มต้น “ สตริง ” แบ่งเป็นสัดส่วนอย่างเหมาะสม
รวมแพ็คเกจเพิ่มเติมที่ให้ไว้ด้านล่างเพื่อใช้งานกับ “ ไฟล์ ” และการรับมือกับ “ FileNotFoundException ” ตามลำดับ:
นำเข้า java.io.File ;นำเข้า java.io.FileNotFoundException ;
ตัวอย่างที่ 3: การใช้เมธอด “Scanner.nextLine()” เพื่ออ่านไฟล์ใน Java
ตัวอย่างต่อไปนี้ใช้ ' บรรทัดถัดไป () ” วิธีการอ่านบรรทัดจากไฟล์:
สาธารณะ ระดับ บรรทัดถัดไป3 {สาธารณะ คงที่ เป็นโมฆะ หลัก ( สตริง หาเรื่อง [ ] ) ขว้าง FileNotFoundException {
วัตถุสแกนเนอร์ = ใหม่ สแกนเนอร์ ( ใหม่ ไฟล์ ( 'readfile.txt' ) ) ;
สตริง อ่านบรรทัดที่ 1 = วัตถุ. บรรทัดถัดไป ( ) ;
สตริง อ่านไลน์2 = วัตถุ. บรรทัดถัดไป ( ) ;
ระบบ . ออก . พิมพ์ ( อ่านบรรทัดที่ 1 ) ;
ระบบ . ออก . พิมพ์ ( อ่านไลน์2 ) ;
วัตถุ. ปิด ( ) ;
} }
ในบล็อกรหัสด้านบน:
- ขั้นแรก ให้ประกาศข้อยกเว้นที่กล่าวถึงผ่านทาง “ ขว้าง ” คีย์เวิร์ดที่ระบุว่าเมธอดสามารถโยนข้อยกเว้นนี้ได้
- ในทำนองเดียวกัน สร้าง “ สแกนเนอร์ ” object และระบุเส้นทางของไฟล์ที่ต้องการอ่าน
- หลังจากนั้นเชื่อมโยง “ บรรทัดถัดไป () ” วิธีการกับวัตถุสองครั้งเพื่ออ่านไฟล์สองบรรทัดแรก
- สุดท้าย ส่งคืนบรรทัดไฟล์ที่อ่านและปิดสแกนเนอร์
เอาต์พุต
ดังที่เห็น ไฟล์สองบรรทัดแรกถูกอ่านและส่งคืนอย่างเหมาะสม
บทสรุป
“ Scanner.nextLine() ” วิธีการให้บรรทัดข้อความที่อ่านจากวัตถุสแกนเนอร์ สามารถอ่านข้อความได้ทีละบรรทัดตามอักขระหลีกที่วางไว้ ยิ่งไปกว่านั้น วิธีการเฉพาะนี้ทำให้มั่นใจได้ว่าค่าที่ผู้ใช้ป้อนเป็น “ สตริง ” และประเมินผลตามนั้น บล็อกนี้กล่าวถึงการใช้และการนำ “ Scanner.nextLine() วิธีการ” ใน Java