常用类(StringBuffer,StringBulider,Math,Random,System,Date,Calendar,SimpleDateFormat,BigDecimal)

StringBuffer类

概述:我们如果对字符串进行拼接操作即直接通过+号进行连接,每次拼接,都会构建一个新的String对象,既耗时,又浪费空间。而StringBuffer就可以解决这个问题。
线程安全的可变字符序列

StringBuffer和String有何区别?

String是不可变的,但StringBuffer是可变的。

String被声明完成时就已经确定了,就算我们重新给其赋值,也只是重新在字符常量池中创建了一个新的字符串常量,然后再用原来的字符串名称来抓住它。

StringBuffer在进行操作的时候不生成新的对象,所以在内存使用上是要比String更好。并且StringBuffer线程是安全的。

声明方式:

StringBuffer stringbuffer=new StringBuffer();
StringBuffer stringbuffer1new StringBuffer("string");

常用方法

添加功能:

StringBuffer.append(String str)//将str字符串拼接在StringBuffer字符串后面
StringBuffer.insert(int offset,String str)//将str字符串拼接在StringBuffer字符串中的offset位置
删除功能

StringBuffer.deleteCharAt(int index)//删除StringBuffer中的指定位置的字符
StringBuffer.delete(int start,int end)//删除StringBuffer中从start到end处的字符串
替换功能

StringBuffer.replace(int start,int end,String str)//用str字符串替换从start到end处的字符串

反转功能

StringBuffer.reverse()//将StringBuffer中的字符倒序输出

截取功能

StringBuffer.substring(int start)//从start处开始截取StringBuffer中的字符

StringBuffer.substring(int start,int end)//从start开始截取到end处

:这几种方法中除了截取功能返回值为String外其余返回值均为StringBuffer

​ StringBuilder类功能和StringBuffer功能完全一致, StringBuffer是线程安全的

String类StringBuffer类StringBuilder区别

String:是字符常量,适用于少量的字符串操作的情况
StringBuilder:适用于单线程下在字符缓冲区进行大量操作的情况
StringBuffer:适用多线程下在字符缓冲区进行大量操作的情况

Math类

概述:Math类中提供了一系列静态方法用于科学计算;其方法的参数和返回值类型一般为double型。

常用方法

Math.abs();// 绝对值

Math.sqrt();// 平方根

Math.pow(double a, double b);// a的b次幂

Math.max(double a, double b);//a和b中较大数

Math.min(double a, double b);//a和b中较小数

Math.random();//返回 0.0 到 1.0 的随机数

Math.long round(double a);//double型的数据a转换为long型(四舍五入)

Random类

概述:Random类是用来产生随机数

构造方法:Random()

常用方法:Random. nextInt();//生成一个随机数

Random.nextInt(int n)//生成0-(n-1)的随机数;

System类

概述:系统类,该类中包含一些有用的类字段和方法。它不能被实例化。

常用方法:System.exit(int status)//虚拟机退出

System.currentTimeMillis()//获取从1970年1月1日起到现在的毫秒值,返回值为long类型

Date类

概述:使用Date类代表当前系统时间

构造方法:Date time=new Date()

Calendar类

概述:Calendar类是一个抽象类,在实际使用时实现特定的子类的对象,创建对象的过程对程序员来说是透明的,只需要使用getInstance方法创建即可。

即:Calendar c1=Calendar.getlnstance();

SimpleDateFormat类

概述:日期格式化类

构造方法:SimpleDateFormat(/*格式*/)//格式可以为:yyyy-MM-dd

日期转字符串

Date now=new Date();
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
String time1=simpleDateFormat.format(time);

字符串转日期:

SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
Date time=simpleDateFormat.prase("2020-12-23");//输入的字符串必须和规定的格式一样

BigDecimal类

概述:在计算机中不论是float 还是double都是浮点数,而计算机是二进制的,浮点数会失去一定的精确度。根本原因是:十进制值通常没有完全相同的二进制表示形式;十进制数的二进制表示形式可能不精确。只能无限接近于那个值。但是将数值存在字符串里面,然后再通过字符串进行操作就不会出现这样的情况,所以就提供了BigDecimal类。

构造方法:BigDecimal(String val)

基本运算方法:

add()//加

substract()//减

multipy()//乘

divide()除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值