当前位置: 首页 > news >正文

Javas | DecimalFormat类、BigDecimal类、Random类

目录:

    • 1.DecimalFormat类
    • 2.BigDecimal类
    • 3.Random类
    • 4.需求:编写程序,生成5个不重复的随机数

1.DecimalFormat类

  • DecimalFormatNumberFormat 的一个具体子类用于格式十进制数字
/*** 关于数字的格式化*/
public class DecimalFormatTest01 {public static void main(String[] args) {// java.text.DecimalFormat : 专门负责数字格式化的//DecimalFormat df = new DecimalFormat("数字格式");/*数字格式有:# 代表任意数字, 代表千分位. 代表小数点0 代表不够时补0###,###.##  表示:  加入千分位,保留2个小数*/DecimalFormat df1 = new DecimalFormat("###,###.##");String s1 = df1.format(1234.561232);System.out.println(s1); //1,234.56DecimalFormat df2 = new DecimalFormat("###,###.0000"); //保留四位数,不够补上0String s2 = df2.format(1234.56);System.out.println(s2); //1,234.5600}
}

2.BigDecimal类

  • BigDecimal 属于大数据,精度极高不属于基本数据类型,属于Java对象(引用数据类型)

  • BigDecimal在java.math.BigDecimal,是Sun提供的一个类,专门用在财务软件中。( 财务软件中double不够的。)

         // BigDecimal 属于大数据,精度极高。不属于基本数据类型,属于Java对象(引用数据类型)。// BigDecimal在java.math.BigDecimal,是Sun提供的一个类,专门用在财务软件中。// 财务软件中double是不够的。//这个100不是普通的100,而是精度极高的100BigDecimal v1 = new BigDecimal(100);//精度极高的 200BigDecimal v2 = new BigDecimal(200);/*对两个“精度极高”的数进行“加减乘除 等操作”,因为都是引用,不能直接进行操作,可调用方法*///求和BigDecimal v3 = v2.add(v1);System.out.println(v3); //300//相减BigDecimal v4 = v2.subtract(v1);System.out.println(v4); //100//相乘BigDecimal v5 = v2.multiply(v1);System.out.println(v5); //20000//相除BigDecimal v6 = v2.divide(v1);System.out.println(v6); //2
    

3.Random类

  • random用于生成随机数

       //创建随机数对象Random random = new Random();//随机生成一个int类型范围内的数字。int num1 =random.nextInt();System.out.println(num1);//随机生成一个[0~100]范围内的数字。不能产生101int num2 =random.nextInt(101); //不包括101System.out.println(num2);
    

4.需求:编写程序,生成5个不重复的随机数

  • 需求:编写程序,生成5个不重复的随机数[0-100],最终生成的5个随机数放到数组中,要求数组中的这5个随机数不重复。

    /*需求: 编写程序,生成5个不重复的随机数[0-100],最终生产的5个数放到数组中,要求这5个数不重复。*/
    public class RandomTest01 {public static void main(String[] args) {//创建Random对象Random random = new Random();//准备一个长度为5的一维数组int[] arr = new int[5];//为该一维数组设置初始值for (int i = 0; i<arr.length;i++) {arr[i] = -1;}//循环,生成随机数int index = 0;while (index < arr.length) {//生成随机数int num = random.nextInt(101); //此处设置为5可测试代码是否有bug//判断arr数组中是否有这个num,如果没有这个num,就放进去if (!contains(arr,num)) {arr[index] = num;index++;}}//遍历以上数组for (int i = 0; i < arr.length; i++) {System.out.println(arr[i]);}}//该方法:用来判断数组中是否包含某个元素public static boolean contains(int[] arr,int key){for (int i = 0; i < arr.length; i++) {if (arr[i] == key) {//条件成立了表示包含,返回truereturn true;}}//表示不包含return false;}
    }
    

相关文章:

Javas | DecimalFormat类、BigDecimal类、Random类

目录&#xff1a; 1.DecimalFormat类2.BigDecimal类3.Random类4.需求&#xff1a;编写程序&#xff0c;生成5个不重复的随机数 1.DecimalFormat类 DecimalFormat 是 NumberFormat 的一个具体子类&#xff0c;用于格式十进制数字。 /*** 关于数字的格式化*/ public class Decima…...

机器学习 实战系列 总目录

1、机器学习实战-系列教程1&#xff1a;线性回归入门教程&#xff08;项目实战、原理解读、源码解读&#xff09; 机器学习实战-系列教程1&#xff1a;线性回归入门教程&#xff08;项目实战、原理解读、源码解读&#xff09; 2、机器学习实战-系列教程2&#xff1a;手撕线性回…...

机器学习——贝叶斯(三种分布)/鸢尾花分类分界图/文本分类应用

0、前言&#xff1a; 机器学习中的贝叶斯的理论基础是数学当中的贝叶斯公式。这篇博客强调使用方法&#xff0c;至于理论未作深究。机器学习中三种类型的贝叶斯公式&#xff1a;高斯分布&#xff08;多分类&#xff09;、多项式分布&#xff08;文本分类&#xff09;、伯努利分…...

SOLIDWORKS Composer位置关键帧的使用

SOLIDWORKS Composer是专业的SOLIDWORKS及3D文件处理的动画制作软件&#xff0c;作为SOLIDWORKS 产品线下的一个明星存在。 SOLIDWORKS Composer几乎可以处理任何SOLIDWORKS的模型文件并将之转化成可以动作的机械动画&#xff0c;可以引用在企业的网站、产品说明书以及工作指导…...

PostgreSQL 流复制搭建与维护

文章目录 前言1. 配置环境1.1 环境介绍1.2 主库白名单1.3 主库参数配置 2. 流复制搭建2.1 备份恢复2.2 创建复制用户2.3 参数修改2.4 启动并检查2.5 同步流复制2.6 同步复制级别 3. 流复制监控3.1 角色判断3.2 主库查看流复制3.3 延迟监控3.4 备库查询复制信息 前言 PostgreSQ…...

【Redis】关于过期数据清除的一些策略

这里要讨论的为过期的数据是如何被清除的&#xff0c;也就是网上常常讨论的过期清除策略。 需要注意的是&#xff0c;redis除了会对过期的数据进行淘汰&#xff0c;也可以通过对内存大小进行限制&#xff0c;并对超出内存限制后进行数据淘汰。此时淘汰的数据未必是过期的&…...

动态SQL

Mybatis框架的动态SQL技术是一种根据特定条件动态拼装SQL语句的功能&#xff0c;它存在的意义是为了解决拼接SQL语句字符串时的痛点问题。 1、if if标签可通过test属性的表达式进行判断&#xff0c;若表达式的结果为true&#xff0c;则标签中的内容会执行&#xff1b;反之标签…...

uniapp:OCR识别身份证上传原图失败,问题解决

1、上传普通图片成功 2、上传>4M | >5M图片失败检查&#xff1a;1、uni.uploadFile自身没有文件大小限制。然而&#xff0c;这仍然取决于你的应用程序所在的平台和存储空间容量。 2、上传照片后不在fail&#xff0c;在sucess 提交照片-3 {"data": "<h…...

shell循环和函数

目录 1.for循环2.while循环3.until循环4.函数 1.for循环 for循环是固定循环&#xff0c;也就是在循环时就已经知道需要进行几次的循环&#xff0c;有事也把for循环成为计数循环。for的语法如下两种&#xff1a; 语法一 for 变量 in 值1 值2 值3 …(可以是一个文件等)do程序do…...

京东详情api

简要描述 根据商品id获取详情数据 请求URL http://xxx.xxx.xxx.xxx:xxxx/jd.get.item 请求方式 get 请求Query参数 参数名示例值必选类型说明itemid100016034386是string商品idtokenadmin.api是string权限token 成功返回示例 部分数据展示&#xff1a; {"data&qu…...

MySQL最新版8.1.0安装配置教程

目录 目录 前言 安装流程图 1&#xff0c;MySQL数据库是什么? 2&#xff0c;下载zip压缩包 3&#xff0c;解压到要安装的目录 4,添加环境变量 4.1,找到环境变量 4.2,进行环境变量的添加 5.新建mysql 配置文件 6、安装mysql服务 7、初始化数据文件 8、启动mysql …...

5G试题_1

1、 全息技术属于对5G三大类应用场景网络需求中的哪一种&#xff1f;&#xff08;A&#xff09; A. 增强移动宽带 B. 海量大连接 C. 低时延高可靠 D. 低时延大带宽 2、 在5G时代&#xff0c;不同领域的不同设备大量接入网络&#xff0c;其实引用传统的组网方式和服务提供形式也…...

正规股票配资网站的三个明显特点分析

随着股票市场的快速发展&#xff0c;越来越多的投资者开始考虑使用股票配资来增加自己的资金流动性和收益率。然而&#xff0c;在选择股票配资网站时&#xff0c;投资者往往难以辨别哪些网站是正规的&#xff0c;哪些网站存在风险。因此&#xff0c;以下将分析正规股票配资网站…...

质疑苹果5G信号造假成为闹剧,反而将运营商置于尴尬境地

在iPhone15发布会处于热点之际&#xff0c;一位号称通信专家的人士指责iPhone的5G信号造假&#xff0c;一度闹得沸沸扬扬&#xff0c;导致舆论一开始都是质疑苹果造假&#xff0c;然而在知乎却有更多专业人士指出这位专家不了解5G技术&#xff0c;这个问题或许反而出在运营商身…...

vue 预览zip

ZIP的数据从接口传递数据流过来。解析数据流&#xff0c;并将zip的目录绑定到tree中。 1.引入插件jszip&#xff1a; yarn add jszip 2.在需要引用的页面引用&#xff1a; import JSZip from jszip 3. 实现代码 api(option).then((res)>{ // 接口获取zip的数据流 l…...

人先自辱,而后人辱之

语出《孟 子.离娄上》“夫人必自街&#xff0c;而后人懈之;家必自毁&#xff0c;而后人毁之"。 自己不把自己当人看&#xff0c;别人肯定也不会。善待自己&#xff0c;接纳自己。 过去的不再留恋。 心平气和&#xff0c;气定神闲。 政治论述题&#xff0c;每一个题目&a…...

web端三维重建算法-colmap++

vismap vismap 是colmap 版本 &#xff08;1&#xff09; 支持superpoint superglue &#xff08;2&#xff09; 支持netvlad 图像检索 &#xff08;3&#xff09;支持特征点尺度定权 &#xff08;4&#xff09;支持二维码定位 &#xff08;5&#xff09;支持融合gps &#x…...

MyBatisPlus(二)基础Mapperr接口:增删改查

MyBatisPlus&#xff1a;基础Mapper接口&#xff1a;增删改查 插入一条数据 代码 Testpublic void insert() {User user new User();user.setId(6L);user.setName("张三");user.setAge(25);user.setEmail("zhangsanexample.com");userMapper.insert(use…...

基础项目实用案例

文章目录 倒计时动态生成表格发布留言密码框验证模态框拖拽 倒计时 function countDown(time) {var nowTime new Date();var inputTime new Date(time);var times (inputTime - nowTime) / 1000;var d parseInt(times / 60 / 60 / 24);d d < 10 ? 0 d : d;var h par…...

sprngboot整合kabana

Spring Boot是一个开源框架&#xff0c;可以基于Spring框架快速开发和构建生产级别的应用程序。Kibana是一个可视化和交互式分析平台&#xff0c;用于检索和分析Elasticsearch集群中存储的数据。 下面是Spring Boot整合Kibana的基本步骤&#xff1a; 添加Maven依赖 在pom.xm…...

后进先出(LIFO)详解

LIFO 是 Last In, First Out 的缩写&#xff0c;中文译为后进先出。这是一种数据结构的工作原则&#xff0c;类似于一摞盘子或一叠书本&#xff1a; 最后放进去的元素最先出来 -想象往筒状容器里放盘子&#xff1a; &#xff08;1&#xff09;你放进的最后一个盘子&#xff08…...

Vim 调用外部命令学习笔记

Vim 外部命令集成完全指南 文章目录 Vim 外部命令集成完全指南核心概念理解命令语法解析语法对比 常用外部命令详解文本排序与去重文本筛选与搜索高级 grep 搜索技巧文本替换与编辑字符处理高级文本处理编程语言处理其他实用命令 范围操作示例指定行范围处理复合命令示例 实用技…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

练习(含atoi的模拟实现,自定义类型等练习)

一、结构体大小的计算及位段 &#xff08;结构体大小计算及位段 详解请看&#xff1a;自定义类型&#xff1a;结构体进阶-CSDN博客&#xff09; 1.在32位系统环境&#xff0c;编译选项为4字节对齐&#xff0c;那么sizeof(A)和sizeof(B)是多少&#xff1f; #pragma pack(4)st…...

23-Oracle 23 ai 区块链表(Blockchain Table)

小伙伴有没有在金融强合规的领域中遇见&#xff0c;必须要保持数据不可变&#xff0c;管理员都无法修改和留痕的要求。比如医疗的电子病历中&#xff0c;影像检查检验结果不可篡改行的&#xff0c;药品追溯过程中数据只可插入无法删除的特性需求&#xff1b;登录日志、修改日志…...

服务器硬防的应用场景都有哪些?

服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式&#xff0c;避免服务器受到各种恶意攻击和网络威胁&#xff0c;那么&#xff0c;服务器硬防通常都会应用在哪些场景当中呢&#xff1f; 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...

linux 错误码总结

1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...

第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词

Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵&#xff0c;其中每行&#xff0c;每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid&#xff0c;其中有多少个 3 3 的 “幻方” 子矩阵&am…...

IP如何挑?2025年海外专线IP如何购买?

你花了时间和预算买了IP&#xff0c;结果IP质量不佳&#xff0c;项目效率低下不说&#xff0c;还可能带来莫名的网络问题&#xff0c;是不是太闹心了&#xff1f;尤其是在面对海外专线IP时&#xff0c;到底怎么才能买到适合自己的呢&#xff1f;所以&#xff0c;挑IP绝对是个技…...

【JVM面试篇】高频八股汇总——类加载和类加载器

目录 1. 讲一下类加载过程&#xff1f; 2. Java创建对象的过程&#xff1f; 3. 对象的生命周期&#xff1f; 4. 类加载器有哪些&#xff1f; 5. 双亲委派模型的作用&#xff08;好处&#xff09;&#xff1f; 6. 讲一下类的加载和双亲委派原则&#xff1f; 7. 双亲委派模…...