java计算器源代码,java计算器简单代码

2024-04-06 我爱学习 33阅读 回答者:admin
最佳答案今天给各位分享java计算器源代码的知识,其中也会对java计算器简单代码进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站!

百度安全验证

百度安全验证

计算器java代码

i来自mport java.awt.Color;import java.awt.Font;import java.awt.GridLayout;import java.各训容待病营树减awt.event.Ac省践明包鸡古tionEvent;import java.awt.event.ActionListener;import javax.swin织饭g.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.sw360问答ing.JTextField;imp武般理你际迅建哪海赵ort javax象杨松真大千慢.swing.WindowConsta斗解护著轻紧林严更nts;impor住负胶轴t javax.swing.border.LineBorder;cl沉矛便套界ass Normal没矛谈地刘办差青算者{ double i,j; public Normal(d法再帝德冷父言位路极威ouble num1,double num2){ i除专=num1; j=num2; } p展犯呢边修出需步ublic double puls(){ return i+j; } public double subtract(){ return i-j; }兴核完书乎举苗富public double mul用体法卷tiply(){ ret盟革背主urn i*j; } pub笔判烟守lic double divide(){ return i/j; } pub知划套编武停天lic double surpuls(){ return i%j; }}class scientific extends Normal{ public scientific(int num1, int num2) { super(num1, num2); }}public class calc extends JFrame{ public static void main(String[] args) { viewNormal VN= new viewNormal("normal"); }}class viewNormal extends JFrame implements ActionListener{ JPanel jp1 = new JPanel(new GridLayout(4,3,5,5)); JPanel jp2 = new JPanel(new GridLayout(5,1,5,5)); JLabel jl; JButton[] jb; JButton jbs,jbo,jba,jbb,jbc,jby; StringBuffer sb = new StringBuffer(); Normal normal; int dot=0; double fnum=0; double lnum=0; double result; String sign=null; public viewNormal(String title){ setTitle(title); setLayout(null); setVisible(true); setBounds(200,200,305,350); setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); jb= new JButton[12]; for(int i=0;i9;i++){ jb[i]=new JButton(""+(i+1)); jp1.add(jb[i]); jb[i].addActionListener(this); } jb[9]=new JButton("."); jb[10]=new JButton("0"); jb[11]=new JButton("="); jb[9].addActionListener(this); jb[10].addActionListener(this); jb[11].addActionListener(this); jp1.add(jb[9]); jp1.add(jb[10]); jp1.add(jb[11]); jp1.setBounds(10, 100, 200, 200); jbs= new JButton("+");jbo= new JButton("-");jba= new JButton("*"); jbb= new JButton("/");jby= new JButton("%");jbc= new JButton("C"); jbs.addActionListener(this);jbo.addActionListener(this);jba.addActionListener(this); jbb.addActionListener(this);jby.addActionListener(this);jbc.addActionListener(this); //jp2.add(jby); jp2.add(jbs);jp2.add(jbo);jp2.add(jba);jp2.add(jbb);jp2.add(jbc); jp2.setBounds(215, 100, 70, 200); jl= new JLabel("0",JLabel.RIGHT); jl.setFont(new Font("Batang",Font.BOLD, 20)); jl.setBorder(new LineBorder(***.black,2)); jl.setBackground(Color.white); jl.setBounds(10, 40, 275, 50); jl.setOpaque(true); add(jl); add(jp1); add(jp2); } //+ public void sum(){ lnum=Double.parseDouble(sb.toString()); normal=new Normal(fnum,lnum); fnum=normal.puls(); result=fnum; } //- private void sub() { System.out.println(sb.toString()); lnum=Double.parseDouble(sb.toString()); normal=new Normal(fnum,lnum); fnum=normal.subtract(); result=fnum; } //* private void mul() { lnum=Double.parseDouble(sb.toString()); normal=new Normal(fnum,lnum); fnum=normal.multiply(); result=fnum; } // / private void div() { lnum=Double.parseDouble(sb.toString()); normal=new Normal(fnum,lnum); fnum=normal.divide(); result=fnum; } //% private void sur() { lnum=Double.parseDouble(sb.toString()); normal=new Normal(fnum,lnum); fnum=normal.surpuls(); result=fnum; } // = private void same(){ if(sign.equals("+")){ sum(); } if(sign.equals("-")){ sub(); } if(sign.equals("*")){ mul(); } if(sign.equals("/")){ div(); } if(sign.equals("%")){ sur(); } } //result public void Result(){ if(result%1!=0) jl.setText(""+result); else { int i=(int)result; jl.setText(""+i); } } @Override public void actionPerformed(ActionEvent e) { //System.out.println(sb.toString()); // 1~9 for(int i=0;i9;i++){ if(e.getSource()==jb[i]!sb.toString().equals("0")){ sb.append(jb[i].getText()); jl.setText(sb.toString()); } else if(e.getSource()==jb[i]sb.toString().equals("0")){ int d=sb.length(); sb.delete(0, d); sb.append(jb[i].getText()); jl.setText(sb.toString()); } } // 0 if(e.getSource()==jb[10]!sb.toString().equals("0")){ sb.append(jb[10].getText()); jl.setText(sb.toString()); } // . if(e.getSource()==jb[9]dot==0!sb.toString().equals("")){ dot++; sb.append(jb[9].getText()); jl.setText(sb.toString()); } // = if(e.getSource()==jb[11]!sb.toString().equals("")){ same(); Result(); int d=sb.length(); sb.delete(0, d); dot=0; } // + if(e.getSource()==jbs!sb.toString().equals("")){ if(sign!="+"sign!=null) same(); else sum(); sign ="+"; Result(); int d=sb.length(); sb.delete(0, d); dot=0; } //- if(e.getSource()==jbo!sb.toString().equals("")){ if(fnum==0) fnum=2*Double.parseDouble(sb.toString()); if(sign!="-"sign!=null) same(); else sub(); sign ="-"; Result(); int d=sb.length(); sb.delete(0, d); dot=0; } //* if(e.getSource()==jba!sb.toString().equals("")){ if(fnum==0) fnum=1; if(sign!="*"sign!=null) same(); else mul(); sign ="*"; Result(); int d=sb.length(); sb.delete(0, d); dot=0; } // / if(e.getSource()==jbb!sb.toString().equals("")){ if(fnum==0) fnum=Math.pow(Double.parseDouble(sb.toString()),2); if(sign!="/"sign!=null) same(); else div(); sign ="/"; Result(); int d=sb.length(); sb.delete(0, d); dot=0; } //%// if(e.getSource()==jby!sb.toString().equals("")){// if(fnum==0){// fnum=Double.parseDouble(sb.toString());// result=fnum;// }// else { // if(sign!="%"sign!=null)// same();// else{// lnum=Double.parseDouble(sb.toString());// normal=new Normal(fnum,lnum);// fnum=normal.surpuls();// result=fnum;// }// }// sign ="%";// Result();// int d=sb.length();// sb.delete(0, d);// dot=0;// } //clear if(e.getSource()==jbc){ int d=sb.length(); sb.delete(0, d); jl.setText("0"); dot=0; fnum=0; lnum=0; sign=null; } }}class viewScientific extends viewNormal{ public viewScientific(String title){ super(title); setBounds(200,200,800,500); }}//等号以后输入符号用不了, String转 double 本来就有错误,你可以用我的扩展成科学型的。

用java写个简单的加减计算器

import java.util.Scanner;

public class JiSuanQi {

public static void main(String[] args){

System.out.println("请输入两个数:");

Scanner scanner = new Scanner(System.in);

int res = 0;

int a = scanner.nextInt();

int b = scanner.nextInt();

System.out.println("请选择你的操作1.相加,2.相减:");

int cho = scanner.nextInt();

if(cho == 1){

res = a + b;

System.out.println(a+" + "+b+" = "+res);

}else if(cho == 2){

res = a - b;

System.out.println(a+" - "+b+" = "+res);

}else{

System.out.println("对不起没有对应操作!");

}

}

}

这是我自己写的,有不明白的地方给我留言。祝你学习进步,加油。

声明:天盟网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系 160640@qq.com
广告位招租
广告位招租