Scanner.nextLine() ใน Java คืออะไร

Scanner Nextline Ni Java Khux Xari



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

บล็อกนี้จะสาธิตการใช้งานและการปรับใช้เมธอด “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