บทความนี้แบ่งปันฟังก์ชั่นของ Java ที่ใช้เครื่องคิดเลขอย่างง่าย เนื้อหาเฉพาะมีดังนี้
หัวข้อ:
เขียนโปรแกรมที่จำลองเครื่องคิดเลข เพิ่มกล่องข้อความลงในแผง (แสดงคีย์และผลการคำนวณ)
ปุ่มตัวเลข 10 ปุ่ม (0 ~ 9), 4 ปุ่มการทำงาน (เพิ่ม, ลบ, คูณ, หาร), ปุ่มป้ายเท่ากันและปุ่มชัดเจน
ต้องการคีย์และผลลัพธ์ที่จะแสดงในกล่องข้อความ
การแสดงกระบวนการรหัส:
นำเข้า java.awt.Container; นำเข้า java.awt.flowlayout; นำเข้า java.awt.gridlayout; นำเข้า java.awt.event.actionEvent; นำเข้า java.awt.event.ActionListener; นำเข้า Javax.swing.jbutton; javax.swing.jtextfield; แบบฝึกหัดระดับสาธารณะ 1 ขยาย JFrame ใช้ ActionListener {ส่วนตัว JPanel P1 = new JPanel (); // สร้างพาเนลส่วนตัว jpanel p2 = new jpanel (); // สร้างพาเนลส่วนตัว jtextfield t1; // กล่องข้อความ 1 ใช้เพื่อแสดงข้อมูลอินพุต StringBuffer Str; // อินพุตสตริง jbutton [] b = new JButton [10]; Jbutton B1, B2, B3, B4, B5, B6; // 16 ปุ่ม double x, y; int n; แบบฝึกหัดสาธารณะ 1 () {super ("เป้าหมายใหญ่ของกัปตันปลอม"); setsize (350,300); // ตั้งค่าขนาดหน้าต่าง setLocationRelativeto (null); // แสดงไปยังคอนเทนเนอร์กลาง c = getContentPane (); // สร้างวัตถุแผงเนื้อหา t1 = new Jtextfield (25); t1.seteditable (เท็จ); // แสดงเฉพาะ, p2.add (t1); // เพิ่มกล่องข้อความลงในแผง P2.SetLayout (ใหม่ gridlayout (3,2)); // เลย์เอาต์ใบหน้าถึง 4 แถวและ 1 คอลัมน์ str = new StringBuffer (); // อินสแตนซ์แต่ละปุ่มสำหรับ (int i = 0; i <10; i ++) // ตั้งค่าป้ายกำกับสำหรับปุ่ม 0 ~ 9 ในอาร์เรย์และลงทะเบียนผู้ฟัง {string s = ""+i; B [i] = ใหม่ JButton (S); B [i] .AddactionListener (นี้); } b1 = new JButton ("+"); b2 = new JButton ("-"); b3 = new JButton ("*"); b4 = new JButton ("/"); b5 = new JButton ("="); b6 = new JButton ("ลบ"); // เพิ่มลงในพาเนล p1.add (b [7]); p1.add (b [8]); p1.add (b [9]); P1.Add (B1); p1.add (b [4]); p1.add (b [5]); p1.add (b [6]); P1.Add (B2); p1.add (b [1]); p1.add (b [2]); p1.add (b [3]); P1.Add (B3); p1.add (b [0]); P1.Add (B5); P1.Add (B6); P1.Add (B4); P1.SetLayout (ใหม่ gridlayout (4,5,10,10)); // ลงทะเบียนผู้ฟัง b1.addactionListener (นี่); b2.addactionListener (นี่); B3.AddactionListener (นี้); B4.AddactionListener (นี่); B5.AddactionListener (นี้); B6.AddactionListener (นี่); // เพิ่มเนื้อหาลงในพาเนลและเพิ่มลงในคอนเทนเนอร์ c.add (p2); C.Add (P1); C.SetLayout (ใหม่ flowlayout ()); // ตั้งค่าเป็นเค้าโครงตามลำดับ // ตั้งค่าการดำเนินการปิดหน้าต่าง setDefaultCloseOperation (jframe.exit_on_close); // ตั้งค่าการดำเนินการปิดหน้าต่าง setVisible (จริง); // ตั้งค่าเป็น setResizable ที่มองเห็นได้ (เท็จ); // ขนาดเฟรมถูกห้าม} โมฆะคงที่สาธารณะหลัก (สตริง [] args) {// วิธีการที่สร้างอัตโนมัติ todo stub @suppresswarnings ("ไม่ได้ใช้") แบบฝึกหัด 1 คำนวณ = แบบฝึกหัดใหม่ 1 (); } @Override โมฆะสาธารณะ ActionPerformed (ActionEvent E) {// วิธีการที่สร้างขึ้นอัตโนมัติ todo stub ถ้า (e.getSource () == b6) {t1.settext ("0"); // ล้าง t1.sethorizontalalignment (jtextfield.right); // การจัดตำแหน่ง str.setLength (0); } //double.parsedouble แปลงสตริงเป็นสองประเภท //t1.getText (). trim () รับอักขระที่บันทึกไว้และล้างอื่นถ้า (e.getSource () == b1) // คลิกปุ่มบวกเพื่อรับค่า x และล้างค่าของ y {x = double.parsedouble (t1.get () str.setLength (0); y = 0d; n = 0; } อื่นถ้า (e.getSource () == b2) // การดำเนินการลบ {x = double.parsedouble (t1.getText (). trim ()); str.setLength (0); y = 0d; n = 1; } อื่นถ้า (e.getSource () == b3) // การดำเนินการหลายครั้ง {x = double.parsedouble (t1.getText (). trim ()); str.setLength (0); y = 0d; n = 2; } อื่นถ้า (e.getSource () == b4) // หารการทำงาน {x = double.parsedouble (t1.getText (). trim ()); str.setLength (0); y = 0d; n = 3; } อื่นถ้า (e.getSource () == b5) // เครื่องหมายเท่ากัน {str.setLength (0); สวิตช์ (n) {กรณี 0: t1.settext (""+(x+y)); break; กรณีที่ 1: t1.settext (""+(xy)); break; กรณีที่ 2: t1.settext (""+(x*y)); break; กรณีที่ 3: t1.settext (""+(x/y)); break; }} else {ถ้า (e.getSource () == b [0]) {ถ้า (t1.getText (). trim (). เท่ากับ ("0")) // ถ้าจอแสดงผลเป็นศูนย์อย่าทำงาน {} อื่น t1.settext (str.append (e.getActionCommand T1.Sethorizontalalignment (jtextfield.right); y = double.parsedouble (t1.getText (). trim ()); } else {t1.settext (str.Append (e.getActionCommand ()). toString ()); T1.Sethorizontalalignment (jtextfield.right); y = double.parsedouble (t1.getText (). trim ()); -สรุป: รหัสมีความยาวเล็กน้อย แต่ก็ไม่ซับซ้อนหลังจากความเข้าใจที่แท้จริง แน่นอนว่านี่เป็นเพียงเครื่องคิดเลขจำลองอย่างง่าย
นอกจากนี้ยังสามารถเพิ่มคุณสมบัติอื่น ๆ ได้ ตัวอย่างเช่นการเพิ่มการดำเนินงานแบบทวีค
เพิ่มกล่องข้อความผลลัพธ์พร้อมหมายเลขที่ป้อนด้านบนและผลลัพธ์ที่แสดงด้านล่าง แน่นอนว่าการพูดมากมันยังคงขึ้นอยู่กับผู้อ่านที่จะศึกษาด้วยตนเอง
ทั้งหมดข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น