Java常用类简单笔记

本文介绍了Java中日期类Date和Calendar的使用方法,包括日期的构造、设置、获取及格式化;同时讲解了BigInteger类的基本操作,如加减乘除、比较大小等,以及如何利用StringTokenizer和Scanner类来处理字符串。
摘要由CSDN通过智能技术生成

日期类

Date类

//构造方法
Date nowTime = new Date(); //等于当前系统时间
Date nowTime = new Date(time); //距离1970年1月1日0时time毫秒的日期(可正可负)

//常用方法
public long getTime(); //获取距离1970年1月1日0时的毫秒数

Calendar类

//创建方式
Calendar calendar = Calendar.getInstance(); //等于当前系统时间

//设置日期
public final void set(int year, int month, int date);
public final void set(int year, int month, int date, int hour, int minute);
public final void set(int year, int month, int date, int hour, int minute, int second);

//获取日期具体数字
public int get(int filed);
calender.get(Calender.YEAR); //返回年份
calender.get(Calender.MONTH); //返回月份,0表示一月,以此类推
calender.get(Calender.DATE); //返回日期
calender.get(Calender.DAY_OF_WEEK); //返回周几,1为星期日,2为星期一,以此类推

//获取距离1970年1月1日0时的毫秒数
public long getTimeInMillis();

日期的格式化

调用String类的format方法可以按照指定的格式输出日期

// 年和时的两种格式比较
Date nowtime = new Date();
System.out.println(String.format("现在是:%tY年%tm月%td日%tH时%tM分%tS秒", nowtime, nowtime, nowtime, nowtime, nowtime, nowtime));
//现在是:2021年12月20日20时49分31
System.out.println(String.format("现在是:%ty年%tm月%td日%tI时%tM分%tS秒", nowtime, nowtime, nowtime, nowtime, nowtime, nowtime));
//现在是:21年12月20日08时49分31

BigInteger类

在遇到大数字题目的时候使用java的BigInteger类是很方便的,不过BigInteger类只支持整数运算

//构造方法
BigInteger(String val) //将字符串的表示的数字赋值给当前对象

//常用方法
public BigInteger add(BigInteger val) //返回当前对象与val的和
public BigInteger subtract(BigInteger val) //返回当前对象与val的差
public BigInteger multiply(BigInteger val) //返回当前对象与val的积
public BigInteger divide(BigInteger val) //返回当前对象与val的商
public BigInteger remainder(BigInteger val) //返回当前对象与val的余(取模)
public int compareTo(BigInteger val) //返回当前对象与val的比较结果,当前对象大于val返回1,等于返回0,小于返回-1
public BigInteger abs() //返回当前对象的绝对值
public BigInteger pow(int a) //返回当前对象的a次幂
public String toString() //返回当前对象的十进制表示的字符串
public String toString(int p) //返回当前对象的p进制表示的字符串

StringTokenizer和Scanner类

StringTokenizer

//构造方法
StringTokenizer(String s):分割s字符串,默认分割符为空格、换行、回车、tab等
StringTokenizer(String s, String delm): delm中的字符的任意组合都可作为分隔符
//常用方法
String nextToken():下一个分割的字符串
bool hasMoreTokens():是否还有剩余的字符串
int countTokens():返回分割出的字符串数量

Scanner

//构造方法
Scanner scanner = new Scanner(source):指定获取字符的位置,可以是一个字符串,也可以是系统输入
//常用方法
scanner.useDelimiter(String delm):使用正则表达式指定分隔符

StringTokenizer和Scanner类的比较

StringTokenizer是一次性将字符串处理完,因此会占用更多的内存,不能使用正则表达式指定分隔符
Scanner是实时分隔的,速度会比StringTokenizer慢,并且不能查看可分隔的个数,能用正则表达式指定分隔符

Pattern和Matcher类

Pattern pattern = Pattern.compile(String regex):使用正则表达式指定匹配模式
Matcher matcher = pattern.matcher(String s):从字符串s中进行匹配
bool matcher.find():查找下一个匹配,若找到就返回true,每次调用都会更新start和end返回的值
int matcher.start():返回匹配到的字符的起始下标
int matcher.end():返回匹配到的字符的末尾的下标+1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值