教学视频:https://edu.51cto.com/course/5667.html?source=so
目录
基础类库
日期操作类
数字操作类
比较器
基础类
StringBuffer、StringBuilder、String类
String类由哪些特点?
字符串常量就是String类的匿名对象,一旦字符串定义则不可改变;
String类对象可以使用字节复制或者是构造方法实例化,前者可以自动入池,不产生垃圾;
在实际的开发之中,肯定都要求使用到String类,可是String类有一个天生的短板,不可改变,如果要经常修改的环境下只能够使用StringBuffer;
,String不适合循环修改,肯定改用StringBuffer。

范例:利用StringBuffer修改字符串
下面的代码示使用StringBuffer连接用append(),可以改变内容,说明StringBuffer可以改变你内容;

要是String连接用+,但是不能循环修改。否则用StringBuffer


都是CharSequence接口的子类,所以String或StringBuffer向上转型,例如

输出:
String或StringBuffer能互相转换吗?这两类对象可以用以下原则完成
String->StringBuffer
1.利用StringBuffer 的构造方法:![]()

2.StringBuffer的apeend()方法接收

StringBuffer-> String
1.所以类都有存在toString()方法,利用此方法可以将StringBuffer变为

2.没有类的时候,利用+实现实现所以数据类型向String转换

StringBuffer有的方法很简便,String中没有的方法,如下例子:

这个中间追加在String不能的,还有
StringBuffer最大特点,String不好实现,记住,例如

![]()
![]()

StringBuffer在JDK1.0提供,在JSK1.5置提供StringBuilder类,这两个类在文档里面都一样,就是仔细看文字解释是有差别的,
看StringBuffer的源码和StringBuilder源码的区别:StringBuffer属于线程安全操作,但性能不高。StringBuilder反之,属于非线程安全操作,性能高。

面试StringBuffer、StringBuilder、String区别:https://mp.youkuaiyun.com/postedit/81668301
多个线程访问一个资源时使用StringBuffer。
Runtime类(不是重点,但会面试)

范例:取得内存空间大小


面试题:java如何调正可用内存的大小?
所有的进程启用的时候内存都是分配好的,如果内存不够,找虚拟内存去。
调内存大小比较麻烦,看看java内存分配,

java中的内存划分主要有两个组成部分:
堆内存:保存实例化对象的内容,在每个JVM进程中,对象的堆内存空间都会有垃圾收集器自动回收。
非堆内存(Eden+FrontSpace+To Space):主要产生新的对象。

如果要想调整内存空间的大小就是堆内存空间,它的调整有如下三个参数:

范例:设置参数(在执行的时候输入参数,记事本编写的方式)

用eclipse方式,代码右键:


在执行下代码:

System类
堆这个类并不陌生,这个会想到System.out.print()\System.in

范例:利用此方法实现操作花费的时间统计

对象克隆

范例:实现克隆的操作
只有写上接口Cloneable才表示此类对象可以克隆


或者:


运行,值都改变了:
日期操作类
数字操作类
Math类


实现四舍五入
范例:实现四舍五入:

执行:

四舍五入,但是整个代码过程里会发现一个小数位统一没有了,此时程序代码不可能被现实开发所使用

范例:pow()的使用


![]()
有效的梳理操作
范例:实现准确的数学操作()

Random类(随机数)
范例:观察

多次与输出都是随机(没有超过100):




在看看

执行():

范例:设置种子数:就是随机生成有种子的数字

这个执行会生成有5、6、7的数字
多执行几遍看看:看不啥变化,就是含有







执行:不能超过37







运行结果:
比较器

数组操作类:Arrays(面试笔试最多)

二分查找必须有序


![]()
前提也是排序


若是
的123换位置了,就成


![]()

![]()
直接对数组进行排序的操作;
比较器Comparable(核心)


没有语法错误,但是运行就报错
![]()
有可能出现以下的错误信息

![]()
![]()
本文深入探讨Java中的String、StringBuffer、StringBuilder类的特点与应用,解析Runtime类内存管理及调整方法,阐述System类功能,并讲解对象克隆、日期与数字操作、比较器等关键概念。同时,对比StringBuffer与StringBuilder的性能差异,为多线程环境下的字符串操作提供指导。


915

被折叠的 条评论
为什么被折叠?



