「java计算程序」java计算程序耗时

博主:adminadmin 2023-01-27 08:42:08 45

今天给各位分享java计算程序的知识,其中也会对java计算程序耗时进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java如何计算程序运行时间

第一种是以毫秒为单位计算的。

[java] view plain copy

//伪代码

long startTime=System.currentTimeMillis();   //获取开始时间

doSomeThing();  //测试的代码段

long endTime=System.currentTimeMillis(); //获取结束时间

System.out.println("程序运行时间: "+(end-start)+"ms");

第二种是以纳秒为单位计算的。 

[java] view plain copy

//伪代码

long startTime=System.nanoTime();   //获取开始时间

doSomeThing();  //测试的代码段

long endTime=System.nanoTime(); //获取结束时间

System.out.println("程序运行时间: "+(end-start)+"ns");

包含所需的包:  import java.lang.System;

「java计算程序」java计算程序耗时

用java编写简易计算器程序

//布局没有调整,需要你自己去调整

代码如下:

import java.awt.FlowLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.*;

public class JieMian extends JFrame implements ActionListener{

JTextField c1;

JTextField c2;

JLabel c;

JLabel equal=new JLabel("=");

JLabel result;

JLabel choose=new JLabel("请选择");

JButton add=new JButton("+");

JButton sub=new JButton("-");

JButton mul=new JButton("×");

JButton div=new JButton("÷");

JButton cal=new JButton("计算");

JButton clear=new JButton("清除");

public JieMian(){

setLayout(new FlowLayout());

c1=new JTextField(5);

c2=new JTextField(5);

c=new JLabel("+");

result=new JLabel("");

add(c1);

add(c);

add(c2);

add(equal);

add(result);

add(choose);

add(add);

add(sub);

add(mul);

add(div);

add(cal);

add(clear);

add.addActionListener(this);

sub.addActionListener(this);

mul.addActionListener(this);

div.addActionListener(this);

cal.addActionListener(this);

clear.addActionListener(this);

setVisible(true);

pack();

}

@Override

public void actionPerformed(ActionEvent e) {

if(e.getSource()==add){

c.setText("+");

}else if(e.getSource()==sub){

c.setText("-");

}else if(e.getSource()==mul){

c.setText("×");

}else if(e.getSource()==div){

c.setText("÷");

}else if(e.getSource()==cal){

double cc1,cc2;

try{

cc1=Double.parseDouble(c1.getText());

}catch(Exception ex){

cc1=0;

}try{

cc2=Double.parseDouble(c2.getText());

}catch(Exception ex){

cc2=0;

}

if(c.getText()=="+"){

result.setText(String.valueOf(cc1+cc2));

}else if(c.getText()=="-"){

result.setText(String.valueOf(cc1-cc2));

}else if(c.getText()=="×"){

result.setText(String.valueOf(cc1*cc2));

}else if(c.getText()=="÷"){

if(cc2!=0){

result.setText(String.valueOf(cc1/cc2));

}else{

result.setText("NAN");

}

}

}else if(e.getSource()==clear){

c1.setText("");

c2.setText("");

result.setText("");

}

}

public static void main(String args[]){

JieMian jiemian=new JieMian();

}

}

如何用JAVA语言编写计算器小程序?

具体代码如下:

import javax.swing.*;

import java.awt.event.*;

import java.awt.*;

public class Calculator  extends JFrame implements ActionListener  {

private JFrame jf;

private JButton[] allButtons;

private JButton clearButton;

private JTextField jtf;

public Calculator() {

//对图形组件实例化

jf=new JFrame("任静的计算器1.0:JAVA版");

jf.addWindowListener(new WindowAdapter(){

public void windowClosing(){

System.exit(0);

}

});

allButtons=new JButton[16];

clearButton=new JButton("清除");

jtf=new JTextField(25);

jtf.setEditable(false);

String str="123+456-789*0.=/";

for(int i=0;iallButtons.length;i++){

allButtons[i]=new JButton(str.substring(i,i+1));

}

}

public void init(){

//完成布局

jf.setLayout(new BorderLayout());

JPanel northPanel=new JPanel();

JPanel centerPanel=new JPanel();

JPanel southPanel=new JPanel();

northPanel.setLayout(new FlowLayout());

centerPanel.setLayout(new GridLayout(4,4));

southPanel.setLayout(new FlowLayout());

northPanel.add(jtf);

for(int i=0;i16;i++){

centerPanel.add(allButtons[i]);

}

southPanel.add(clearButton);

jf.add(northPanel,BorderLayout.NORTH);

jf.add(centerPanel,BorderLayout.CENTER);

jf.add(southPanel,BorderLayout.SOUTH);

addEventHandler();

}

//添加事件监听

public void addEventHandler(){

jtf.addActionListener(this);

for(int i=0;iallButtons.length;i++){

allButtons[i].addActionListener(this);

}

clearButton.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

Calculator.this.jtf.setText("");

}

});

}

//事件处理

public void actionPerformed(ActionEvent e) {

//在这里完成事件处理  使计算器可以运行

String action=e.getActionCommand();

if(action=="+"||action=="-"||action=="*"||action=="/"){

}

}

public void setFontAndColor(){

Font f=new Font("宋体",Font.BOLD,24);

jtf.setFont(f);

jtf.setBackground(new Color(0x8f,0xa0,0xfb));

for(int i=0;i16;i++){

allButtons[i].setFont(f);

allButtons[i].setForeground(Color.RED);

}

}

public void showMe(){

init();

setFontAndColor();

jf.pack();

jf.setVisible(true);

jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void main(String[] args){

new Calculator().showMe();

}

}

用Java编写一个简单的计算器程序

import java.awt.*;

import java.awt.event.*;

public class CalcAppDemo extends Frame{

private TextField t_result;

private Panel p_main; //主面板

private Panel p_num; //数字面板

private Panel p_oper; //操作符面板

private Panel p_show; //显示面板

private Button b_num[]; //数字按钮

private Button b_oper[]; //操作符面板

public CalcAppDemo(String title){

setTitle(title);

t_result = new TextField("0.0", 21);

p_main = new Panel();

p_num = new Panel();

p_oper = new Panel();

p_show = new Panel();

p_main.setLayout(new BorderLayout());

p_num.setLayout(new GridLayout(4, 3, 1, 1));

p_oper.setLayout(new GridLayout(4, 2, 1, 1));

b_num = new Button[12];

for(int i=0; i9; i++)

{

b_num[i] = new Button(new Integer(i+1).toString());

}

b_num[9] = new Button("0");

b_num[10] = new Button("cls");

b_num[11] = new Button(".");

for(int i=0; i12; i++)

{

p_num.add(b_num[i]);

}

b_oper = new Button[8];

b_oper[0] = new Button("+");

b_oper[1] = new Button("-");

b_oper[2] = new Button("*");

b_oper[3] = new Button("/");

b_oper[4] = new Button("pow");

b_oper[5] = new Button("sqrt");

b_oper[6] = new Button("+/-");

b_oper[7] = new Button("=");

for(int i=0; i8; i++) //

{

p_oper.add(b_oper[i]);

}

t_result.setEditable(false);

p_show.add(t_result, BorderLayout.NORTH);

p_main.add(p_show, BorderLayout.NORTH);

p_main.add(p_num, BorderLayout.WEST);

p_main.add(p_oper, BorderLayout.EAST);

this.add(p_main, BorderLayout.CENTER);

setSize(400, 400);

setResizable(false);

pack();

this.addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e)

{

System.exit(0);

}

});

ButtonListener b1 = new ButtonListener();

for(int i=0; i12; i++)

{

b_num[i].addActionListener(b1);

}

for(int i=0; i8; i++)

{

b_oper[i].addActionListener(b1);

}

}

class ButtonListener implements ActionListener

{

private String lastOp; //存储上一此操作符

private String strVal; //存储数字对应的字符串

private double total; //总数

private double number; //存储新输入的数

private boolean firsttime; //判断是否第一次按下的是操作符按钮

private boolean operatorPressed;//判断是否已经按过操作符按钮

ButtonListener()

{

firsttime = true;

strVal = "";

}

//事件处理器

public void actionPerformed(ActionEvent e)

{

String s = ((Button)e.getSource()).getLabel().trim();

if(Character.isDigit(s.charAt(0)))

{//判断是操作数还是操作符

handleNumber(s);

}

else

{

calculate(s);

}

}

//判断是一元操作符还是二元操作符,并根据操作符类型做计算

void calculate(String op)

{

operatorPressed = true;

if(firsttime! isUnary(op))

{

total = getNumberOnDisplay();

firsttime = false;

}

if(isUnary(op))

{

handleUnaryOp(op);

}

else if(lastOp != null)

{

handleBinaryOp(lastOp);

}

if(! isUnary(op))

{

lastOp = op;

}

}

//判断是否一元操作符

boolean isUnary(String s)

{

return s.equals("=")

||s.equals("cls")||s.equals("sqrt")

||s.equals("+/-")||s.equals(".");

}

//处理一元操作符

void handleUnaryOp(String op)

{

if(op.equals("+/-"))

{//

number = negate(getNumberOnDisplay() + "");

t_result.setText("");

t_result.setText(number + "");

return;

}else if(op.equals("."))

{

handleDecPoint();

return;

}else if(op.equals("sqrt"))

{

number = Math.sqrt(getNumberOnDisplay());

t_result.setText("");

t_result.setText(number + "");

return;

}else if(op.equals("="))

{//

if(lastOp!= null !isUnary(lastOp))

{

handleBinaryOp(lastOp);

}

lastOp = null;

firsttime = true;

return;

}else

{

clear();

}

}

//处理二元运算符

void handleBinaryOp(String op)

{

if(op.equals("+"))

{

total +=number;

}else if(op.equals("-"))

{

total -=number;

}else if(op.equals("*"))

{

total *=number;

}else if(op.equals("/"))

{

try

{

total /=number;

}catch(ArithmeticException ae){}

}else if(op.equals("pow"))

total = Math.pow(total, number);

//t_result.setText("");

lastOp = null;

// strVal = "";

number = 0;

t_result.setText(total + "");

}

//该方法用于处理数字按钮

void handleNumber(String s)

{

if(!operatorPressed)

{

strVal += s;

}else

{

operatorPressed = false;

strVal = s;

}

//

number = new Double(strVal).doubleValue();

t_result.setText("");

t_result.setText(strVal);

}

//该方法用于按下"."按钮

void handleDecPoint()

{

operatorPressed = false;

//

if(strVal.indexOf(".")0)

{

strVal += ".";

}

t_result.setText("");

t_result.setText(strVal);

}

//该方法用于将一个数求反

double negate(String s)

{

operatorPressed = false;

//如果是一个整数,去掉小数点后面的0

if(number == (int)number)

{

s = s.substring(0,s.indexOf("."));

}

//如果无"-"增加在该数的前面

if(s.indexOf("-")0)

{

strVal = "-" + s;

}

else

{

strVal = s.substring(1);

}

return new Double(strVal).doubleValue();

}

//将显示框中的值转换成Double

double getNumberOnDisplay()

{

return new Double(t_result.getText()).doubleValue();

}

//清除屏幕并设置所有的标识

void clear()

{

firsttime = true;

lastOp = null;

strVal = "";

total = 0;

number = 0;

t_result.setText("0");

}

}

public static void main(String[] args) {

CalcAppDemo c = new CalcAppDemo("简单的计算器程序");

c.setVisible(true);

}

}

java简单计算程序 求助

package calc;

import java.awt.Container;

import java.awt.FlowLayout;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.FocusEvent;

import java.awt.event.FocusListener;

import javax.swing.ButtonGroup;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JRadioButton;

import javax.swing.JTextField;

public class Frame extends JFrame{

private JLabel label1 = new JLabel("请输入第一个整数");

private JTextField textField1 = new JTextField("", 10);

private JLabel label2 = new JLabel("请输入第二个整数");

private JTextField textField2 = new JTextField("", 10);

private JRadioButton radioButton1 = new JRadioButton("加法");

private JRadioButton radioButton2 = new JRadioButton("减法");

private JRadioButton radioButton3 = new JRadioButton("乘法");

private JRadioButton radioButton4 = new JRadioButton("除法");

ButtonGroup group = new ButtonGroup();

private JLabel label3= new JLabel("此结果为");

private JTextField textField3 = new JTextField("",10);

private JButton button = new JButton("计算");

public Frame() {

this.setTitle("简单计算器");

this.setBounds(100, 100, 440, 300);

this.setResizable(false);

Container c = this.getContentPane();

//网格布局(5行1列)

JPanel p0 = new JPanel(new GridLayout(5, 1));

//每行中使用流式布局

JPanel p1 = new JPanel(new FlowLayout());

JPanel p2 = new JPanel(new FlowLayout());

JPanel p3 = new JPanel(new FlowLayout());

JPanel p4 = new JPanel(new FlowLayout());

JPanel p5 = new JPanel(new FlowLayout());

//将每行的布局面板放置在网格布局的面板p0上

p0.add(p1);p0.add(p2);p0.add(p3);p0.add(p4);p0.add(p5);

//将单选按钮组件编组

group.add(radioButton1);group.add(radioButton2);group.add(radioButton3);group.add(radioButton4);

p1.add(label1);

p1.add(textField1);

p2.add(label2);

p2.add(textField2);

p3.add(radioButton1);

//设置默认选中

radioButton1.setSelected(true);

p3.add(radioButton2);

p3.add(radioButton3);

p3.add(radioButton4);

p4.add(label3);

p4.add(textField3);

p5.add(button);

c.add(p0);

//文本框动作监听事件//设置只能输入数字

textField1.addFocusListener(new FocusListener() {

@Override

public void focusLost(FocusEvent e) {

String str1 = textField1.getText().trim();

if (!str1.matches("[1-9][0-9]*")) {

JOptionPane.showMessageDialog(null, "请输入一个整数!");

textField1.setText("");

textField1.requestFocus();

}

}

@Override

public void focusGained(FocusEvent e) { }

});

textField2.addFocusListener(new FocusListener() {

@Override

public void focusLost(FocusEvent e) {

String str2 = textField2.getText().trim();

if (!str2.matches("[1-9][0-9]*")) {

JOptionPane.showMessageDialog(null, "请输入一个整数!");

textField2.setText("");

textField2.requestFocus();

}

}

@Override

public void focusGained(FocusEvent e) { }

});

//按钮动作监听事件

button.addActionListener(new ActionListener() {

@Override

public void actionPerformed(ActionEvent e) {

if (radioButton1.isSelected()) {//选择加法

textField3.setText(Integer.toString(Integer.parseInt(textField1.getText()) + Integer.parseInt(textField2.getText())));

}else if (radioButton2.isSelected()) {//选择减法

textField3.setText(Integer.toString(Integer.parseInt(textField1.getText()) - Integer.parseInt(textField2.getText())));

}else if (radioButton3.isSelected()) {//选择乘法

textField3.setText(Integer.toString(Integer.parseInt(textField1.getText()) * Integer.parseInt(textField2.getText())));

}else {//选择除法

textField3.setText(Integer.toString(Integer.parseInt(textField1.getText()) / Integer.parseInt(textField2.getText())));

}

}

});

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

}

public static void main(String[] args) {

new Frame();

}

}

java计算程序的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java计算程序耗时、java计算程序的信息别忘了在本站进行查找喔。

The End

发布于:2023-01-27,除非注明,否则均为首码项目网原创文章,转载请注明出处。