Java高级---实用类

Java高级—实用类

一、Math:

double Pi = Math.PI;//常量PI
double e = Math.E;  //常量E
Math.random();      //随机数0~1
Math.round(34.3);   //四舍五入
Math.abs(-23.4);    //绝对值
Math.floor(23.4);   //向下取整
Math.ceil(345.6);   //向上取整
Math.sqrt(2);       //根号
Math.log(1);        //log函数
Math.pow(10, 3);    //次方
Math.max(1,4);      //求最大值
Math.min(3.2,43);   //求最小值

还有一些
在这里插入图片描述

二、日期

//1.Date
Date d = new Date();
System.out.println(d);

//2.SimpleDateFormat
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//字符顺序不能变,中间的格式可以换
String time = format.format(d);
System.out.println(time);

//3.Calender
Calendar calendar = format.getCalendar();
System.out.println(calendar.get(Calendar.HOUR));//从0开始,星期从星期天开始
System.out.println(calendar.get(Calendar.MONTH));//从0开始
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));//从1开始
System.out.println(calendar.get(Calendar.WEEK_OF_YEAR));//今天在一年中是第几周

三、String

1、length():获取字符串长度
2、equals():比较两个字符串内容是否相同
这里讲一下:equals()和==区别:
在这里插入图片描述
在这里插入图片描述
3、equalsIgnoreCase():不分大小写进行比较
4、toLowerCase():转换成小写
5、toUpperCase():转换成大写
6、charAt():获取第几个位置的字符
7、toCharArray():转换成字符数组
8、split():根据给定的正则表达式的匹配来拆分此字符串。形成一个新的String数组。
9、startsWith():字符串是否以xxx为开头
10、endsWith():字符串是否以xxx为结尾
11、contains():字符串中是否包含指定子串
12、replace():字符串替换
在这里插入图片描述
最后的字符串拼接: s1+s2 【这应该再熟悉不过了】,但还有个concat()方法

Java中String类concat方法和+的区别:

1.concat:将指定字符串连接到此字符串的结尾。如果参数字符串的长度为 0,则返回此 String 对象。否则,创建一个新的 String 对象,用来表示由此 String,对象表示的字符序列和参数字符串表示的字符序列连接而成的字符序列。
示例:
“cares” .concat( “s” ) returns “caress”
“to” .concat( “get” ).concat( “her” ) returns “together”
参数:str - 连接到此 String 结尾的 String。
返回:一个字符串,它表示在此对象字符后连接字符串参数字符而成的字符。

2.+:可以把任何类型的数据与String类型的连接起来

四、String,StringBuffer,StringBuilder

1、String:不可变长度,安全,速度最慢

在这里插入图片描述
final类型
通过源码,我们可以看出String底层其实就是个字符数组(char[]),改变长度就会创建新的对象

2、StringBuffer:可变长度,安全,速度最快

final类型
长度超过指定长度(16)时,不会创建对象,而是改变数组长度
长度过长时自动扩容,类似ArrayList
append()方法进行字符串拼接

为什么安全?是因为里面的方法都加了synchronized关键字,使得线程同步安全
在这里插入图片描述

3、StringBuilder:可变长度,不安全

final类型
默认长度16
和StringBuffer一样,只不过不适合多线程,不安全

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值