Java แสดงการแจ้งเตือนบนหน้าจอ

โกลอฟนา มาตรการทางสังคมและจดหมาย 05.28.16. เนื้อหาภาษาเดนมาร์กเกี่ยวกับการแนะนำระบบ Javaข้อมูลระบบอินพุต/เอาท์พุต (อินพุต/เอาท์พุต หรือ I/O) นำไปใช้ในคลังเก็บของแพ็คเกจ Java.io มาตรฐาน

การสนับสนุนอินพุต-เอาท์พุตดำเนินการโดยแกนไลบรารี

อินเทอร์เฟซซอฟต์แวร์ (เอพีไอ) ไม่ใช่คำหลัก ภาพยนตร์ คลาสการแนะนำและเอาต์พุตของไลบรารี Java แบ่งออกเป็นสองส่วน - ส่วนแรกสำหรับการแนะนำและอีกส่วนสำหรับเอาต์พุต Tim ไม่น้อย Java จะให้การสนับสนุนอินพุตและเอาต์พุตที่แข็งแกร่งตราบใดที่ยังมีไฟล์และการเชื่อมต่อ

สตรีม

คลาสนามธรรมหลัก รวมถึงคลาสทั้งหมดของไบต์อินพุตและเอาท์พุต คือ InputStream และ OutputStream จากคลาสนามธรรมเหล่านี้ มีคลาสย่อยจริงจำนวนหนึ่งที่จัดการความสามารถระหว่างกันสิ่งปลูกสร้างต่างๆ
เช่นไฟล์ดิสก์ การเชื่อมต่อเครือข่าย และบัฟเฟอร์หน่วยความจำ
คลาสนามธรรม InputStream และ OutputStream กำหนดวิธีการหลักจำนวนหนึ่งใหม่ซึ่งใช้คลาสสตรีมอื่นๆ
สองสิ่งที่สำคัญที่สุดคือ read() และ write() ซึ่งอ่านและเขียนไบต์ข้อมูลได้อย่างชัดเจน
ทั้งสองวิธีได้รับการอัปเดตเป็นนามธรรมใน InputStream OutputStream
ในฤดูหนาวกลิ่นเหม็นจะกลับมาอีกครั้ง
คลาสของสตรีมไบต์ถูกเขียนทับด้านล่าง
คลาสของสตรีมไบต์
BufferedInputStream - สตรีมอินพุตบัฟเฟอร์
BufferedOutpudStream - สตรีมเอาท์พุตบัฟเฟอร์
ByteArrayInputStream สตรีมอินพุตที่อ่านจากอาร์เรย์ไบต์
ByteAOutputInputStream - สตรีมเอาต์พุตที่เขียนไปยังอาร์เรย์ไบต์
DataInputStream - สตรีมอินพุตที่เขียนวิธีการอ่านประเภทข้อมูล Java มาตรฐาน
DataOutputStream เป็นสตรีมเอาต์พุตที่มีวิธีการเขียนประเภท Java มาตรฐาน
FileInputStream - สตรีมเอาต์พุตที่อ่านจากไฟล์
FileOutputStream - สตรีมเอาต์พุตที่เขียนไฟล์
FilterInputStream - การใช้งาน InputStream
FilterOutputStream - การใช้งาน OutputStream
InputStream – คลาสนามธรรมที่อธิบายสตรีมอินพุต
OutputStream เป็นคลาสนามธรรมที่อธิบายสตรีมเอาต์พุต
ObjectInputStream – สตรีมอินพุตสำหรับวัตถุ
ObjectOutputStream – สตรีมเอาต์พุตสำหรับวัตถุ

PipedInputStream - ช่องสัญญาณอินพุต (เช่น ข้ามโปรแกรม)

PipedOutpudStream - ช่องสัญญาณเอาท์พุต

คลาสของสตรีมอักขระ BufferedReader - บัฟเฟอร์สตรีมอักขระอินพุต

BufferedWriter - บัฟเฟอร์กระแสอักขระเอาท์พุต

CharArrayReader - สตรีมอินพุตที่อ่านจากอาร์เรย์อักขระ

CharArrayWriter - สตรีมเอาต์พุตที่อ่านจากอาร์เรย์อักขระ

FilterWriter - นักเขียนตัวกรอง

FilterReader - ตัวกรองผู้อ่าน
BufferaedReader br = ใหม่ BufferedReader (InputStreamReader ใหม่ (System.in));

หลังจากการลงนามโอเปอเรเตอร์นี้ br เป็นการทดแทนสัญลักษณ์โฟลว์ ซึ่งเชื่อมต่อกับคอนโซลผ่าน System.in

การอ่านสัญลักษณ์

หากต้องการอ่านอักขระจาก BufferedReader การอ่าน () จะถูกบล็อก

เวอร์ชัน read() แสดงอยู่ด้านล่าง ตาม Wikoristov:

Int read() ส่ง IoExceptionion


ตอนนี้เมื่อมีการเรียกใช้เมธอด read() มันจะอ่านอักขระจากอินพุตสตรีมและหมุนเป็นค่าทั้งหมด
เมื่อถึงจุดสิ้นสุดของการไหล จะกลายเป็น -1
อย่างที่คุณทราบ วิธีการนี้สามารถส่ง IOException ได้
โปรแกรมปัจจุบันสาธิตการอ่านอักขระจากคอนโซลจนถึงขณะนี้ แต่ระบบไม่ทราบ "q" โปรดจำไว้ว่ามีข้อผิดพลาดใดก็ตามเกิดขึ้น - เอาต์พุตที่สามารถสร้างได้จะถูกส่งผ่านไปยัง main() อ่านจากคอนโซลหรือเมื่ออ่านคุณสามารถประมวลผลความเมตตาประเภทนี้ได้ด้วยตัวเอง
//{
//เครื่องมือ BufferedReader สำหรับอ่านอักขระจากคอนโซล
//
//นำเข้า java.io.*;
//คลาส BRRead(
// โมฆะคงสาธารณะหลัก (Straing args) พ่น IOException
//ถ่านค;
//System.out.println("ป้อนตัวอักษร 'q' ใช้สำหรับแสดงผล");
///// อ่านตัวอักษร
//}
//}

//ทำ(
//c = (ถ่าน) br.read();
//System.out.println(c);
1
2
3
//)ในขณะที่(c!= 'q');
ด้านล่างนี้เป็นตัวอย่างวิธีการเปิดโปรแกรมนี้:
ป้อน q เพื่อแสดง
123abcq
บี ถาม ภาพนี้อาจดูแตกต่างจากที่คุณเห็นเล็กน้อย

ระบบ.in

Єติดกัน - ด้านหลังบัฟเฟอร์ซึ่งหมายความว่าโปรแกรมจะดำเนินต่อไปจนกว่าจะกดปุ่ม (ENTER) ปล่อยจามรีไปได้แล้วหยุดอ่าน() มักจะหยุดนิ่งเกินไปสำหรับคอนโซลแบบโต้ตอบ
กำลังอ่านแถว
หากต้องการอ่านแถวจากแป้นพิมพ์ เวอร์ชัน vikorist ของวิธีการอ่านไลน์() ใครเป็นสมาชิกของชั้นเรียน BufferedReader - รูปแบบ Yogo zagal เป็นดังนี้:

สตริง readLine() พ่น IOException


อย่างที่คุณเห็น คุณหมุนวัตถุ

{
สตริง
- โปรแกรมที่กำลังจะมาถึงสาธิต
BufferedReader และ readLine() วิธีการ

- โปรแกรมจะอ่านและแสดงแถวข้อความจนกว่าคุณจะป้อนคำว่า "หยุด":
นำเข้า java.io.*;
คลาส BRReadLines (
// ผู้สร้าง BufferedReader จาก wikisystem.in
BufferedReader br = ใหม่ BufferedReader (InputStreamReader ใหม่ (System.in));
}
}

สตริง str;อ่านไลน์() จากนั้นแถวของข้อความจะถูกอ่านจากการออมของแถวสกินเป็นองค์ประกอบของอาร์เรย์อ่านจบได้ถึง 100 แถว หรือจนกว่าจะมีคำว่า "หยุด"

หากต้องการอ่านจากคอนโซล ให้ใช้ vikory
บัฟรีดเดอร์.
// บรรณาธิการที่สำคัญ
นำเข้า java.io.*;
{
คลาส TinyEdit(
- โปรแกรมที่กำลังจะมาถึงสาธิต
โมฆะคงที่สาธารณะ main (String args) พ่น IOException
// ผู้สร้าง BufferedReader, vikorystui System.in
สตริง str=สตริงใหม่;
System.out.println("ป้อนแถวข้อความ");< 100; i++) {
System.out.println("กรอก 'หยุด' เพื่อดำเนินการให้เสร็จสิ้น");
สำหรับ (int i = 0; i
}
str[i] = br.readLine();
if(str[i].equels("stop")) พัง;
System.out.println("\nAxis คือไฟล์ของคุณ:”);<100; i++) {
//แสดงแถว
สำหรับ(int i = 0; i
}
}
}
if(str[i].equals("stop")) พัง;

System.out.println(str[i]);
ด้านล่างนี้คือผลลัพธ์ของการรันโปรแกรมนี้:
ป้อนแถวสำหรับข้อความ
ป้อน 'หยุด' เพื่อดำเนินการให้เสร็จสิ้น


เป็นหนึ่งแถว
แถวที่สอง.
ป้อนแถวสำหรับข้อความ
ป้อน 'หยุด' เพื่อดำเนินการให้เสร็จสิ้น
หยุด
จัดแกนไฟล์ของคุณ:

Java ปล้นหุ่นยนต์จากการหยุดทำงานหลายแถว

เพียงสร้างวัตถุ Stringเอาต์พุตคอนโซลการบันทึก เวอร์ชันคอนโซลใช้งานง่ายที่สุดโดยใช้วิธีอื่นพิมพ์() และ println วิธีการเหล่านี้ถูกกำหนดให้กับชั้นเรียนพิมพ์สตีม (ซึ่งเป็นประเภทของวัตถุพิมพ์สตีม ระบบออก- พูดจาไม่สุภาพกับผู้ที่ - ไบต์โฟลว์ซึ่งใช้สำหรับแสดงในโปรแกรมอย่างง่ายนั้นถูกต้องสมบูรณ์ทิมไม่น้อย ในส่วนถัดไปจะอธิบายสัญลักษณ์ - ทางเลือกอื่นจะถูกเน้น ออสโกลกีพิมพ์สตรีม - การไหลออก, การไหลลดลงเอาท์พุตสตรีม และยังใช้วิธีต้นทุนต่ำอีกด้วยเขียน(). ต้องเขียน()

คุณสามารถหยุดเขียนลงในคอนโซลได้

แบบฟอร์มที่ง่ายที่สุดเอาท์พุตสตรีม เขียน()
กำหนดไว้ใน
PrintStream แสดงด้านล่าง:

โมฆะเขียน (int byteval)
เมธอดนี้เขียนไปยังกระแสข้อมูลไบต์ ซึ่งส่งไปยังไบต์
หากคุณต้องการใช้พารามิเตอร์ byteval โดยรวม จะมีการบันทึกมากกว่า 8 บิตขนาดเล็ก
เพลามีก้นสั้นเหมือนวิโคริสต์
}
}
วิธีแสดงตัวอักษร "A" พร้อมการโอนแถวไปที่หน้าจอที่กำลังจะเกิดขึ้น:เอาท์พุตสตรีม //Demonstration System.out.write()คลาส WriteDemo(

อินท์ข;

ข = 'ก'; System.out.write(ข); System.out.write('\n'); คุณไม่ได้เล่น vikorist บ่อยนัก

สำหรับการแสดงบนคอนโซล (ในบางสถานการณ์ที่คุณต้องการดำเนินการด้วยตนเอง) เนื่องจากการตั้งค่านี้ง่ายกว่ามาก

พิมพ์() และ println()คลาส PrintWriter ฉันต้องการ zastosuvannya System.outและflushOnNewlineควบคุมวิธีที่ Java ล้างบัฟเฟอร์จากสตรีมเอาต์พุตทันทีเมื่อมีการเรียกใช้เมธอด println()

หาก flushOnNewline เป็นจริง บัฟเฟอร์จะถูกล้างโดยอัตโนมัติ หากเป็นเท็จ บัฟเฟอร์อัตโนมัติจะไม่กลัว



PrintWriter รองรับเมธอด print() และ println() สำหรับทุกประเภท รวมถึง object ด้วย
จากนั้น คุณสามารถใช้วิธีการเหล่านี้ได้ในลักษณะเดียวกับที่คุณใช้ใน System.out
บัฟรีดเดอร์.
ถ้าอาร์กิวเมนต์ไม่ใช่ชนิดเฉพาะ PrintWriter จะเรียกเมธอด toString แล้วสร้างผลลัพธ์อื่น
หากต้องการเขียนไปยังคอนโซลโดยใช้ PrintWriter ให้ระบุ System.out เป็นสตรีมเอาต์พุต และส่งสตรีมหลังสัญลักษณ์สกินของแถวใหม่
ตัวอย่างเช่น
ด้วยการชี้โค้ดแถวถัดไป PrintWriter จะสร้างการเชื่อมต่อที่เชื่อมต่อกับเอาต์พุตคอนโซล
ด้านล่างนี้เป็นโปรแกรมที่สาธิตวิธีการใช้ PrintWriter เพื่อเรนเดอร์โดยใช้อินเทอร์เฟซคอนโซล:
//สาธิตการใช้งาน PrintWriter
PrintWriterDemo คลาสสาธารณะ (
โมฆะคงสาธารณะหลัก (String args) (
}
}
PrintWriter pw = PrintWriter ใหม่ (System.out, จริง);

Pw.println("ลำดับ");
- 7
ฉัน = -7;
Pw.println(i);

สองเท่า d = 4.5e - 7;

Pw.println(d);บทสรุปของโปรแกรมนี้มีดังนี้: ชุด

4.5E – 7
โปรดทราบว่าไม่มีอะไรผิดปกติในการใช้ System.out เพื่อพิมพ์ข้อความไปยังคอนโซล

PrintWriter ได้รับการออกแบบมาเพื่อให้โปรแกรมในชีวิตจริงเป็นสากลได้อย่างง่ายดาย – ตั้งชื่อไฟล์ที่คุณต้องการเปิดหากคุณสร้างสตรีมอินพุตเมื่อไฟล์ไม่ได้ทำงานอยู่ ข้อผิดพลาดจะเกิดขึ้น ไฟล์ NotFountExceptionหากคุณสร้างสตรีมอินพุตเมื่อไฟล์ไม่ได้ทำงานอยู่ ข้อผิดพลาดจะเกิดขึ้น สำหรับเอาท์พุตสตรีม หากไม่สามารถสร้างไฟล์ได้ ก็จะมีผู้กระทำผิดเช่นกันเมื่อเปิดไฟล์เอาต์พุต ไฟล์ก่อนหน้าที่มีชื่อเดียวกันจะปรากฏขึ้น เมื่อคุณทำงานกับไฟล์เสร็จแล้ว คุณต้องปิดมันด้วยการเรียกเมธอด close()

วิธีการนี้มีระบุไว้ใน

FileInputStream และ FileOutputStreamถาม ดังที่แสดงด้านล่าง: void close() พ่น IOException หากต้องการอ่านไฟล์ คุณสามารถแก้ไขเวอร์ชันของวิธีการได้

ตามที่ระบุใน

FileInputStream- อันที่เรา vikoristatimemo มีลักษณะดังนี้: Int read() พ่น IOExceptionตอนนี้เมื่อมีการเรียกใช้เมธอดนี้ มันจะอ่านไบต์เดียวจากไฟล์และหมุนโดยรวม
อ่าน()ถาม หมุน – 1 เมื่อคุณถึงจุดสิ้นสุดของไฟล์วิธีการนี้สามารถแก้ไขผู้กระทำผิดได้ IOข้อยกเว้นในโปรแกรมที่กำลังจะมาถึง ใช้เพื่อป้อนและแสดงไฟล์ข้อความที่มีชื่อระบุไว้ในอาร์กิวเมนต์บรรทัดคำสั่ง

กลับเคารพบล็อก
ลอง/จับ
ซึ่งสร้างข้อผิดพลาดสองประการที่สามารถยกเลิกได้ในระหว่างการทำงานของโปรแกรม – หากไม่พบคำแนะนำ หรือหากไม่พบไฟล์ หรือหากผู้ใช้ลืมป้อนชื่อไฟล์
คุณสามารถใช้แนวทางเดียวกันได้ทันทีเมื่อใช้อาร์กิวเมนต์บรรทัดคำสั่งที่แตกต่างกัน
ข้อผิดพลาดการแนะนำที่เป็นไปได้อื่น ๆ จะถูกส่งต่อไปยังเอาต์พุต
หลัก()
*/
สตริง readLine() พ่น IOException
ซึ่งดีมากสำหรับก้นธรรมดาๆ แบบนี้
อย่างไรก็ตาม หุ่นยนต์ยังมีไฟล์อยู่
บ่อยครั้งที่คุณได้รับการสนับสนุนให้จัดการอินพุตและเอาต์พุตทั้งหมดด้วยตัวเอง
{
/* แสดงไฟล์ข้อความ
หากต้องการเรียกดูโปรแกรมนี้ ให้ป้อน

ฉันมีไฟล์ที่คุณอยากจะชื่นชม
ตัวอย่างเช่น คุณต้องดูไฟล์ TEST.TXT
Vikorist แถวคำสั่งรุก:
ชวา ShowFile TEST.TXT
คลาส ShowFile(
โมฆะคงสาธารณะหลัก (String args)
พ่น IOException
คลาส ShowFile(
}
ฉัน;
นำเข้า java.io.*;
ครีบ FileInputStream;
พยายาม (
fin = FileInputStream ใหม่ (args);
}
}

) จับ (FileNotFountException e) (เอาท์พุตสตรีม System.out.println("ไม่พบไฟล์");กลับ; ) catch(ArrayIndexOutOfBoundsException e) (

System.out.println("Vikoristannya: ไฟล์ ShowFile");

// อ่านอักขระจนกระทั่งอักขระเป็น EOF (สิ้นสุดไฟล์) i = fin.read(); ด้วยเหตุนี้ จึงมีเพียงสมาชิกที่อายุน้อยที่สุดเท่านั้นจึงจะถูกบันทึกไว้ในไฟล์หากมีการอภัยโทษในการบันทึก ความผิดจะถูกทำลาย IOข้อยกเว้น


- แอปพลิเคชันใดใช้ write() เพื่อคัดลอกไฟล์ข้อความ:
/*คัดลอกไฟล์ข้อความ
สำหรับโปรแกรมนี้กรุณากรอก
ชื่อของไฟล์เอาต์พุตและปลายทาง
ตัวอย่างเช่น หากต้องการคัดลอกไฟล์ FIRST.TXT จากไฟล์
SECOND.TXT, vikorist แถวคำสั่งที่น่ารังเกียจ:
*/
บัฟรีดเดอร์.
Java CopyFile FIRST.TXT SECOND.TXT
คลาส CopyFile(
{
/* แสดงไฟล์ข้อความ
Java CopyFile FIRST.TXT SECOND.TXT
นำเข้า java.io.*;
{
/* แสดงไฟล์ข้อความ
หากต้องการเรียกดูโปรแกรมนี้ ให้ป้อน
โมฆะคงที่สาธารณะ main (String args) พ่น IOExecption
ฉันมีไฟล์ที่คุณอยากจะชื่นชม
FilePutputStream ฟอนต์;
ฉันมีไฟล์ที่คุณอยากจะชื่นชม
ตัวอย่างเช่น คุณต้องดูไฟล์ TEST.TXT

//เปิดไฟล์อินพุต
คลาส ShowFile(
}
System.out.println("ไม่พบไฟล์อินพุต");
ฉันมีไฟล์ที่คุณอยากจะชื่นชม
//เปิดไฟล์เอาท์พุต
fout = FileOutputStream ใหม่ (args);
) จับ (FileNotFountException e) (
คลาส ShowFile(
}
System.out.println("กำลังพิมพ์ไฟล์เอาต์พุต");
)catch(ArrayIndexoutOfBoundsException e) (
คลาส ShowFile(
}
System.out.println ("ชัยชนะ: วัตถุประสงค์ของการส่งออก CopyFile");
//คัดลอกไฟล์
พยายาม(
ทำ(
i = fin.read();
ถ้า(i != -1) fount.write(i);
) ในขณะที่ (IOException จ) (
}
fin = FileInputStream ใหม่ (args);
fin = FileInputStream ใหม่ (args);
}
}

System.out.println("พิมพ์สำหรับไฟล์");ให้ความสนใจกับวิธีการประมวลผลผลประโยชน์ที่อาจเกิดขึ้นในโปรแกรมนี้ นอกเหนือจากโปรแกรมอื่นๆ อีกมากมาย รวมถึง C และ C++ ซึ่งเป็นรหัส vikory สำหรับตรวจจับความเสียหายของไฟล์ Java จะหยุดกลไกข้อบกพร่องของมัน

มันไม่เพียงแค่ทำงานเกี่ยวกับการจัดการไฟล์เท่านั้น แต่ยังช่วยให้ Java สามารถลบจุดสิ้นสุดสุดท้ายของไฟล์ออกจากการเปลี่ยนแปลงไฟล์ ณ เวลาที่เข้ามา
C/C++ มีฟังก์ชันอินพุตจำนวนมากที่หมุนค่าเดียวกันเมื่อมีการคอมไพล์และเมื่อถึงจุดสิ้นสุดของไฟล์

(ใน C/C++ นั้น EOF มักจะแสดงด้วยค่าเดียวกันกับที่ป้อน) ซึ่งหมายความว่าโปรแกรมคำขอจะมีตัวดำเนินการเพิ่มเติมเพื่อพิจารณาว่าเกิดอะไรขึ้นจริง

ใน Java ปัญหาจะถูกส่งต่อไปยังโปรแกรมของคุณราวกับว่าพวกเขาถูกตำหนิ และหากไม่ผ่านความหมาย ปัญหาก็จะเปลี่ยนไป

  • อ่าน(). แล้วถ้า read()
  • เปลี่ยน -1 ซึ่งหมายถึงสิ่งเดียวเท่านั้น: ถึงจุดสิ้นสุดของไฟล์แล้ว
  • มีคุณสมบัติมากมายที่คุณควรรู้เมื่อเขียนโปรแกรมใน Java เนื่องจากคุณเป็นโปรแกรมเมอร์มือใหม่

ด้านล่างฉันจะแสดงวิธีป้อน Cyrillic ลงในคอนโซล Windows และจะสาธิตให้ชัดเจนมาทำให้มันง่ายกันดีกว่า
ประเภทพื้นฐาน
Їхใน Java 8:
สัญลักษณ์สามารถแสดงได้ในลักษณะเดียวกับรหัสที่เขียนในระบบตัวเลข:
ค = "077";
De 077 เป็นตัวเลขสามหลัก ไม่เกิน 377 (=255 ในระบบเลขฐานสิบ)
หรือในระบบสิบหกหลักตัวเลขจะขึ้นอยู่กับอันดับที่กำลังจะมาถึง:
ค = "u12a4";
นอกจากนี้ยังมีอักขระพิเศษ เช่น เครื่องหมายย่อหน้า ตัวแบ่งหน้า และอื่นๆ ควรเขียนเครื่องหมายสำหรับย่อหน้าดังนี้:
ค = "\n";
ไม่จำเป็นต้องแสดงปฏิกิริยามากเกินไปที่นี่

สำหรับความต้องการของคุณ คุณสามารถดูที่สำนักงานแพทย์ได้ตลอดเวลา

ตอนนี้ขอแสดงความนับถือ

การเข้ารหัสที่อยู่เบื้องหลังแกนหลักของการเขียนโปรแกรม Java є Latin-1

อย่างไรก็ตาม เมื่อส่งออกไปยังสตรีม System.out สัญลักษณ์จะถูกแปลงเป็นโค้ดสำหรับระบบปฏิบัติการ
ดังนั้นสำหรับการแปลภาษารัสเซีย รหัสจะเป็น Windows-1251 สำหรับ Linux จะเป็น UTF-8

อย่างไรก็ตาม แผนของ Microsoft คือการใช้การเข้ารหัส Cp866 สำหรับคอนโซล Windows
หมายเหตุ: สำหรับการแสดงอักขระซีริลลิกที่ถูกต้องในคอนโซล คุณต้องป้อนอักขระที่เข้ารหัสใน Cp866!
คุณสามารถรับได้ด้วยวิธีนี้:
นำเข้า java.io.PrintStream;
นำเข้า java.io.UnsupportedEncodingException;
ชั้นเรียนสาธารณะสวัสดี (
}
}
โมฆะคงที่สาธารณะ main(String args) พ่น UnsupportedEncodingException ( /*คุณสามารถตำหนิประเภท UnsupportedEncodingException*/
String x = "สวัสดีชาวโลก!";
//ลำดับที่เราแสดงบนหน้าจอ
PrintStream printStream = PrintStream ใหม่ (System.out, true, "cp866");
/*สร้างเอาต์พุตสตรีมใหม่ที่แปลงอักขระเป็นโค้ด Cp866 โดยอัตโนมัติ*/

printStream.println(x);

บันทึกโค้ดจากไฟล์ Hello.java<номер кодовой таблицы>มาสร้างไฟล์ Hello.bat ดังนี้:

จาวาค Hello.java

จาวา-ซีพี

วิธีที่ง่ายที่สุดในการโต้ตอบกับระบบคือผ่านคอนโซล: เราสามารถส่งออกข้อมูลไปยังคอนโซลหรืออ่านข้อมูลจากคอนโซลได้

ในการโต้ตอบกับคอนโซลใน Java จะใช้คลาส System เนื่องจากฟังก์ชันการทำงานจะรับประกันอินพุตและเอาต์พุตของคอนโซล

ปรากฏบนคอนโซล

ในการสร้างเธรดการแสดงภาพ คลาส System ถูกกำหนดให้กับอ็อบเจ็กต์ออก

วัตถุนี้มีเมธอด println ซึ่งช่วยให้คุณแสดงค่าบนคอนโซลจากการแปลคอนโซลก่อนหน้าไปยังแถวถัดไป

ตัวอย่างเช่น:

โปรแกรมคลาสสาธารณะ ( public static void main(String args) ( System.out.println("Hello world!"); System.out.println("Bye world..."); ) )

เมธอด println ส่งค่าใดๆ ก็ตาม โดยปกติจะเป็นแถวที่ต้องส่งออกไปยังคอนโซล

และในบริบทนี้ เราจะนำสัญลักษณ์ต่อไปนี้ออกไป:

สวัสดีชาวโลก!

ลาก่อนโลก... หากจำเป็น คุณจะไม่สามารถเลื่อนเคอร์เซอร์ไปที่แถวที่อยู่ข้างหน้าได้:

ในกรณีนี้ คุณสามารถใช้เมธอด System.out.print() ซึ่งคล้ายกับ println แต่จะใช้งานไม่ได้เมื่อสลับไปยังแถวถัดไป

โปรแกรมคลาสสาธารณะ ( public static void main(String args) ( System.out.print("Hello world!"); System.out.print("Bye world..."); ) )

เวอร์ชันคอนโซลของโปรแกรมนี้:

สวัสดีชาวโลก! ลาก่อนชาวโลก...

นอกจากการใช้วิธี System.out.print แล้ว คุณยังสามารถโอนแคร่ตลับหมึกไปยังแถวถัดไปได้อีกด้วย

เหตุใดจึงใช้ลำดับการหลบหนี

\n

System.out.print("สวัสดีชาวโลก\n");

    %x : สำหรับแสดงเลขฐานสิบหก

    %f : สำหรับแสดงตัวเลขทศนิยม

    %e : สำหรับแสดงตัวเลขในรูปแบบเลขชี้กำลัง เช่น 1.3e+01

    %c: สำหรับแสดงอักขระตัวเดียว

    %s : สำหรับแสดงค่าสตริง

ตัวอย่างเช่น:

โปรแกรมคลาสสาธารณะ ( public static void main(String args) ( String name = "Tom"; int age = 30; float height = 1.7f; System.out.printf("Name: %s Age: %d Height: %) .2f ​​\n", ชื่อ, อายุ, ส่วนสูง); ) )

เมื่อแสดงตัวเลขที่มีจุดลอยตัว เราสามารถระบุจำนวนเครื่องหมายหลังตัวเลขได้ โดยข้อกำหนดที่ %.2f, de.2 ระบุว่าจะมีเครื่องหมายสองตัวหลังตัวเลข

ผลลัพธ์จะเป็นดังนี้:

ชื่อ: ทอม อายุ: 30 ส่วนสูง: 1.70

การแนะนำจากคอนโซล

หากต้องการลบอินพุตออกจากคอนโซล คลาส System จะถูกกำหนดให้กับอ็อบเจ็กต์ใน .

อย่างไรก็ตาม การทำงานโดยตรงผ่านออบเจ็กต์ System.in ไม่ใช่เรื่องง่าย ดังนั้นให้เรียกคลาส Scanner ซึ่งเรียกว่า System.in

ตัวอย่างเช่น ลองเขียนโปรแกรมเล็กๆ ที่ทำสิ่งนี้โดยการป้อนตัวเลข:

นำเข้า java.util.Scanner;

โปรแกรมคลาสสาธารณะ ( public static void main(String args) ( Scanner in = new Scanner(System.in); System.out.print("Input a number: "); int num = in.nextInt(); System.out .printf("หมายเลขของคุณ: %d \n", num); in.close()) )

เนื่องจากพบคลาส Scanner ในแพ็คเกจ java.util ตอนนี้เราสามารถนำเข้ามันได้โดยใช้คำสั่งเพิ่มเติม import java.util.Scanner

เมื่อต้องการสร้างออบเจ็กต์ Scanner เอง ออบเจ็กต์ System.in จะถูกส่งไปยังตัวสร้าง

    หลังจากนี้เราสามารถเลือกค่าที่จะป้อนได้

    ตัวอย่างเช่น ในประเภทนี้ คำขอจะแสดงก่อนป้อน จากนั้นเลือกหมายเลขที่จะป้อนลงในตัวแปร num

    เพื่อให้ได้หมายเลขที่ป้อน จะใช้เมธอด in.nextInt();

    ซึ่งจะหมุนค่าทั้งหมดที่ป้อนจากคีย์บอร์ด

    โปรแกรมหุ่นยนต์ก้น:

    ใส่ตัวเลข: 5 หมายเลขของคุณ: 5

    คลาส Scanner ยังมีวิธีการหลายวิธีที่ให้คุณปฏิเสธค่าที่ป้อน:

    next() : อ่านแถวของรายการจนถึงการข้ามครั้งแรก

nextLine() : อ่านบรรทัดอินพุตทั้งหมด

nextInt() : อ่านหมายเลข int ที่ป้อน

นำเข้า java.util.Scanner;

โปรแกรมคลาสสาธารณะ ( public static void main(String args) ( Scanner in = new Scanner(System.in); System.out.print("Input name: "); String name = in.nextLine(); System.out. print("อายุอินพุต: "); int age = in.nextInt(); System.out.print("ความสูงอินพุต: "); float height = in.nextFloat(); \n", ชื่อ, อายุ, ส่วนสูง); in.close(); ) )

ที่นี่คุณป้อนข้อมูลตามลำดับประเภท String, int, float และข้อมูลที่ป้อนทั้งหมดจะถูกส่งออกไปยังคอนโซลพร้อมกัน

โปรแกรมหุ่นยนต์ก้น:

ชื่อที่ป้อน: Tom อายุที่ป้อน: 34 ความสูงที่ป้อน: 1.7 ชื่อ: Tom อายุ: 34 ส่วนสูง: 1.70

หากต้องการส่งกลับค่าเป็นประเภท float (ซึ่งแปลงเป็นประเภท double ด้วย) จะใช้ตัวเลข "1.7" โดยที่ตัวคั่นคือโคม่า ไม่ใช่ "1.7" โดยที่ตัวคั่นคือจุด

เมื่อทุกอย่างถูกจัดเก็บไว้ภายใต้ระบบการแปลแบบอินไลน์ ฉันมีการแปลเป็นภาษารัสเซีย ดังนั้นคุณต้องป้อนตัวเลขที่ต้องการระหว่างตัวเลขทั้งสองกับอาการโคม่ามีการแปลเป็นภาษาท้องถิ่นอื่น ๆ อีกมากมาย เช่น เยอรมัน ฝรั่งเศส ฯลฯ และมีอาการโคม่า
การใช้ตัวแปลงเหล่านี้สามารถนำไปใช้เพิ่มเติมได้

โปรแกรมนี้จะแสดงตัวเลือกต่างๆ สำหรับการใช้วิธีการฟอร์แมต

สัญลักษณ์อยู่ในความคิดเห็น
รูปแบบทศนิยมของคลาส