Java Swing技术开发的简易计算器项目,支持小数四则运算源码下载

Swing项目 潘老师 4个月前 (07-20) 175 ℃ (1) 扫码查看

这是一款Java Swing技术开发的简易计算器,此项目支持基本的加减乘除四则运算以及小数运算,使用了BigDecimal类处理计算过程,保证计算结果非常准确,项目界面简洁大方,使用方便快捷!

项目截图

Java Swing技术开发的简易计算器项目,支持小数四则运算源码下载
开发工具及环境

开发环境:JDK1.8
开发工具:Eclipse
支持功能

该简单计算器仅支持基本的加减乘除四则运算、小数运算以及清零功能,缺点是不支持负数运算,但计算结果可以为负数。
技术难点

该项目开发的计算难点在于项目界面布局设计,以及如何保证计算结果的准确性。
核心代码展示

public class Calculator {
    boolean is_operator(char ch) {
        if (ch == '+' || ch == '-' || ch == '*' || ch == '/') {
            return true;
        }else { 
            return false;
        }
    }
    static double result(String s) {
        String ch[] = {
            "+",
            "-",
            "*",
            "/"
        };
        int i = 0;
        int index;
        while (s.indexOf(ch[i]) == -1 && i < 4) {
            i++;
        }
        if (i == 4) return - 1;
        else index = s.indexOf(ch[i]);
        String s1 = s.substring(0, index);
        String s2 = s.substring(index + 1);
        BigDecimal b1 = new BigDecimal(s1);
        BigDecimal b2 = new BigDecimal(s2);
        if (i == 0) {
            return b1.add(b2).doubleValue();
        }
        if (i == 1) {
            return b1.subtract(b2).doubleValue();
        }
        if (i == 2) {
            return b1.multiply(b2).doubleValue();
        }
        if (i == 3 && Double.parseDouble(s2) != 0) {
            return b1.divide(b2 ,10, BigDecimal.ROUND_HALF_UP).doubleValue();
        }else if (i == 3 && Double.parseDouble(s2) == 0) {
            throw new ArithmeticException();
        }
        return - 1;
    }
}

项目源码使用方法

将下载好的压缩文件直接解压到当前文件夹,将解压后的Cal文件夹直接导入eclipse中,如果你的jdk版本不是1.8,可以自行调整版本或新建名为Cal的项目,然后将核心java文件复制到对应的包中。部署好项目后,直接运行CalculatorFrame.java中的main方法即可。
项目源码免费下载

文件下载

  文件名称:基于Java Swing技术开发的简易计算器项目  文件大小:5KB
  下载声明:本站资源仅供学习和研究使用,不得用于商业用途。如资源不慎侵犯你的版权请联系博主处理! 本站资源全部采用7z压缩,建议使用360压缩解压,解压密码为www.panziye.com
  下载地址:免费下载


版权声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系潘老师进行处理。
喜欢 (2)
请潘老师喝杯Coffee吧!】
分享 (0)

您必须 微信登录 才能发表评论!

(1)个小伙伴在吐槽
  1. 如果能支持负数运算和其他高级运算就更强大了
    南笙几梦 2020-07-21 18:32 回复
登录