From 5da92d9c62b760466ae5c18d76f8a10c0837885a Mon Sep 17 00:00:00 2001 From: asus Date: Sun, 29 May 2022 21:34:24 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E7=94=B5=E8=84=91=E5=9D=8F=E4=BA=86?= =?UTF-8?q?=E6=89=8D=E4=BF=AE=E5=A5=BD=EF=BC=8C=E5=BC=80=E5=A7=8B=E6=B3=A8?= =?UTF-8?q?=E5=86=8C=E8=AF=95=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2022spring/Calculator.java | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 src/java2022spring/Calculator.java diff --git a/src/java2022spring/Calculator.java b/src/java2022spring/Calculator.java new file mode 100644 index 0000000..5d361c5 --- /dev/null +++ b/src/java2022spring/Calculator.java @@ -0,0 +1,5 @@ +package java2022spring; + +public class Calculator { + +} -- Gitee From c196dd66e59997f5cbf18b117c27cc987dd55348 Mon Sep 17 00:00:00 2001 From: asus Date: Sun, 29 May 2022 21:39:43 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E5=88=9D=E6=AD=A5=E5=81=9A=E5=A5=BD?= =?UTF-8?q?=E5=A4=96=E5=BD=A2=EF=BC=8C=E6=8C=89=E9=92=AE=E7=9A=84=E8=BE=93?= =?UTF-8?q?=E5=85=A5=EF=BC=8CDEL=E9=94=AE=E7=9A=84=E4=BD=BF=E7=94=A8?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2022spring/Calculator.java | 235 +++++++++++++++++++++++++++++ 1 file changed, 235 insertions(+) diff --git a/src/java2022spring/Calculator.java b/src/java2022spring/Calculator.java index 5d361c5..60784cd 100644 --- a/src/java2022spring/Calculator.java +++ b/src/java2022spring/Calculator.java @@ -1,5 +1,240 @@ package java2022spring; +import java.awt.*; +import javax.swing.*; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + public class Calculator { +public static void main(String[] args) { + JFrame cal =new JFrame("计算器"); + StringBuffer inputNum =new StringBuffer(); + JTextField TF = new JTextField(); + TF.setFont(new Font("宋体",Font.PLAIN,30)); + TF.setEnabled(false); + TF.setPreferredSize(new Dimension(540,100)); + TF.setSize(700,700); + TF.setHorizontalAlignment(JTextField.RIGHT); + cal.add(TF,BorderLayout.NORTH); + JPanel jp1 = new JPanel(); + cal.add(jp1); + jp1.setLayout(new GridLayout(5,4)); + + JButton button[] =new JButton[21]; + button[1]=new JButton("CE"); + button[2]=new JButton("C"); + button[3]=new JButton("DEL"); + button[4]=new JButton("/"); + button[5]=new JButton("7"); + button[6]=new JButton("8"); + button[7]=new JButton("9"); + button[8]=new JButton("*"); + button[9]=new JButton("4"); + button[10]=new JButton("5"); + button[11]=new JButton("6"); + button[12]=new JButton("-"); + button[13]=new JButton("1"); + button[14]=new JButton("2"); + button[15]=new JButton("3"); + button[16]=new JButton("+"); + button[17]=new JButton("+/-"); + button[18]=new JButton("0"); + button[19]=new JButton("."); + button[20]=new JButton("="); + for(int i=1;i<21;i++) { + jp1.add(button[i]); + } + + + + + button[4].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('/'); + String str=inputNum.toString(); + TF.setText(str); + } + }); + + button[5].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('7'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[6].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('8'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[7].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('9'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[8].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('*'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[9].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('4'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[10].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('5'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[11].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('6'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[12].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('-'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[13].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('1'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[14].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('2'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[15].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('3'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[16].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('+'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + + + button[18].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('0'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[19].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('.'); + String str=inputNum.toString(); + TF.setText(str); + + } + }); + + button[20].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append('='); + String str=inputNum.toString(); + TF.setText(str); + } + }); + + button[1].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.delete(0, inputNum.length()); + //TF.setText( ); + } + });//CE + + button[2].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + + } + });//C + + button[3].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + if(inputNum.length()!=0) + inputNum.delete(inputNum.length()-1, inputNum.length()); + String str=inputNum.toString(); + TF.setText(str); + + } + });//DEL + + + button[17].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + inputNum.append(' ');//迟点再来 + String str=inputNum.toString(); + TF.setText(str); + + } + });//正负号 + + + + + + + + cal.setSize(400,500); + cal.setLocation(300,200); + cal.setVisible(true); + cal.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } +} \ No newline at end of file -- Gitee From 40116bac0af24a6a8eadc5975a1e6e1573f7e989 Mon Sep 17 00:00:00 2001 From: asus Date: Sun, 29 May 2022 21:43:01 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E5=B0=9D=E8=AF=95=E4=B8=80=E4=B8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2022spring/Test.java | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 src/java2022spring/Test.java diff --git a/src/java2022spring/Test.java b/src/java2022spring/Test.java deleted file mode 100644 index 24deb29..0000000 --- a/src/java2022spring/Test.java +++ /dev/null @@ -1,7 +0,0 @@ -package java2022spring; - -public class Test { - public static void main(String[] args) { - System.out.println("Hello world!"); - } -} -- Gitee From 7a96830e21a1aa5af7451594491a87bdaf08d129 Mon Sep 17 00:00:00 2001 From: asus Date: Tue, 31 May 2022 21:09:23 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E5=9F=BA=E7=A1=80=E7=AE=97=E6=B3=95?= =?UTF-8?q?=E5=86=99=E5=AE=8C=EF=BC=8C=20=E8=B0=83=E6=95=B4=E4=BA=86?= =?UTF-8?q?=E5=AD=97=E4=BD=93=E4=B8=8E=E5=AD=97=E4=BD=93=E5=A4=A7=E5=B0=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2022spring/Calculator.java | 90 +++++++++++++++++++++++------- 1 file changed, 69 insertions(+), 21 deletions(-) diff --git a/src/java2022spring/Calculator.java b/src/java2022spring/Calculator.java index 60784cd..8ccb6b5 100644 --- a/src/java2022spring/Calculator.java +++ b/src/java2022spring/Calculator.java @@ -19,6 +19,8 @@ public static void main(String[] args) { JPanel jp1 = new JPanel(); cal.add(jp1); jp1.setLayout(new GridLayout(5,4)); + cal.setSize(400,500); + cal.setLocation(300,200); JButton button[] =new JButton[21]; button[1]=new JButton("CE"); @@ -42,12 +44,13 @@ public static void main(String[] args) { button[19]=new JButton("."); button[20]=new JButton("="); for(int i=1;i<21;i++) { + button[i].setFont(new Font("宋体",Font.BOLD,30)); jp1.add(button[i]); + } - button[4].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { inputNum.append('/'); @@ -184,27 +187,20 @@ public static void main(String[] args) { } }); - button[20].addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent e) { - inputNum.append('='); - String str=inputNum.toString(); - TF.setText(str); - } - }); button[1].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { inputNum.delete(0, inputNum.length()); - //TF.setText( ); + TF.setText(" "); } });//CE - button[2].addActionListener(new ActionListener() { + /*button[2].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { } - });//C + });C 搞不定 */ button[3].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { @@ -217,23 +213,75 @@ public static void main(String[] args) { });//DEL - button[17].addActionListener(new ActionListener() { + /*button[17].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { inputNum.append(' ');//迟点再来 String str=inputNum.toString(); TF.setText(str); } - });//正负号 - + });正负号 */ + + + + button[20].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + String sGet = TF.getText().toString(); + + + if(sGet.contains("+")) { + String sArgs[] = sGet.split("\\+"); + double number[] = new double[2]; + for(int i=0;i<2;i++) { + number[i] = Double.parseDouble(sArgs[i]); + } + double num = number[0]+number[1]; + String ss = String.valueOf(num); + TF.setText(sGet+"="+ss); + } + + if(sGet.contains("-")) { + String sArgs[] = sGet.split("\\-"); + double number[] = new double[2]; + for(int i=0;i<2;i++) { + number[i] = Double.parseDouble(sArgs[i]); + } + double num = number[0]-number[1]; + String ss = String.valueOf(num); + TF.setText(sGet+"="+ss); + } + + if(sGet.contains("*")) { + String sArgs[] = sGet.split("\\*"); + double number[] = new double[2]; + for(int i=0;i<2;i++) { + number[i] = Double.parseDouble(sArgs[i]); + } + double num = number[0]*number[1]; + String ss = String.valueOf(num); + TF.setText(sGet+"="+ss); + } + + if(sGet.contains("/")) { + String sArgs[] = sGet.split("\\/"); + double number[] = new double[2]; + for(int i=0;i<2;i++) { + number[i] = Double.parseDouble(sArgs[i]); + } + double num = number[0]/number[1]; + if(number[1]==0) { + TF.setText(sGet+"="+"Erroring"); + } + else { + String ss = String.valueOf(num); + TF.setText(sGet+"="+ss); + } + + } + } + }); - - - - - - cal.setSize(400,500); - cal.setLocation(300,200); + cal.setVisible(true); cal.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } -- Gitee From a21cb69338164ad4dd45c20f5e704b52d641856a Mon Sep 17 00:00:00 2001 From: asus Date: Tue, 7 Jun 2022 21:28:45 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=B9=82=E8=BF=90?= =?UTF-8?q?=E7=AE=97=E5=92=8C=E4=B8=80=E4=BA=9B=E5=B0=8F=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2022spring/Calculator.java | 43 +++++++++++++++++++----------- 1 file changed, 27 insertions(+), 16 deletions(-) diff --git a/src/java2022spring/Calculator.java b/src/java2022spring/Calculator.java index 8ccb6b5..2baea29 100644 --- a/src/java2022spring/Calculator.java +++ b/src/java2022spring/Calculator.java @@ -39,10 +39,11 @@ public static void main(String[] args) { button[14]=new JButton("2"); button[15]=new JButton("3"); button[16]=new JButton("+"); - button[17]=new JButton("+/-"); + button[17]=new JButton("n"); button[18]=new JButton("0"); button[19]=new JButton("."); button[20]=new JButton("="); + for(int i=1;i<21;i++) { button[i].setFont(new Font("宋体",Font.BOLD,30)); jp1.add(button[i]); @@ -50,7 +51,6 @@ public static void main(String[] args) { } - button[4].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { inputNum.append('/'); @@ -193,14 +193,14 @@ public static void main(String[] args) { inputNum.delete(0, inputNum.length()); TF.setText(" "); } - });//CE + }); - /*button[2].addActionListener(new ActionListener() { + button[2].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - - + inputNum.delete(0, inputNum.length()); + TF.setText(" "); } - });C 搞不定 */ + }); button[3].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { @@ -213,22 +213,21 @@ public static void main(String[] args) { });//DEL - /*button[17].addActionListener(new ActionListener() { + button[17].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - inputNum.append(' ');//迟点再来 + inputNum.append('n'); String str=inputNum.toString(); TF.setText(str); } - });正负号 */ + }); - button[20].addActionListener(new ActionListener() { - public void actionPerformed(ActionEvent e) { - String sGet = TF.getText().toString(); - - + button[20].addActionListener(new ActionListener() { //借鉴 + + public void actionPerformed(ActionEvent e) { + String sGet = TF.getText().toString(); if(sGet.contains("+")) { String sArgs[] = sGet.split("\\+"); double number[] = new double[2]; @@ -262,6 +261,7 @@ public static void main(String[] args) { TF.setText(sGet+"="+ss); } + if(sGet.contains("/")) { String sArgs[] = sGet.split("\\/"); double number[] = new double[2]; @@ -278,10 +278,21 @@ public static void main(String[] args) { } } + if(sGet.contains("n")) { + String sArgs[] = sGet.split("\\n"); + double number[] = new double[2]; + for(int i=0;i<2;i++) { + number[i] = Double.parseDouble(sArgs[i]); + } + double num = (int)Math.pow(number[0],number[1]); + String ss = String.valueOf(num); + TF.setText(sGet+"="+ss); + } + } }); - + cal.setVisible(true); cal.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } -- Gitee From d04b09244107f3dcaef6c73f213670b34a92f4d4 Mon Sep 17 00:00:00 2001 From: asus Date: Thu, 9 Jun 2022 22:29:13 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E5=AE=9E=E7=8E=B0=E4=BA=86=E8=BF=9E?= =?UTF-8?q?=E7=BB=AD=E8=BF=90=E7=AE=97=EF=BC=8C=E5=80=92=E6=95=B0=EF=BC=8C?= =?UTF-8?q?=E6=AD=A3=E8=B4=9F=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/java2022spring/Calculator.java | 142 +++++++++++++++++++++++------ 1 file changed, 114 insertions(+), 28 deletions(-) diff --git a/src/java2022spring/Calculator.java b/src/java2022spring/Calculator.java index 2baea29..32b64a1 100644 --- a/src/java2022spring/Calculator.java +++ b/src/java2022spring/Calculator.java @@ -4,13 +4,12 @@ import java.awt.*; import javax.swing.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; - public class Calculator { public static void main(String[] args) { - JFrame cal =new JFrame("计算器"); + JFrame cal =new JFrame("璁$畻鍣"); StringBuffer inputNum =new StringBuffer(); JTextField TF = new JTextField(); - TF.setFont(new Font("宋体",Font.PLAIN,30)); + TF.setFont(new Font("瀹嬩綋",Font.PLAIN,30)); TF.setEnabled(false); TF.setPreferredSize(new Dimension(540,100)); TF.setSize(700,700); @@ -18,11 +17,11 @@ public static void main(String[] args) { cal.add(TF,BorderLayout.NORTH); JPanel jp1 = new JPanel(); cal.add(jp1); - jp1.setLayout(new GridLayout(5,4)); + jp1.setLayout(new GridLayout(6,4)); cal.setSize(400,500); cal.setLocation(300,200); - JButton button[] =new JButton[21]; + JButton button[] =new JButton[23]; button[1]=new JButton("CE"); button[2]=new JButton("C"); button[3]=new JButton("DEL"); @@ -43,9 +42,12 @@ public static void main(String[] args) { button[18]=new JButton("0"); button[19]=new JButton("."); button[20]=new JButton("="); + button[21]=new JButton("+/-"); + button[22]=new JButton("1/x"); + - for(int i=1;i<21;i++) { - button[i].setFont(new Font("宋体",Font.BOLD,30)); + for(int i=1;i<23;i++) { + button[i].setFont(new Font("瀹嬩綋",Font.BOLD,30)); jp1.add(button[i]); } @@ -53,9 +55,17 @@ public static void main(String[] args) { button[4].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - inputNum.append('/'); - String str=inputNum.toString(); - TF.setText(str); + String sGet = TF.getText().toString(); +// char operation = '/'; + if(sGet.contains("=")) { + extracted(sGet, '/', inputNum, TF); + + }else{ + + inputNum.append('/'); + String str=inputNum.toString(); + TF.setText(str); + } } }); @@ -88,9 +98,15 @@ public static void main(String[] args) { button[8].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - inputNum.append('*'); - String str=inputNum.toString(); - TF.setText(str); + String sGet = TF.getText().toString(); + if(sGet.contains("=")) { + extracted(sGet, '*', inputNum, TF); + + }else { + inputNum.append('*'); + String str = inputNum.toString(); + TF.setText(str); + } } }); @@ -124,10 +140,15 @@ public static void main(String[] args) { button[12].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - inputNum.append('-'); - String str=inputNum.toString(); - TF.setText(str); - + String sGet = TF.getText().toString(); + if(sGet.contains("=")) { + extracted(sGet, '锛', inputNum, TF); + + }else { + inputNum.append('锛'); + String str = inputNum.toString(); + TF.setText(str); + } } }); @@ -160,10 +181,15 @@ public static void main(String[] args) { button[16].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - inputNum.append('+'); - String str=inputNum.toString(); - TF.setText(str); - + String sGet = TF.getText().toString(); + if(sGet.contains("=")) { + extracted(sGet, '+', inputNum, TF); + + }else { + inputNum.append('+'); + String str = inputNum.toString(); + TF.setText(str); + } } }); @@ -215,16 +241,65 @@ public static void main(String[] args) { button[17].addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - inputNum.append('n'); + + String sGet = TF.getText().toString(); + if(sGet.contains("=")) { + extracted(sGet, 'n', inputNum, TF); + + }else { + inputNum.append('n'); + String str = inputNum.toString(); + TF.setText(str); + } + } + }); + + + button[21].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { +// inputNum.append('-'); + String sGet = TF.getText().toString(); + if(sGet.contains("-")){ + + inputNum.delete(0,1) ; + }else{ + + inputNum.insert(0,'-'); + } String str=inputNum.toString(); TF.setText(str); - + } }); + + button[22].addActionListener(new ActionListener() { + public void actionPerformed(ActionEvent e) { + String sGet = TF.getText().toString(); + if(!sGet.contains("=")){ + + String num = inputNum.toString(); + inputNum.setLength(0); + inputNum.append("1/"+num); + String str=inputNum.toString(); + TF.setText(str); + }else{ + + + String sArgs[] = sGet.split("\\="); + double number[] = new double[2]; + number[1] = Double.parseDouble(sArgs[1]); + inputNum.setLength(0); + inputNum.append("1/"); + inputNum.append(""+number[1]); + String str1 = inputNum.toString(); + TF.setText(str1); + } + } + }); + - - button[20].addActionListener(new ActionListener() { //借鉴 + button[20].addActionListener(new ActionListener() { //鍊熼壌 public void actionPerformed(ActionEvent e) { String sGet = TF.getText().toString(); @@ -239,8 +314,8 @@ public static void main(String[] args) { TF.setText(sGet+"="+ss); } - if(sGet.contains("-")) { - String sArgs[] = sGet.split("\\-"); + if(sGet.contains("锛")) { + String sArgs[] = sGet.split("\\锛"); double number[] = new double[2]; for(int i=0;i<2;i++) { number[i] = Double.parseDouble(sArgs[i]); @@ -279,7 +354,7 @@ public static void main(String[] args) { } if(sGet.contains("n")) { - String sArgs[] = sGet.split("\\n"); + String sArgs[] = sGet.split("n"); double number[] = new double[2]; for(int i=0;i<2;i++) { number[i] = Double.parseDouble(sArgs[i]); @@ -296,4 +371,15 @@ public static void main(String[] args) { cal.setVisible(true); cal.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } + + private static void extracted(String sGet, char operation, StringBuffer inputNum, JTextField TF) { + String sArgs[] = sGet.split("\\="); + double number[] = new double[2]; + number[1] = Double.parseDouble(sArgs[1]); + inputNum.setLength(0); + inputNum.append(""+number[1]); + inputNum.append(operation); + String str= inputNum.toString(); + TF.setText(str); + } } \ No newline at end of file -- Gitee