学习笔记 韩顺平 零基础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应用实例

相关推荐
程序员清风8 分钟前
程序员兼职必看:靠谱软件外包平台挑选指南与避坑清单!
java·后端·面试
皮皮林5511 小时前
利用闲置 Mac 从零部署 OpenClaw 教程 !
java
华仔啊7 小时前
挖到了 1 个 Java 小特性:var,用完就回不去了
java·后端
SimonKing7 小时前
SpringBoot整合秘笈:让Mybatis用上Calcite,实现统一SQL查询
java·后端·程序员
日月云棠1 天前
各版本JDK对比:JDK 25 特性详解
java
用户8307196840821 天前
Spring Boot 项目中日期处理的最佳实践
java·spring boot
JavaGuide1 天前
Claude Opus 4.6 真的用不起了!我换成了国产 M2.5,实测真香!!
java·spring·ai·claude code
IT探险家1 天前
Java 基本数据类型:8 种原始类型 + 数组 + 6 个新手必踩的坑
java
花花无缺1 天前
搞懂new 关键字(构造函数)和 .builder() 模式(建造者模式)创建对象
java
用户908324602731 天前
Spring Boot + MyBatis-Plus 多租户实战:从数据隔离到权限控制的完整方案
java·后端