Day23---学习Java第二弹

2021-08-02

Java中常见的类

String中与字符集相关的方法

String(byte[] by,String charset):通过指定的字符集,将指定的字节数组转成字符串(解码)

byte[] getBytes(String charset):通过指定的字符集,将字符串转成字节数组(编码)

 

正则表达式

负责字符串的匹配处理(一般用于校验字符串格式)

规则

1)字符

x:x字符,a表a字符

\\:反斜线字符

\n:换行符

\r:回车符

 

2)字符类

[abc]:表示a、b、c中的一个字符

[^abc]:表示除了a、b、c之外的任意一个字符

[a-zA-Z]:表示a~z或A~Z中的一个字符

[0-9]:表示数字

 

3)预定义字符类

.:表示任意字符

\.:表示'.'字符

\d:表示数字字符,[0-9]

\w:表示单词字符,[a-zA-Z_0-9]

 

4)边界匹配器

^:表示行的开头

$:表示行的结尾

\b:表示单词的边界

 

5)数量词

?:表示0次或者1次

*:表示0次或者多次

+:表示1次或者多次

{n}:表示n次

{n,}:表示至少n次

{n,m}:n~m次

 

3、StringBuilder类

线程不安全的可变字符序列

1)构造方法

StringBuilder():以默认容量创建空的StringBuilder对象

StringBuilder(int capacity):以指定容量创建空的StringBuilder对象

StringBuilder(String str):以指定的字符串创建StringBuilder对象

2)成员方法

获取功能

int capacity():获取容量

int length():获取长度

添加功能

append(int value):追加。可以追加多种类型

insert(int offset,String s):在指定的位置插入指定数据

删除功能

deleteCharAt(int index):删除指定索引处的元素

delete(int start,int end):删除[start,start-1]范围内的元素

替换功能

replace(int start,int end,String s):将[start,end-1]范围内的元素替换成指定字符串

反转功能

reverse():元素反转

截取功能

String subString(int start):截取指定位置一直到末尾

String subString(int start,int end):截取[start,end-1]范围

String、StringBuilder和StringBuffer的区别?

String内容不可改变

StringBuilder和StringBuffer内容可变

StringBuilder是线程不安全的,不同步,效率高

StringBuffer是线程安全的,同步,效率低

 

4、Scanner

1)构造方法

Scanner(InputStream is)

构造一个文本扫描器,它生成的值是从指定的值输入流扫描的

System.in 是一个标准的输入流,属于InputStream

2)成员方法

boolean hasNext():是否有下一个数,有true,没有false

String next():获取下个数

int nextInt():获取下个int数据

String nextLine():获取一行数据

 

5、Math类

成员方法

abs(int a):绝对值

ceil(double d):向上取整

floor(double d):向下取整

max(int a,int b):最大值

pow(double a,double b):a的b次幂

random():随机数[0.0,1.0]

round(float f):四舍五入

sqrt(double d):算术平方根

 

6、Random类

1)构造方法

Random():以当前时间毫秒值作为种子,创建Random对象

Random(long seed):以指定种子创建Random对象

2)成员方法

nextInt():生成1个int类型范围的随机数

nextInt(int n):产生1个[0,n-1]范围内的随机数

生成0~n之间的数

①(int)Math.random()*(n+1)

②Random r = new Random();

r.nextInt(m)表示生成[0,m-1]之间的随机数,也就是说random.nextInt(m+1),将生成[0,m]之间的随机整数。

r.nextInt(n+1)

生成n~m之间的随机数

①n+(int)(Math.random()*(m+1-n));

②Random r = new Random();

r.nextInt(m+1-n)+n;

 

7、Date类

表示特定的瞬间,精确到毫秒值

1)构造方法

Date():以当前时间毫秒值创建Date对象

Date(long time):以指定的毫秒值创建Date对象

2)成员方法

long getTime():获取Date对象的毫秒值

setTime(long time):设置Data对象的毫秒值

 

8、DateFormat

它是一个抽象类,用来格式化或者解析日期

格式化:Date————》String

解析:String————》Date

getDateInstance(int style,Locale loc):获取日期格式器,该格式器具有给定的语言环境和给定的格式化风格

String format(Date date):格式化

Date parse(String time):解析

 

9、SimpleDateFormat

它是DateFormat的子类

1)构造方法

SimpleDateFormat():以默认模式创建对象

SimpleDateFormat(String pattern):以指定模式创建对象

常用模式

yyyy:年 MM:月 dd:日

HH:时 mm:分 ss:秒

2)常成员方法

String format(Date date):格式化

Date parse(String time):解析

 

10、Calendar类

日历类,用于获取或者操作日历字段(年月日)

该类是一个抽象类,不可以实例化

成员方法

static Calender getInstance():以默认时区和语言创建日历

int get(int field):获取指定字段的日历值

set(int field,int value):给指定的日历字段设置指定的值

set(int year,int month,int date):设置年月日

Date getTime():获取日历对象的日期

setTime(Date d):设置日历对象的日期

add(int field,int amount):对指定的日历字段添加指定的值

 

11、System类

没有构造方法

成员方法

gc():运行垃圾回收处理机制(系统会在某个不确定的时间调用该方法)

会调用finalize(),进行垃圾回收

exit(int status):退出JVM,0表示非异常退出

currentTimeMills():获取当前时间毫秒值

arrayCopy(Object[] srcArr,int srcPos,Object[] desArr,int destPos,int len):数组复制

 

12、BigInteger类

1)构造方法

BigInteger(String s):通过字符串创建BigInteger对象

2)成员方法

add(BigInteger bi):+

subtract(BigInteger bi):-

multiply(BigInteger bi):*

divide(BigInteger bi):/

 

13、BigDecimal类

用于解决浮点型运算精度损失的问题

1)构造方法

BigDecimal(String s):通过字符创建BigDecimal对象

2)成员方法

add(BigDecimal bi):+

subtract(BigDecimal bi):-

multiply(BigDecimal bi):*

 

posted @ 2021-08-02 21:06  zrswheart  阅读(33)  评论(0编辑  收藏  举报