【Java寒假打卡】Java基础-BigDecimal

news2024/9/22 5:28:52

【Java寒假打卡】Java基础-BigDecimal

    • 构造方法
    • 四则运算
    • BigDecimal的特殊方法
    • 基本数据类型包装类
    • 自动装箱与自动拆箱
    • Integer的类型转换
    • 将数字字符串进行拆分成整数数组

构造方法

在这里插入图片描述

package com.hfut.edu.test1;

import java.math.BigDecimal;

public class test3 {
    public static void main(String[] args) {
        BigDecimal bd1 = new BigDecimal(10.0);
        BigDecimal bd2 = new BigDecimal("0.3");

        System.out.println(bd1);
        System.out.println(bd2);
    }
}

四则运算

如果要使用精确运算,请使用字符串构造

package com.hfut.edu.test1;

import java.math.BigDecimal;

public class test3 {
    public static void main(String[] args) {
//        BigDecimal bd1 = new BigDecimal(10.0);
        BigDecimal bd1 = new BigDecimal("0.3");
        BigDecimal bd2 = new BigDecimal("0.4");

        // 加法运算
        BigDecimal add = bd1.add(bd2);
        System.out.println(add);

        // 减法运算
        BigDecimal subtract = bd1.subtract(bd1);
        System.out.println(subtract);

        // 乘法运算
        BigDecimal multiply = bd1.multiply(bd2);
        System.out.println(multiply);

        // 除法运算
        BigDecimal divide = bd1.divide(bd2);
        System.out.println(divide);

    }
}

BigDecimal的特殊方法

在这里插入图片描述

package com.hfut.edu.test1;

import java.math.BigDecimal;

public class test3 {
    public static void main(String[] args) {
//        BigDecimal bd1 = new BigDecimal(10.0);
        BigDecimal bd1 = new BigDecimal("0.3");
        BigDecimal bd2 = new BigDecimal("4");

        // 加法运算
        BigDecimal add = bd1.add(bd2);
        System.out.println(add);

        // 减法运算
        BigDecimal subtract = bd1.subtract(bd1);
        System.out.println(subtract);

        // 乘法运算
        BigDecimal multiply = bd1.multiply(bd2);
        System.out.println(multiply);

        // 除法运算  如果出现除不尽的情况 填入三个参数
        // 参数一:表示参数运算的另一个对象
        // 参数二:表示小数点后精确到多少位
        // 参数三:舍入模式  进一法: BigDecimal.ROUND_UP
        // 去尾法:BigDecimal.ROUND_FLOOR
        // 四舍五入:BigDecimal.ROUND_HALF_UP
        BigDecimal divide = bd1.divide(bd2,2,BigDecimal.ROUND_HALF_UP);// 输出0.08
        System.out.println(divide);
    }
}

基本数据类型包装类

 将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据

常用操作之一:用于基本数据类型与字符串之间的转换

在这里插入图片描述

  • 获得Integer对象

在这里插入图片描述

package com.hfut.edu.test1;

public class test4 {
    public static void main(String[] args) {

        // 创建Integer对象  但是下面两种方法已经过时
        Integer i1 = new Integer(100);
        Integer i2 = new Integer("111");
        System.out.println(i1);
        System.out.println(i2);

        // 使用Integer的静态方法 Integer.valueOf()
        Integer i3 = Integer.valueOf(100);
        Integer i4 = Integer.valueOf("171289");
        System.out.println(i3);
        System.out.println(i4);
    }
}


自动装箱与自动拆箱

package com.hfut.edu.test1;

public class test5 {
    public static void main(String[] args) {
        // 自动装箱:将一个基本数据类型变量对应的包装类
        // 自动:Java底层会帮我们自动的调用valueOf方法
        Integer i1 = 100;
        System.out.println(i1);

        // 自动拆箱:将一个包装类型变成对应的基本数据类型
        int i2 = i1;
        System.out.println(i2);

        Integer i3 = 100;
        i3 += 200;
        System.out.println(i3);

    }
}


Integer的类型转换

  • parseInt 将字符串转换成整数类型
  • 整数转换成字符串:一个是采用字符串拼接的方式 二是采用String 类的ValueOf方法
package com.hfut.edu.test1;

public class test6 {
    public static void main(String[] args) {

        String s1 = "100";
        int i1 = 200;
        System.out.println(s1 + i1);// 字符串 + 任意数据类型 自动转换成字符串类型

        // 将字符串类型转换成整数类型
        int i2 = Integer.parseInt(s1);
        System.out.println(i2 + i1);

        // 将整数类型转换成字符串类型
        int i3 = 100;
        String s2 = i3 + "";
        System.out.println(s2);
        
        // 将整数转换成字符串类型
        String s3 = String.valueOf(i3);
        System.out.println(s3 + 100);
    }
}

在这里插入图片描述

将数字字符串进行拆分成整数数组

package com.hfut.edu.test1;

public class test7 {
    public static void main(String[] args) {
        // 将一段字符串进行分割 存入整数类型的数组
        String s = "1 2 3 4 5";
        // 使用空格将字符串进行分割
        String[] strArr = s.split(" ");

        int[] numberArr = new int[strArr.length];// 新开辟一个数组 长度是字符串数组的长度

        for (int i = 0; i < strArr.length; i++) {
            int number = Integer.parseInt(strArr[i]);// 将每一个数字字符串转换成 整数
            numberArr[i] = number;
        }

        for (int i = 0; i < numberArr.length; i++) {
            System.out.println(numberArr[i]);
        }

    }
}


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/141560.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Crontab命令详解

crontab命令是Unix和Linux用于设置周期性被执行的指令&#xff0c;是互联网很常用的技术&#xff0c;很多任务都会设置在crontab循环执行。crontab命令可以精确到分&#xff08;精确到秒的一般写脚本&#xff09;&#xff0c;相当于闹钟。 如果不使用crontab&#xff0c;那么任…

GD32F103-TIMER模块

定时器是一个功能强大的外设。 一般功能&#xff1a; 定时中断&#xff0c;计时器&#xff0c;给定一个时间&#xff0c;到达时间后产生一个中断定时器输出比较的功能&#xff0c;用于PWM波形的产生&#xff0c;驱动电机定时器输入捕获&#xff0c;测频率 核心关键参数&#…

基于Java+SpringBoot+vue+element实现新冠疫情物资管理系统详细设计

基于JavaSpringBootvueelement实现新冠疫情物资管理系统详细设计 博主介绍&#xff1a;5年java开发经验&#xff0c;专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 超级帅帅吴 欢迎点赞 收藏 ⭐留言 文末获取源码联系方式 文章目录基于…

文件IO----(open、close、read、write、lseek)

1.文件IO 介绍:&#xff08;系统IO、系统调用&#xff09; POSIX&#xff08;可移植操作系统接口&#xff09;定义的一组函数&#xff0c;不提供缓冲机制&#xff0c;每次读写操作都引起系统调用&#xff0c;核心概念是文件描述符&#xff0c;访问各种文件类型&#xff0c;Lin…

Keychron 键盘指南

文章目录QQ1Q2Q3Q4Q5KK1K2k3 && k3proK3 VS K7k6 && K6prok7K8k10K12K14CVV1V2V3V4V5V6SQ Q1 Q1 是一款革命性的全金属键盘&#xff0c;每个开关、键帽、稳定器、旋钮甚至面板都具有可定制的功能。它专为个性化体验和卓越的打字舒适度而设计。 双垫片设计…

Cadence PCB仿真使用Allegro PCB SI配置仿真库的方法图文教程

⏪《上一篇》   🏡《总目录》   ⏩《下一篇》 目录 1,概述2,配置方法3,总结1,概述 本文简单介绍使用Allegro PCB SI软件选择需要仿真的网络的方法。 2,配置方法 第1步:打开待仿真的PCB文件,并确认软件为Allegro PCB SI 如果,打开软件不是Allegro PCB SI则可这样…

模型微调,低预算,高期望!

作为迁移学习中的常用技术&#xff0c;Fine-tuning&#xff08;微调&#xff09;已经成为了深度学习革命的重要部分。微调不需要针对新任务从头开始学习&#xff0c;只需要加载预训练模型的参数&#xff0c;然后利用新任务的数据进行一步训练模型即可。也可以说微调是对开放域任…

一文简单了解并部署Zookeeper集群

GreatSQL社区原创内容未经授权不得随意使用&#xff0c;转载请联系小编并注明来源。GreatSQL是MySQL的国产分支版本&#xff0c;使用上与MySQL一致。作者&#xff1a;蟹黄瓜子文章来源&#xff1a;GreatSQL社区投稿 1.Zookeeper概述 Zookeeper对于很多人开始可能都有所耳闻&am…

基于Java+SpringBoot+vue+element实现爱心捐赠平台系统

基于JavaSpringBootvueelement实现爱心捐赠平台系统 博主介绍&#xff1a;5年java开发经验&#xff0c;专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 超级帅帅吴 Java毕设项目精品实战案例《500套》 欢迎点赞 收藏 ⭐留言 文末获取源码…

排他思想的运用

思路简述 需求&#xff1a;桌子上有一排灯&#xff0c;点哪个亮哪个&#xff0c;但是要求每次只能点亮一盏。如果不使用排他思想&#xff0c;操作过程如下&#xff1a; 第一次打开一盏灯&#xff0c;记为 A&#xff0c;记录下来。第二次打开灯之前&#xff0c;先去找记录&…

[cpp进阶]C++智能指针

文章目录为什么需要智能指针?智能指针的原理及使用智能指针的原理智能指针的使用C中的智能指针C智能指针的发展历程std::auto_ptrstd::auto_ptr的使用std::auto_ptr的模拟实现std::unique_ptrstd::unique_ptr的使用std::unique_ptr的模拟实现std::shared_ptrstd::shared_ptr的…

Springboot @InitBinder处理from-data表单传参,指定参数默认新增前缀

前言 有兄弟突然找到我&#xff0c;江湖救急&#xff0c;我以为是啥问题呢&#xff1f; 一看这位小兄弟也是半路出家&#xff0c; 没有对springboot的常用注解有过研究。 不过没大碍&#xff0c;还是那句话&#xff0c; 学习的事情&#xff0c;只有先知和后知 现在你看完这篇…

纳米软件分享:光伏逆变器ATE测试系统,逆变器测试解决方案

光伏并网逆变器&#xff08;以下简称“逆变器”&#xff09;是光伏发电系统的核心部件之一&#xff0c;其主要功能是将光伏阵列的直流逆变为符合电网接入要求的交流电并入电网。并网逆变器ATE测试平台&#xff0c;主要是模拟光伏阵列特性输入的直流电源、模拟电网电源、系统控制…

Java垃圾分类查询管理系统源码+数据库,基于SpringBoot+mybatis-plus,垃圾分类查询及预约上门回收

垃圾分类查询管理系统 完整代码下载地址&#xff1a;Java垃圾分类查询管理系统源码数据库 1.介绍 垃圾分类查询管理系统&#xff0c;对不懂的垃圾进行查询进行分类并可以预约上门回收垃圾。 让用户自己分类垃圾&#xff0c; 按国家标准自己分类&#xff0c; 然后在网上提交订…

java学习之main方法

目录 一、main方法的注意事项 二、在IDEA中传入参数 一、main方法的注意事项 形式&#xff1a;public static void main(String[] args){}&#xff0c;main方法是一个静态方法&#xff0c;访问修饰符是&#xff1a;public&#xff0c;形参是String数组 args 注意事项&#xf…

go语言--函数

package mainimport "fmt"func main(){//功能: 10 20var num1 int 10var num2 int 20var sum int 0sum num1sum num2fmt.Println(sum) }为什么使用函数 提高代码的复用性&#xff0c;减少代码冗余, 代码维护性也提高了 函数的定义 为完成摸一个功能的程序指令(…

IRCNN-FPOCS 文章解读

1、论文概述 1&#xff09;待解决的问题&#xff1a;地震道数据缺失&#xff08;野外地震数据的质量往往受到地质环境或设备参数的影响&#xff0c;这些数据可能在空间上不连续&#xff0c;导致地震痕迹缺失&#xff0c;也称为下采样观测&#xff09; 2&#xff09;目的&…

从菜鸟到团队协同大神:产品经理工具技能修炼

现在&#xff0c;自雇人士和自由职业者越来越普遍。受环境影响&#xff0c;员工们正在放弃朝九晚五的工作&#xff0c;转而采用更灵活的远程工作&#xff0c;另一方面&#xff0c;随着办公数字化转型、远程办公的需求强烈、在线协协同管理工具飞项等一批知名互联网工具如雨后春…

c#入门-捕获变量

局部变量捕获 局部函数&#xff0c;匿名函数&#xff0c;可以直接在函数体内使用局部变量。 如果作为委托使用&#xff0c;传递给别人。可能在别人使用委托的时候&#xff0c;这些局部变量的作用域就已经消失了。 因此&#xff0c;编译器会对这些变量做出特殊的操作&#xff…

优维低代码:I18n 国际化

优维低代码技术专栏&#xff0c;是一个全新的、技术为主的专栏&#xff0c;由优维技术委员会成员执笔&#xff0c;基于优维7年低代码技术研发及运维成果&#xff0c;主要介绍低代码相关的技术原理及架构逻辑&#xff0c;目的是给广大运维人提供一个技术交流与学习的平台。 连载…