JAVA程序

JAVA程序,第1张

import javaxswing;

import javaawt;

import javaawtevent;

public class Calculator3 extends JFrame implements ActionListener {

private boolean dotExist, operated, equaled; // 帮助运算的布尔变量

private double storedNumber; // 目前的结果

private char lastOperator; // 表示上一运算符

private JTextField operation; // 结果栏

private JButton dot, plus, minus, multi, div, sqrt, equal, changePN, clear; // 运算符

private JButton[] numbers; // 数字

// 构造者

public Calculator3() {

setTitle("Calculator");

// 初始化变量

dotExist = false; // 表示当前的数是否有小数点

operated = false; // 表示任意运算符是否被按下

equaled = false; // 表示等号是否被按下

storedNumber = 0;

lastOperator = '';

// 初始化窗口变量

operation = new JTextField("0");

operationsetEditable(false);

numbers = new JButton[10];

for (int i = 0; i < 10; i++)

numbers[i] = new JButton("" + i);

dot = new JButton("");

plus = new JButton("+");

minus = new JButton("-");

multi = new JButton("");

div = new JButton("/");

sqrt = new JButton("√");

equal = new JButton("=");

changePN = new JButton("±");

clear = new JButton("AC");

// 将窗口物体放入窗口

GridBagLayout layout = new GridBagLayout();

getContentPane()setLayout(layout);

addComponent(layout, operation, 0, 0, 4, 1);

addComponent(layout, numbers[1], 1, 0, 1, 1);

addComponent(layout, numbers[2], 1, 1, 1, 1);

addComponent(layout, numbers[3], 1, 2, 1, 1);

addComponent(layout, numbers[4], 2, 0, 1, 1);

addComponent(layout, numbers[5], 2, 1, 1, 1);

addComponent(layout, numbers[6], 2, 2, 1, 1);

addComponent(layout, numbers[7], 3, 0, 1, 1);

addComponent(layout, numbers[8], 3, 1, 1, 1);

addComponent(layout, numbers[9], 3, 2, 1, 1);

addComponent(layout, dot, 4, 0, 1, 1);

addComponent(layout, numbers[0], 4, 1, 1, 1);

addComponent(layout, sqrt, 4, 2, 1, 1);

addComponent(layout, plus, 1, 3, 1, 1);

addComponent(layout, minus, 2, 3, 1, 1);

addComponent(layout, multi, 3, 3, 1, 1);

addComponent(layout, div, 4, 3, 1, 1);

addComponent(layout, equal, 5, 0, 2, 1);

addComponent(layout, changePN, 5, 2, 1, 1);

addComponent(layout, clear, 5, 3, 1, 1);

}

// 对按钮进行反应的方法

public void actionPerformed(ActionEvent e) {

JButton btn = (JButton) egetSource();

if (btn == clear) {

operationsetText("0");

dotExist = false;

storedNumber = 0;

lastOperator = '';

} else if (btn == equal) {

operate('=');

equaled = true;

} else if (btn == plus) {

operate('+');

equaled = false;

} else if (btn == minus) {

operate('-');

equaled = false;

} else if (btn == multi) {

operate('');

equaled = false;

} else if (btn == div) {

operate('/');

equaled = false;

} else if (btn == changePN) {

operate('p');

operate('=');

equaled = true;

} else if (btn == sqrt) {

operate('s');

operate('=');

equaled = true;

} else {

if (equaled)

storedNumber = 0;

for (int i = 0; i < 10; i++)

if (btn == numbers[i]) {

if (operationgetText()equals("0"))

operationsetText("" + i);

else if (!operated)

operationsetText(operationgetText() + i);

else {

operationsetText("" + i);

operated = false;

}

}

if (btn == dot && !dotExist) {

operationsetText(operationgetText() + "");

dotExist = true;

}

}

}

// 进行运算的方法

private void operate(char operator) {

double currentNumber = DoublevalueOf(operationgetText())

doubleValue();

if (lastOperator == '')

storedNumber = currentNumber;

else if (lastOperator == '+')

storedNumber += currentNumber;

else if (lastOperator == '-')

storedNumber -= currentNumber;

else if (lastOperator == '')

storedNumber = currentNumber;

else if (lastOperator == '/')

storedNumber /= currentNumber;

else if (lastOperator == 'p')

storedNumber = -1;

else if (lastOperator == 's')

storedNumber = Mathsqrt(currentNumber);

else if (lastOperator == '=' && equaled)

storedNumber = currentNumber;

operationsetText("" + storedNumber);

operated = true;

lastOperator = operator;

}

// 快捷使用GridBagLayout的方法

private void addComponent(GridBagLayout layout, Component component,

int row, int col, int width, int height) {

GridBagConstraints constraints = new GridBagConstraints();

constraintsfill = GridBagConstraintsBOTH;

constraintsinsets = new Insets(10, 2, 10, 2);

constraintsweightx = 100;

constraintsweighty = 100;

constraintsgridx = col;

constraintsgridy = row;

constraintsgridwidth = width;

constraintsgridheight = height;

layoutsetConstraints(component, constraints);

if (component instanceof JButton)

((JButton) component)addActionListener(this);

getContentPane()add(component);

}

// 主方法初始化并显示窗口

public static void main(String[] args) {

Calculator3 calc = new Calculator3();

calcsetSize(290, 400);

calcsetVisible(true);

}

}

JAR命令是JDK工具包中的一个工具。如果你已经为java配置过Path环境变量,那么可以直接在命令行下使用。而如果你使用IDE开发,大多数IDE已经配置好了JAR工具,可以直接使用。

下面说一下如果没有IDE,如何使用命令行打包JAR。(假定你已经配置好JDK的Path路径)

1先把项目中所有的源文件都编译,并按包路径组织好各字节码文件的文件夹层次结构。(现在假定你把此项目的字节码文件都放在E:\MyProject的各级下了)

2自己可以不用创建清单文件,现在16的JDK的JAR工具自己会生成清单文件。

在命令提示符窗口中执行命令:

JAR -cvfe 你想打包成的JAR文件名 你程序的主类名 -C E:\MyProject

"打包目标JAR文件名"需要自己起。有必要的话,可以带有路径。

"你程序的主类名"就是你将来双击JAR时,将会自动启动的那个类名。如果有,需要带有包路径。

E:\MyProject就是刚才你字节码文件的存放路径。

如果你的程序没有要运行的主类,那就这样执行:

JAR -cvf 你想打包成的JAR文件名 -C E:\MyProject

注意JAR三个字母大小写均可,但参数中的字母必须大小写区分的。

还有行末的一个句点不能丢:

1点击开始——所有程序——附件——记事本,新建记事本,输入以下代码:

class HelloWorld { public static void main(String args[]) { Systemoutprintln("Hello World"); } }

2点击记事本的文件菜单——保存——将文件名命名为HelloWorldjava——点击保存

3点击开始——运行——输入cmd——确定,进入DOS,更换盘符到 HelloWorldjava 文件所在目录 D:\Java,键入 javac HelloWorldjava 后回到文件所在目录 D:\Java,程序会自动新建一个文件HelloWorldclass,这个文件就是我们编写出来的程序。

4再次键入 java HelloWorld 数秒后DOS将显示 Hello World。

以上就是关于JAVA程序全部的内容,包括:JAVA程序、有关JAVA应用程序、java程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10080972.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存