JAVA中的常用类

it2022-05-05  230

Pattern和Matcher类 Pattern这个类是一个规范和Matcher匹配着用 先拿Pattern定义一个规范,再和Matcher里的去匹配,如果匹配对,那么就返回True 如果匹配错误则返回false Matcher更多的是和正则表达式去匹配的用来规范 Math类

Match包含的是执行基本数学运算的方法,如平方啊,对数之类的

其中的成员变量有 public static final double E : 自然底数 public static final double PI: 圆周率

其中的方法有

方法名功能public static int abs(int a)取绝对值public static int abs(int a)取绝对值public static double ceil(double a)向上取整public static double floor(double a)向下取整public static int max(int a,int b)获取最大值public static int min(int a, int b)获取最小值public static double pow(double a,double b)获取a的b次幂public static double random()获取随机数 返回带正号的 double 值,该值大于等于 0.0 且小于 1.0。public static int round(float a)四舍五入public static double sqrt(double a)获取正平方根

最简单的如

public static void main(String[] args) { int num = -1000; System.out.println(Math.abs(num));//对num取绝对值并且输出 }

Random类 Random是一个产生随机数的类 如果用相同的种子取创建Random,则用相同的方法调用序列,他们将生成并返回的相同的数字序列

public static void main(String[] args) { Random random = new Random(100);//如果我不给里面添加东西 //输出随机数 int i = random.nextInt(); //则输出的每一次是一个不一样随机数 System.out.println(i); //添加东西后,则输出的每次都是同样的随机数 } /*由此可以判断里面的构造方法是public Random() 没有给定种子,使用的是默认的(当前系统的毫秒值) public Random(long seed) 给定一个long类型的种子,给定以后每一次生成的随机数是相同的*/

成员方法

方法名功能public int nextInt()没有参数 表示的随机数范围 是int类型的范围public int nextInt(int n)可以指定一个随机数范围void nextBytes(byte[] bytes)生成随机字节并将其置于用户提供的空的 byte 数组中。

System类 System中包含一些游泳的类字段和方法,他不能被实例化

方法名功能public static void gc()调用垃圾回收器public static void exit(int status)退出java虚拟机 0 为正常退出 非0为 异常退出public static long currentTimeMillis()获取当前时间的毫秒值 public static void main(String[] args) { System.out.println(System.currentTimeMillis() / 1000 / 60 / 60 / 24); //输出系统时间的天数,也就是从美国时间的1970年1月1日00点00开始计时到现在经过的天数 }

BigInteger类 可以让Integer范围内的数据进行运算 调用的成员方法和BigDecimal类似 只是调用的时候里面的类型不是BigDecimal而是BigInteger了

BigDecimal类 由于在运算的时候,float类型和double很容易丢失精度。 所以,为了能精确的表示、计算浮点数,

public static void main(String[] args) { BigDecimal bigDecimal = new BigDecimal(10.12314); BigDecimal bigDecimal2 = new BigDecimal(0.123123); BigDecimal multiply = bigDecimal.multiply(bigDecimal2); System.out.println(multiply); } //类似与这种这种乘完以后我都不知道有多长,就是很精确 // 剩下的运算法则,我写在下面,要用可以直接调用,都很见名知意 方法名功能public BigDecimal add(BigDecimal augend)加public BigDecimal subtract(BigDecimal subtrahend)减public BigDecimal multiply(BigDecimal multiplicand)乘public BigDecimal divide(BigDecimal divisor)除法public BigDecimal divide(BigDecimal divisor,int scale,int roundingMode)scale 小数点后面保留几位roundingMode取舍模式 比如四舍五入

Date类 看见名字,就能知道他是一个日期类 所以类Date表示的是特定的瞬间,精确到毫秒 构造方法 public Date() public Date(long date) //把一个long类型的毫秒值转换成一个日期对象

成员方法

方法名功能public long getTime()获取一个日期对象额毫秒值public void setTime(long time)给一个日期对象设置上指定的毫秒值

所以我们可以总结出 日期----毫秒(转换) 调用getTime 毫秒----日期(转换) 用构造方法也就是有参构造

SimpleDateFormat类 可以把一个日期对象格式化成一个文本(字符串) , 也可以把一个日期字符串解析成一个日期对象

public static void main(String[] args) { SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy:MM:dd HH:mm:ss"); String time = simpleDateFormat.format(new Date()); System.out.println(time); }

通过这种方式可以算出当前系统的时间 在new SimpleDateFormat的时候里面的有参数构造按照这个方式来写 y 年 M 月 d 天 H 时 m 分 s 秒 直接拿Date输出的话是毫秒值

成员方法

public String format(Date date): 把一个日期对象格式化成一个字符串 public Date parse(String dateStr): 把一个日期字符串解析成一个日期对象 注意要以指定格式解析

Calendar类 Calendar 类是一个抽象类,不能直接new对象,可以通过他的一个静态成员方法getInstance()来获取他的对象 它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等日历字段之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。

成员方法

方法名功能public static Calendar getInstance()使用默认时区和语言环境获得一个日历对象public int get(int field)获得给定日历字段对应的值 field通过Calendar提供的字段来拿public void add(int field,int amount)根据日历的规则,为给定的日历字段添加或减去指定的时间量public final void set(int year,int month,int date)设置日历时间 年月日

最新回复(0)