java除法,java除法运算保留两位小数

本文目录一览:

java除法

如果你想要带小数的结果那么在声明的时候就要把变量声明成浮点型

float = 0.0f

double = 0.0

补充

因为你声明的5和2都是int型的变量,所以计算出来的结果也是int型的,int型是整型变量,没有小数部分,所以要把它们声明成浮点数(即小数),例如float=5.0f;float = 2.0f;后边的f表示2.0是float型的单精度浮点数,如果不带f则是默认的double型双精度浮点数。两个float型的数字相除,这样计算的结果也使float型的,所以就会有小数部分出现了

java除法计算

方法一:

double myNum2 = 111231.5585478;

java.math.BigDecimal b = new java.math.BigDecimal(myNum2);

double myNum3 = b.setScale(5, java.math.BigDecimal.ROUND_HALF_UP).doubleValue();

System.out.println(myNum2);

System.out.println(myNum3);

方法二:

double d = 3.1465926;

String result = String.format(“%.2f”, d);

System.out.println(result);

java程序,用图形实现乘除运算

简易的计算器代码如下,请参照:

import java.awt.BorderLayout;

import java.awt.GridLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.KeyAdapter;

import java.awt.event.KeyEvent;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.JTextField;

/**

 * 计算器类

 * 

 * @author Administrator

 *

 */

public class Calculator extends JFrame implements ActionListener {

    

    private static final long serialVersionUID = 3868243398506940702L;

    

    // 文本框

    private JTextField result;

    // 按钮数组

    private JButton[] buttons;

    // 按钮文本

    private final String[] characters = { “7”, “8”, “9”, “/”, “4”, “5”, “6”,

            “*”, “1”, “2”, “3”, “-“, “0”, “.”, “=”, “+” };

    // 是否为第一个输入的数字

    private boolean isFirstDigit = true;

    // 运算结果

    private double resultNum = 0.0;

    // 运算符

    private String operator = “=”;

    public Calculator(String title) {

        // 设置标题栏

        super(title);

        // 初始化各组件

        init();

        // 注册各组件监听器

        registerListener();

        // 显示窗体

        setVisible(true);

    }

    /**

     * 初始化各组件

     */

    private void init() {

        // 常用属性初始化

        setSize(220, 200);

        setResizable(false);

        setLocationRelativeTo(null);

        setDefaultCloseOperation(EXIT_ON_CLOSE);

        /* 文本框对象初始化 */

        result = new JTextField(“0”);

        // 文本右对齐

        result.setHorizontalAlignment(JTextField.RIGHT);

        // 设置是否可编辑

        result.setEditable(false);

        /* 按钮初始化 */

        buttons = new JButton[characters.length];

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

            buttons[i] = new JButton(characters[i]);

            buttons[i].setFocusable(false); // 不允许按钮定位焦点

        }

        /* 将文本框与按钮添加到窗体中 */

        add(result, BorderLayout.NORTH);

        JPanel pnl = new JPanel(new GridLayout(4, 4, 5, 5));

        for (JButton jButton : buttons) {

            pnl.add(jButton);

        }

        add(pnl);

        this.getContentPane().setFocusable(true);

    }

    /**

     * 注册监听器

     */

    private void registerListener() {

        for (JButton jButton : buttons) {

            jButton.addActionListener(this);

        }

        // 注册键盘事件

        this.getContentPane().addKeyListener(new KeyAdapter() {

            @Override

            public void keyPressed(KeyEvent e) {

                String text = String.valueOf(e.getKeyChar());

                if (Character.isDigit(text.charAt(0)) || “.”.equals(text)) { // 数字或小数点

                    handleNumber(text);

                } else if (“+-*/=”.indexOf(text) != -1) { // 运算符

                    handleOperator(text);

                } else if (e.getKeyCode() == 8) { // 退格键

                    String tmp = result.getText().trim();

                    if (tmp.length() == 1) {

                        result.setText(“0”);

                        isFirstDigit = true;

                    } else {

                        result.setText(tmp.substring(0, tmp.length() – 1));

                    }

                }

            }

        });

    }

    @Override

    public void actionPerformed(ActionEvent e) {

        JButton btn = (JButton) e.getSource();

        String text = btn.getText().trim();

        if (Character.isDigit(text.charAt(0)) || “.”.equals(text)) { // 处理数字和小数点

            handleNumber(text);

        } else { // 处理运算符

            handleOperator(text);

        }

    }

    /**

     * 处理数字和小数点

     * 

     * @param text

     */

    private void handleNumber(String text) {

        if (isFirstDigit) { // 第一次输入

            if (“.”.equals(text)) {

                this.result.setText(“0.”);

            } else {

                this.result.setText(text);

            }

        } else if (“0”.equals(text)  “0”.equals(this.result.getText())) {

            isFirstDigit = true;

            return;

        } else if (“.”.equals(text)  this.result.getText().indexOf(“.”) == -1) {

            this.result.setText(this.result.getText() + “.”);

        } else if (!”.”.equals(text)) {

            this.result.setText(this.result.getText() + text);

        }

        isFirstDigit = false;

    }

    /**

     * 处理运算符

     * 

     * @param text

     */

    private void handleOperator(String text) {

        switch (operator) { // 处理各项运算  适用于JDK1.7版本的

        case “+”:

            resultNum += Double.parseDouble(this.result.getText());

            break;

        case “-“:

            resultNum -= Double.parseDouble(this.result.getText());

            break;

        case “*”:

            resultNum *= Double.parseDouble(this.result.getText());

            break;

        case “/”:

            resultNum /= Double.parseDouble(this.result.getText());

            break;

        case “=”:

            resultNum = Double.parseDouble(this.result.getText());

            break;

        }

        // 将文本框的值修改为运算结果

        this.result.setText(String.valueOf(resultNum));

        // 将点击的运算符放入operator保存

        operator = text;

        // 下一个数字第一次点击

        isFirstDigit = true;

    }

    

    public static void main(String[] args) {

              new Calculator(“My Calculator”);

          }

}

运行结果如下:

java中整除和浮点除什么区别

被除数和除数都为整数即为整除,结果也为整数,如果有余数,则忽略余数,比如

5/2结果为2。

被除数和除数只要有一个是浮点数(小数)即为浮点除,结果为浮点数,比如

5.0/2

结果为

2.5

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/187895.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-11-28 06:25
下一篇 2024-11-28 06:25

相关推荐

  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • VSCode为什么无法运行Java

    解答:VSCode无法运行Java是因为默认情况下,VSCode并没有集成Java运行环境,需要手动添加Java运行环境或安装相关插件才能实现Java代码的编写、调试和运行。 一、…

    编程 2025-04-29
  • Java任务下发回滚系统的设计与实现

    本文将介绍一个Java任务下发回滚系统的设计与实现。该系统可以用于执行复杂的任务,包括可回滚的任务,及时恢复任务失败前的状态。系统使用Java语言进行开发,可以支持多种类型的任务。…

    编程 2025-04-29
  • Java 8 Group By 会影响排序吗?

    是的,Java 8中的Group By会对排序产生影响。本文将从多个方面探讨Group By对排序的影响。 一、Group By的概述 Group By是SQL中的一种常见操作,它…

    编程 2025-04-29

发表回复

登录后才能评论