Java做加減乘除代碼 加減乘除的java代碼

用Java編寫實現加減乘除,界面如下

用Java編寫的實現加減乘除的程序如下

從事服務器托管德陽,服務器租用,云主機,網頁空間,域名與空間,CDN,網絡代維等服務。

import?java.awt.BorderLayout;

import?java.awt.event.ActionEvent;

import?java.awt.event.ActionListener;

import?javax.swing.JButton;

import?javax.swing.JComboBox;

import?javax.swing.JFrame;

import?javax.swing.JLabel;

import?javax.swing.JOptionPane;

import?javax.swing.JPanel;

import?javax.swing.JTextField;

public?class?Calculator?extends?JFrame?implements?ActionListener{

JLabel?jl1=new?JLabel("第一個數");

JLabel?jl2=new?JLabel("運算符");

JLabel?jl3=new?JLabel("第二個數");

JLabel?jl4=new?JLabel("結果:");

JTextField?jtf1=new?JTextField(8);

JTextField?jtf2=new?JTextField(8);

JTextField?jtf3=new?JTextField(8);

String?a[]={"+","-","*","/"};

JComboBoxString?jcb=new?JComboBoxString(a);

JButton?jb1=new?JButton("計算");

JButton?jb2=new?JButton("退出");

JPanel?jp=new?JPanel();

Calculator(){

setTitle("計算器");

jb1.addActionListener(this);

jb2.addActionListener(this);

jp.setLayout(null);

jl1.setBounds(30,?30,?80,?20);

jl2.setBounds(110,?30,?80,?20);

jl3.setBounds(190,?30,?80,?20);

jtf1.setBounds(30,?60,?70,?20);

jcb.setBounds(110,?60,?70,20);

jtf2.setBounds(190,?60,?70,?20);

jl4.setBounds(80,?110,?40,?20);

jtf3.setBounds(110,?110,?100,?20);

jb1.setBounds(60,?160,?60,?25);

jb2.setBounds(170,?160,?60,?25);

jp.add(jl1);jp.add(jl2);jp.add(jl3);

jp.add(jtf1);jp.add(jcb);jp.add(jtf2);

jp.add(jl4);jp.add(jtf3);

jp.add(jb1);jp.add(jb2);

add(jp,BorderLayout.CENTER);

setSize(300,?300);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setLocationRelativeTo(null);

setVisible(true);

}

public?static?void?main(String[]?args)?{

new?Calculator();

}

@Override

public?void?actionPerformed(ActionEvent?ae)?{

if(ae.getSource()==jb1){

String?c=((String)?jcb.getSelectedItem()).trim();

if(jtf1.getText().trim().equals("")){

JOptionPane.showMessageDialog(this,?"第一個數不能為空");

jtf1.requestFocus();

return;

}

if(jtf2.getText().trim().equals("")){

JOptionPane.showMessageDialog(this,?"第二個數不能為空");

jtf2.requestFocus();

return;

}

double?num1=Double.parseDouble(jtf1.getText().trim());

double?num2=Double.parseDouble(jtf2.getText().trim());

double?num3?=?0;

switch(c){

case?"+":num3=num1+num2;break;

case?"-":num3=num1-num2;break;

case?"*":num3=num1*num2;break;

case?"/":

if(num2==0){

JOptionPane.showMessageDialog(this,?"除數不能為0");

jtf2.requestFocus();

return;

}else{

num3=num1/num2;

break;

}

}

jtf3.setText(String.valueOf(num3));

}

if(ae.getSource()==jb2){

System.exit(0);

}

}

}

運行結果

java簡單加減乘除

使用BigDecimal并且一定要用String來夠造。

實現方法如下:

import java.math.BigDecimal;

/**

* 由于Java的簡單類型不能夠精確的對浮點數進行運算,這個工具類提供精

* 確的浮點數運算,包括加減乘除和四舍五入。

*/

public class Arith{

//默認除法運算精度

private static final int DEF_DIV_SCALE = 10;

//這個類不能實例化

private Arith(){

}

/**

* 提供精確的加法運算。

* @param v1 被加數

* @param v2 加數

* @return 兩個參數的和

*/

public static double add(double v1,double v2){

BigDecimal b1 = new BigDecimal(Double.toString(v1));

BigDecimal b2 = new BigDecimal(Double.toString(v2));

return b1.add(b2).doubleValue();

}

/**

* 提供精確的減法運算。

* @param v1 被減數

* @param v2 減數

* @return 兩個參數的差

*/

public static double sub(double v1,double v2){

BigDecimal b1 = new BigDecimal(Double.toString(v1));

BigDecimal b2 = new BigDecimal(Double.toString(v2));

return b1.subtract(b2).doubleValue();

}

/**

* 提供精確的乘法運算。

* @param v1 被乘數

* @param v2 乘數

* @return 兩個參數的積

*/

public static double mul(double v1,double v2){

BigDecimal b1 = new BigDecimal(Double.toString(v1));

BigDecimal b2 = new BigDecimal(Double.toString(v2));

return b1.multiply(b2).doubleValue();

}

/**

* 提供(相對)精確的除法運算,當發生除不盡的情況時,精確到

* 小數點以后10位,以后的數字四舍五入。

* @param v1 被除數

* @param v2 除數

* @return 兩個參數的商

*/

public static double div(double v1,double v2){

return div(v1,v2,DEF_DIV_SCALE);

}

/**

* 提供(相對)精確的除法運算。當發生除不盡的情況時,由scale參數指

* 定精度,以后的數字四舍五入。

* @param v1 被除數

* @param v2 除數

* @param scale 表示表示需要精確到小數點以后幾位。

* @return 兩個參數的商

*/

public static double div(double v1,double v2,int scale){

if(scale0){

throw new IllegalArgumentException(

"The scale must be a positive integer or zero");

}

BigDecimal b1 = new BigDecimal(Double.toString(v1));

BigDecimal b2 = new BigDecimal(Double.toString(v2));

return b1.divide(b2,scale,BigDecimal.ROUND_HALF_UP).doubleValue();

}

/**

* 提供精確的小數位四舍五入處理。

* @param v 需要四舍五入的數字

* @param scale 小數點后保留幾位

* @return 四舍五入后的結果

*/

public static double round(double v,int scale){

if(scale0){

throw new IllegalArgumentException(

"The scale must be a positive integer or zero");

}

BigDecimal b = new BigDecimal(Double.toString(v));

BigDecimal one = new BigDecimal("1");

return b.divide(one,scale,BigDecimal.ROUND_HALF_UP).doubleValue();

}

};

分享

本回答由電腦網絡分類達人 高德寶認證

其他類似問題

2009-02-08加減乘除運算(Java)14

2010-06-22Java實現有界面的簡單的兩個整數之間的加減乘除運算

2009-09-21myeclipse中java的加減乘除運算1

2011-05-27用java編寫計算器,,,要求加減乘除等運算。。。1

2011-09-15java中的String型怎么實現數學的加減乘除運算?10

更多關于java簡單加減乘除的問題

為您推薦:

舉報| 2009-02-24 03:00

#為什么很多走失的孩子無法找回?#

提問者采納

import java.util.Scanner;

class MakeOperation

{

public static void main(String[] args){

Scanner input=new Scanner(System.in);

Count count=new Count();

System.out.print("請輸入你要運算的第一個數:");

count.one=input.next();

System.out.print("請輸入你要進行運算的運算符:");

count.fu=input.next();

System.out.print("請輸入你要運算的第二個數:");

count.two=input.next();

if(count.fu.equals("+")){

count.outcome=Float.parseFloat(count.one)+Float.parseFloat(count.two)+"";

// 將字符串解析為數字,注意下如果輸入的不是數字程序會報錯,缺少健壯性代碼 }

System.out.println(count);

}

}

class Count{

String one;

String two;

String fu;

String outcome; // 結果

public String toString(){

return one+fu+two+"="+outcome;

}

}

下面的代碼修改了Count類里域的部分參數,增加了一個用于檢查輸入是否正確的類。

import java.util.Scanner;

class MakeOperation

{

public static void main(String[] args){

Scanner input=new Scanner(System.in);

Count count=new Count();

CheckOperation checkOpera=new CheckOperation();

System.out.print("請輸入你要運算的第一個數:");

count.one=checkOpera.checkNum(input);

System.out.print("請輸入你要進行運算的運算符:");

String[] operators={"+","-","*","/"};

count.fu=checkOpera.checkOperator(input,operators);

System.out.print("請輸入你要運算的第二個數:");

count.two=checkOpera.checkNum(input);

if("+".equals(count.fu)){

count.outcome=count.one+count.two;

System.out.println(count);

}

}

}

class Count{

float one;

float two;

String fu;

float outcome; // 結果

public String toString(){

return one+fu+two+"="+outcome;

}

}

class CheckOperation{

/*驗證數字,輸錯了會提示用戶重新輸入*/

public float checkNum(Scanner input){

float num=0f;

try {

num=Float.parseFloat(input.next());

} catch (NumberFormatException e) {

System.out.print("請輸入正確的數字: ");

num=checkNum(input); //直至獲取到正確的值

}

return num;

}

/*驗證輸入的符號是否正確*/

public String checkOperator(Scanner input,String[] operators){

String opera=null;

boolean judge=true;

opera=input.next();

for(String operator:operators){

if(operator.equals(opera)) judge=false;

}

if(judge) {

System.out.print("請輸入正確的運算符: ");

opera=checkOperator(input,operators);

}

return opera;

}

}

java 加減乘除程序怎么做???

因為.字符串判斷內容上是否相同,要使用的是equals函數

修改后的代碼

String?s?=?jtf2.getText();//字符串s已經取得了文本框2的內容.后面就直接使用把

double?result?=?0;

if?(s.equals("*"))?{//字符串判斷內容是否一致,要使用equals函數?,

result?=?num1?*?num2;

}

if?(s.equals("/"))?{

result?=?num1?/?num2;

}

if?(s.equals("+"))?{

result?=?num1?+?num2;

}

if?(s.equals("-"))?{

result?=?num1?-?num2;

}

運行

java加減乘除運算的程序怎么編啊

//JAVA編程:四則運算(接收用戶輸入的2個操作數,和運算符),計算之后,輸出結果~~~~

import java.util.Scanner;

public class 四則運算 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

System.out.print("請輸入第一個數字:");

int a = sc.nextInt();

System.out.print("請輸入運算符號:");

String str = sc.next();

char ch = str.charAt(0);

System.out.print("請輸入第二個數字:");

int b = sc.nextInt();

switch(ch)

{

case '+':

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

break;

case '-':

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

break;

case '*':

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

break;

case '/':

if(b==0){

System.out.println("被除數為零,運算無意義!");

break;

}

else {

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

break;

}

default:

System.out.println("運算符是無意義字符!");

break;

}

}

}

望采納~~~~~~~~

標題名稱:Java做加減乘除代碼 加減乘除的java代碼
當前路徑:http://m.kartarina.com/article46/dodeehg.html

成都網站建設公司_創新互聯,為您提供網站收錄營銷型網站建設企業建站網頁設計公司用戶體驗App設計

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站托管運營
主站蜘蛛池模板: 国产精品视频一区二区三区无码| 亚洲av永久无码制服河南实里| 最新无码人妻在线不卡| 高清无码视频直接看| 中文字幕乱偷无码av先锋蜜桃| 亚洲爆乳无码精品AAA片蜜桃| 国产无码网页在线观看| 国模无码人体一区二区| 亚洲精品无码久久| 国产AV无码专区亚洲A∨毛片| 亚洲国产精品无码久久久秋霞1| 国产精品热久久无码av| 亚洲AV无码无限在线观看不卡| 久久午夜无码鲁丝片午夜精品| 亚洲成在人线在线播放无码| 亚洲精品无码专区在线在线播放| 无码人妻H动漫中文字幕| 少妇人妻无码专区视频| 国产精品无码A∨精品影院| 免费无遮挡无码永久在线观看视频| 日韩精品无码一区二区中文字幕| 东京热无码av一区二区| 日韩免费a级毛片无码a∨ | 小13箩利洗澡无码视频网站 | 亚洲AV无码不卡在线播放| 国产精品无码久久av| 亚洲精品无码成人片久久不卡 | 九九无码人妻一区二区三区| 亚洲国产精品成人精品无码区| 午夜成人无码福利免费视频| 精品无码专区亚洲| 少妇人妻偷人精品无码AV| 无码人妻久久一区二区三区免费丨| 久久久久琪琪去精品色无码| 国产成年无码久久久久毛片| 亚洲精品无码专区在线在线播放| 日韩精品无码一区二区三区AV| 无码一区二区三区AV免费| 久久午夜无码鲁丝片秋霞 | 亚洲级αV无码毛片久久精品| 久久久久久av无码免费看大片|