学习笔记 韩顺平 零基础30天学会Java(2024.8.7)

P481 Math方法

利用random返回一个[2,7]之间的随机数:

因为random只能返回[0,1)之间的随机数,因此做一下处理:[(int)(a), (int) (a+Math.random()*(b-a+1))],对于Math.random()*(b-a+1),其中b-a+1,它乘上[0,1)相当于可以在[0,5)之间缩放,里面的+1是为了能够取到7(int强制截取前面的整数,所以不会超过7)

(int) (a+Math.random()*(b-a+1))就可以返回一个范围[a,b]内的随机数了

P482 Arrays排序源码解读

P483 Arrays模拟排序

P484 Arrays其他方法

P485 Arrays课堂练习

对于books数组,只要比较价格,里面属性的交换,已经封装好了,不用操心

目前看来,对compare方法重写,但是重写return返回的i1-i2还是i2-i1和从小到大还是从大到小的顺序没有直接的对应关系,还是与数组有关

代码见ArraysExceise

P486 System方法

arraycopy和copyOf()差不多,但是arraycopy比copyOf()更底层

P487 大数处理方案

这两个类进行运算,大都不能直接使用加减乘除符号,要用对应的公式

BigDecimal使用除法时,如果除不尽,会抛出异常,这个时候可以在divide方法中指定精度

原理是把数当成字符串,运算完之后再转成相应的对象

P488 Date介绍

P489 Date应用实例

P490 Calendar介绍

P491 Calendar应用实例

相关推荐
莫逸风1 分钟前
【java-core-collections】红黑树深度解析
java·开发语言
李少兄2 分钟前
Fastjson2 处理 JSON 字段大小写不一致的优雅方案
java·json
计算机毕业设计指导4 分钟前
基于SpringBoot+Vue3的荣成市健康管理平台设计与实现
java·spring boot·后端
tryqaaa_6 分钟前
学习日志(一)【含markdown语法,Linux学习】
linux·运维·学习·web安全·web·markdown
渔民小镇9 分钟前
5 分钟搭建桌游服务器:Room 模块 + 领域事件实战
java·运维·服务器·分布式·游戏
SeeD NICK14 分钟前
Spring Boot 3.4 正式发布,结构化日志!
java·spring boot·后端
Leah-14 分钟前
Web项目测试流程
笔记·学习·web·测试·复盘
人道领域15 分钟前
深度揭秘:JDK 21 虚拟线程原理与性能调优实战
java·开发语言·python·jdk
oLLI PILO18 分钟前
Ubuntu介绍、与centos的区别、基于VMware安装Ubuntu Server 22.04、配置远程连接、安装jdk+Tomcat
java·ubuntu·centos
de_wizard21 分钟前
Spring Boot 整合 Apollo 配置中心实战
java·spring boot·后端