//声明需要插入的包
import?java.awt.*;
import?java.lang.Object;
import?java.lang.String;
import?javax.swing.*;
import?java.awt.event.*;
import?java.awt.TextComponent;
//声明一个主类jisuanqi,继续窗口类Frame
public?class?jisuanqi?extends?Frame{
//声明文本框,用于接收数字和计算
TextField?numText;
//声明面板容器,用于存放各种按钮
Panel?anjianPanel;
//构造方法初始化按钮
jisuanqi(String?title){
super(title);
anjian1=new?Button("0");
anjian11=new?Button("◆");
//初始化文本框,将文本的值设置为"0"
numText=new?TextField("0");
//实例化面板;
anjianPanel=new?Panel();
//设置按钮
anjianPanel.setLayout(new?FlowLayout());
//实例化按钮
anjian1.addActionListener(new?anjianAction());
anjian10.addActionListener(new?anjianAction());
anjian11.addActionListener(new?anjianAction());
//将各个按钮添加到面板容器中
anjianPanel.add(anjian1);
anjianPanel.add(anjian10);
anjianPanel.add(anjian11);
//为文本框添加事件
numText.addTextListener(new?TextListener()?{
public?void?textValueChanged(TextEvent?e)?{
if(numText.getText().indexOf("0",0)!=-1){
numText.getText().replace("0","");
}
});
addWindowListener(new?WindowAdapter()?{
public?void?windowClosing(WindowEvent?e)?{
System.exit(0);
//将文本框放置在顶部
add(numText,BorderLayout.NORTH);
//添加按钮
add(anjianPanel,BorderLayout.CENTER);
//设置文本框属性
numText.setEditable(false);
//没有任何操作的值
int?num=0;
//numStr是文本框的值
String?numStr=null;
Boolean?chinage=false;
public?int?check(){
numStr?=?numText.getText();
if?(numStr.indexOf("◆")?==?0)?{
numStr?=?numStr.replace('◆',?'0');
num?=?num?◆?Integer.parseInt(numStr);
return?num;
}else
if?(numStr.indexOf("-")?!=?-1)?{
numStr?=?numStr.replace("-",?"0");
num?=?num?-?Integer.parseInt(numStr);
else
if(numStr.indexOf("*")!=-1){
numStr=numStr.replace('*','0');
num?=?num?*?Integer.parseInt(numStr);
if(numStr.indexOf("/")!=-1){
numStr=numStr.replace('/','0');
try{
num?=?num?/?Integer.parseInt(numStr);
}catch(ArithmeticException?e){
JOptionPane.showMessageDialog(null,"除数不能为空!","消息!",1);
return?num;}}
return?num=Integer.parseInt(numStr);}
//创建事件
private?class?anjianAction?implements?ActionListener{
public?void?actionPerformed(ActionEvent?event){
if(event.getActionCommand()=="0"){
if(!numText.getText().equals("0"))
numText.setText(numText.getText()◆0);}
if(event.getActionCommand()=="1")
numText.setText(numText.getText()◆1);
if(event.getActionCommand()=="清空"){
numText.setText("0");
num=0;}
if(event.getActionCommand()=="◆"){
//调用check();方法
check();
numText.setText("◆");}
if(event.getActionCommand()=="-"){
numText.setText("-");}
if(event.getActionCommand()=="*"){
numText.setText("*");}
if(event.getActionCommand()=="/"){
if(numStr=="/0"){
JOptionPane.showMessageDialog(null,"除数不能为空!","消息!",1);}
numText.setText("/");}
if(event.getActionCommand()=="="){
numText.setText(""◆num);}}}
public?static?void?main(String[]?args){
jisuanqi?jisuanqi=new?jisuanqi("计数器");
//设置窗口大小
//设置界面属性
jisuanqi.setVisible(true);
}}
如有疑问请继续追问,我将竭尽全力为您解答
学java的时候自己编的,很简单,能够连续输入计算式后进行计算
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.NumberFormat;
import java.util.ArrayList;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
/**简易计算器,能够进行简单的计算
*
*/
public class CalculatorA
implements ActionListener{
private JFrame frame;
private JTextField field;
private JButton[] allButtons;
private JButton clearButton;
// private JButton backButton;
String result="";//保存结果
StringBuilder sb = new StringBuilder();//保存要进行的计算式
int x = 0; //用来判断上一次的事件类型
ArrayListString arrayList = new ArrayListString();//保存计算式,通过方法进行运算
public CalculatorA(){
frame = new JFrame("我的计算器v1.1");
for(int i=0;iallButtons.length;i◆◆){
allButtons[i]= new JButton(str.substring(i,i◆1));
clearButton = new JButton("CLEAR");
// backButton = new JButton("——");
init();
setFondAndColor();
addEventHander();
public void init(){
frame.setLayout(new BorderLayout());
JPanel northPanel = new JPanel();
JPanel centerPanel = new JPanel();
JPanel southPanel = new JPanel();
northPanel.setLayout(new FlowLayout());
southPanel.setLayout(new FlowLayout());
northPanel.add(field);
centerPanel.add(allButtons[i]);
southPanel.add(clearButton);
//southPanel.add(backButton);
frame.add(northPanel,BorderLayout.NORTH);
frame.add(centerPanel,BorderLayout.CENTER);
frame.add(southPanel,BorderLayout.SOUTH);
//设置输入字体
public void setFondAndColor(){
field.setForeground(Color.RED);
//设置字体从右起始
field.setHorizontalAlignment(JTextField.RIGHT);
public void showMi(){
frame.pack();
frame.setResizable(false);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
public void addEventHander(){
allButtons[i].addActionListener(this);
clearButton.addActionListener(this);
// backButton.addActionListener(this);
@Override
public void actionPerformed(ActionEvent e) {
String str = e.getActionCommand();//取得当前事件返回的值
if(x == 0){ //当x为0时表示还没有进行输入
result=str;
sb.append(str);
field.setText(str);
x = 1;
else if(x == 1){
result = result ◆str;
field.setText(result);
sb.delete(0,sb.length());
result = result◆str;
result = str;
arrayList.clear();
result ="";
else{
else if("◆*-/".indexOf(str)!=-1){
if(x == 0){
field.setText("");
result = result ◆ str;
arrayList.add(sb.toString());
arrayList.add(str);
field.setText(result◆str);
arrayList.add(result);
else if("=".equals(str)){
field.setText("0");
result = "0";
arrayList = getResult(arrayList);
result = arrayList.get(0);
}catch(Exception e1){
field.setText("数据格式异常");
x = 0;
field.setText("数据格式错误.....");
else {
else if("CLEAR".equals(str)){
arrayList.add("0");
if(result.length()1){
result = result.substring(0,result.length()-1);
if(sb.length()0){
sb.delete(sb.length()-1,sb.length());
sb.delete(0,1);
result = "";
public static ArrayListString getResult(ArrayListString list){
String res = null;
String[] s = {"/","*","-","◆"};
int i=0;
if(list.size()1){
for(;is.length;){
if(s[i].equals("/")){
for(int j=0;jlist.size();j◆◆){
if(list.get(j).equals(s[i])){
res = Double.toString(Double.parseDouble(list.get(j-1))/Double.parseDouble(list.get(j◆1)));
//本地的数据格式
NumberFormat nf = NumberFormat.getInstance();
res = nf.format(Double.parseDouble(res));
res = getChange(res);
list.set(j-1,res);
list.remove(j);
getResult(list);
i◆◆;
else if(s[i].equals("*")){
res = Double.toString(Double.parseDouble(list.get(j-1))*Double.parseDouble(list.get(j◆1)));
else if(s[i].equals("-")){
res = Double.toString(Double.parseDouble(list.get(j-1))-Double.parseDouble(list.get(j◆1)));
NumberFormat nf = NumberFormat.getNumberInstance();
res = Double.toString(Double.parseDouble(list.get(j-1))◆Double.parseDouble(list.get(j◆1)));
return list;
//对数字字符串进行排除不必要符号
public static String getChange(String res){
String s_temp = "";
char[] c = new char[res.length()];
for(int k=0;kc.length;k◆◆){
c[k] = res.charAt(k);
s_temp ◆= c[k];
return s_temp;
public static void main(String[] args){
new CalculatorA().showMi();
最简单的java代码肯定就是这个了,如下:
public class MyFirstApp
{
public static void main(String[] args)
System.out.print("Hello world");
以上就是土嘎嘎小编为大家整理的java代码最简单的方法相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!