怎么实现一个计算器 我写了一个但是不能支持连续加减乘除, 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 import java.awt.BorderLayout;import java.awt.Color;import java.awt.FlowLayout;import java.awt.Fontimport java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener; import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JTextArea; public class calculator implements ActionListener { JFrame frame=new JFrame(); private JButton[] b; private JButton b2; private JTextArea t; private JButton jbtnsqrt; private boolean flag=false; public calculator() { jbtnsqrt=new JButton("Sqrt"); b=new JButton[16]; b2=new JButton("C"); String str="123+456-789x0.=/"; for(int i=0;i<b.length;i++){ b[i]=new JButton(str.substring(i,i+1)); } } private void setFontAndColor(){ Font f=new Font("宋体",Font.BOLD,18); t.setFont(f); for(int i=0;i<b.length;i++){ b[i].setFont(f); } } private void init(){ t=new JTextArea(1,20); JPanel northPanel=new JPanel(); JPanel centerPanel=new JPanel(); northPanel.setLayout(new FlowLayout()); centerPanel.setLayout(new GridLayout(4,4)); northPanel.add(t); northPanel.add(b2); northPanel.add(jbtnsqrt); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); b2.setBackground(Color.RED); b2.setForeground(Color.green); b2.addActionListener(this); jbtnsqrt.addActionListener(this); for(int i=0;i<b.length;i++){ centerPanel.add(b[i]); b[i].addActionListener(this); } frame.setLayout(new BorderLayout()); frame.add(northPanel,BorderLayout.NORTH); frame.add(centerPanel, BorderLayout.CENTER); setFontAndColor(); frame.setLocation(340,300); frame.setVisible(true); frame.pack(); frame.setResizable(false); } public void actionPerformed(ActionEvent e) { if(e.getSource()==b2) t.setText(null);//点击C时清空文本域 else if(e.getSource()==b[14]){ //点击=时读取文本域的字符串 String s=t.getText().trim(); String[] rs; if(s.contains("+")){ rs=s.split("\\+"); double d=Double.parseDouble(rs[0])+Double.parseDouble(rs[1]); t.setText(String.valueOf(d)); } else if(s.contains("-")){ rs=s.split("-"); double d=Double.parseDouble(rs[0])-Double.parseDouble(rs[1]); t.setText(String.valueOf(d)); } else if(s.contains("x")){ rs=s.split("x"); double d=Double.parseDouble(rs[0])*Double.parseDouble(rs[1]); t.setText(String.valueOf(d)); } else if(s.contains("/")){ rs=s.split("/"); double d=Double.parseDouble(rs[0])/Double.parseDouble(rs[1]); t.setText(String.valueOf(d)); } flag=true; }else if(e.getSource()==jbtnsqrt){ String s=t.getText().trim(); double d=Math.sqrt(Double.parseDouble(s)); t.setText(String.valueOf(d)); } else { if(flag){ t.setText(""); }// 不点击=和C时,将字符串追加在文本域中 t.append(e.getActionCommand()); flag=false; } } public static void main(String[] args) { new calculator().init(); }} switch 加上 while <script type="text/javascript" src="tool/jquery-1.8.3.js"></script> <script type="text/javascript"> $(function(){ $(":button").click(function (){ var a=$(this).attr("value"); if(a!="="){ $("#sj").val($("#sj").val()+a); }else{ var a=$("#sj").val(); var v=eval(a); $("#jg").val(v); $("#sj").val(""); } }); }); </script> </head> <body> <button value="1">1</button> <button value="2">2</button> <button value="3">3</button><br> <button value="4">4</button> <button value="5">5</button> <button value="6">6</button><br> <button value="7">7</button> <button value="8">8</button> <button value="9">9</button><br> <button value="0">0</button> <button value="+">+</button> <button value="-">-</button><br> <button value="*">*</button> <button value="/">/</button> <button value="=">=</button><br> <input id="sj">=<input id="jg"> </body>用JQuery写的 关于IO中FileInputStream流,以下代码抛异常。 equals的问题 mysql的驱动安装 谁有“协议封装”的例子? 多线程并发访问static方法,会不会出现互相干扰的情况? 数据结合转换的问题? 究竟是同步的快还是不同步的东东快???相当不解。 请问大家如何实现一个提示的功能呢? 请教 无论如何,请各位看看,7天了啊!(打扰了,路人甲兄) java 怎么实现c语言里的双井号功能,就是连接字符## 求大神指教
<script type="text/javascript">
$(function(){
$(":button").click(function (){
var a=$(this).attr("value");
if(a!="="){
$("#sj").val($("#sj").val()+a);
}else{
var a=$("#sj").val();
var v=eval(a);
$("#jg").val(v);
$("#sj").val("");
}
});
});
</script>
</head>
<body>
<button value="1">1</button>
<button value="2">2</button>
<button value="3">3</button><br>
<button value="4">4</button>
<button value="5">5</button>
<button value="6">6</button><br>
<button value="7">7</button>
<button value="8">8</button>
<button value="9">9</button><br>
<button value="0">0</button>
<button value="+">+</button>
<button value="-">-</button><br>
<button value="*">*</button>
<button value="/">/</button>
<button value="=">=</button><br>
<input id="sj">=<input id="jg">
</body>
用JQuery写的