Artikel ini berbagi fungsi Java yang menerapkan kalkulator sederhana. Konten spesifiknya adalah sebagai berikut
Topik:
Tulis program yang mensimulasikan kalkulator. Tambahkan kotak teks ke panel (menampilkan tombol dan hasil perhitungan),
10 tombol numerik (0 ~ 9), 4 tombol operasi (Tambah, Kurangi, Mengalikan, Membagi), tombol tanda yang sama, dan tombol yang jelas.
Membutuhkan kunci dan hasil untuk ditampilkan di kotak teks.
Tampilan Proses Kode:
impor java.awt.container; import java.awt.flowlayout; impor java.awt.gridlayout; impor java.awt.event.actionevent; import java.awt.event.actionlisten; javax.swing.jtextfield; Latihan kelas publik1 memperluas jframe mengimplementasikan ActionListener {private jpanel p1 = new jpanel (); // buat panel private jpanel p2 = jpanel baru (); // Buat panel Private JTextfield T1; // kotak teks 1 digunakan untuk menampilkan informasi input StringBuffer STR; // Input string jbutton [] b = jbutton baru [10]; Jbutton B1, B2, B3, B4, B5, B6; // 16 tombol ganda x, y; int n; Latihan Publik1 () {Super ("Tujuan Besar Kapten Palsu"); setsize (350.300); // atur ukuran jendela setlocationRelativeto (null); // Tampilkan ke wadah tengah C = getContentPane (); // Buat Objek Panel Konten T1 = JTextField baru (25); t1.setedable (false); // hanya tampilan, p2.add (t1); // Tambahkan kotak teks ke panel P2.setLayout (GridLayout baru (3,2)); // tata letak wajah ke 4 baris dan 1 kolom str = new stringBuffer (); // Contoh setiap tombol untuk (int i = 0; i <10; i ++) // atur label untuk tombol 0 ~ 9 di array, dan daftarkan pendengar {string s = ""+i; B [i] = Jbutton baru; b [i] .addactionListener (ini); } b1 = jbutton baru ("+"); b2 = jbutton baru ("-"); b3 = jbutton baru ("*"); b4 = jbutton baru ("/"); b5 = jbutton baru ("="); b6 = jbutton baru ("hapus"); // tambahkan ke panel 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 baru (4,5,10,10)); // daftarkan pendengar b1.addactionListener (ini); b2.addactionListener (ini); b3.addactionListener (ini); b4.addactionListener (ini); b5.addactionListener (ini); b6.addactionlistener (ini); // tambahkan konten ke panel dan tambahkan ke wadah c.add (p2); c.add (p1); C.SetLayout (FlowLayout baru ()); // atur ke tata letak berurutan // atur jendela tutup tindakan setDefaultcloseOperation (jframe.exit_on_close); // atur jendela tutup tindakan setVisible (true); // diatur ke setResizable yang terlihat (false); // Ukuran bingkai dilarang} public static void main (string [] args) {// TODO Metode yang dihasilkan secara otomatis Stub @suppresswarnings ("tidak digunakan") Hitung1 Hitung = Latihan baru1 (); } @Override public void actionPerformed (ActionEvent e) {// TODO Metode yang dihasilkan secara otomatis Stub if (e.getSource () == B6) {t1.setText ("0"); // hapus t1.sethorizontalAlignment (jtextfield.right); // STR.SetLength (0); } //Double.parseDouble Converts the string to double type //t1.getText().trim() Get the character saved and clears else if (e.getSource()==b1)//Click the plus button to get the value of x and clear the value of y{ x=Double.parseDouble(t1.getText().trim()); str.setLength (0); y = 0d; n = 0; } lain jika (e.getSource () == b2) // operasi pengurangan {x = double.parsedouble (t1.getText (). trim ()); str.setLength (0); y = 0d; n = 1; } lain jika (e.getSource () == b3) // Beberapa operasi {x = double.parsedouble (t1.getText (). trim ()); str.setLength (0); y = 0d; n = 2; } lain if (e.getSource () == b4) // Bagilah operasi {x = double.parsedouble (t1.getText (). trim ()); str.setLength (0); y = 0d; n = 3; } lain jika (e.getSource () == b5) // tanda sama {str.setlength (0); switch (n) {case 0: t1.setText (""+(x+y)); break; Kasus 1: t1.setText (""+(xy)); break; Kasus 2: t1.setText (""+(x*y)); break; Kasus 3: t1.setText (""+(x/y)); break; }} else {if (e.getSource () == b [0]) {if (t1.getText (). trim (). Equals ("0")) // Jika tampilannya nol, jangan beroperasi {} else t1.setText (str.pappend (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 ()); }}}}Ringkasan: Kode ini agak panjang, tetapi tidak rumit setelah pemahaman nyata. Tentu saja, ini hanyalah kalkulator simulasi sederhana.
Fitur lain juga dapat ditambahkan ke dalamnya. Misalnya, menambahkan operasi eksponensial, operasi eksponen, operasi kuadrat, atau untuk membuat antarmuka indah,
Tambahkan kotak teks hasil, dengan nomor yang dimasukkan ditampilkan di atas dan hasil yang ditampilkan di bawah ini. Tentu saja, untuk mengatakan begitu banyak, masih tergantung pada pembaca untuk mempelajarinya sendiri.
Semua di atas adalah seluruh konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.