package com.sxt.mathdemo;/*
* Math类概述:Math 类涵盖了很多执行基本数学运算的方法, 是一个工具类。
成员方法
public static int abs(int a) 求绝对值
public static double sqrt(double 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() 生成随机数
public static int round(float a) 四舍五入
*/publicclassMathDemo01{publicstaticvoidmain(String[] args){
System.out.println(Math.abs(-3));
System.out.println(Math.sqrt(4));
System.out.println(Math.ceil(2.2));
System.out.println(Math.floor(1.2));
System.out.println(Math.max(10, Math.max(20,30)));// System.out.println(Math.min(a));
System.out.println(Math.pow(2,3));
System.out.println(Math.random());
System.out.println(Math.round(4.5));for(int i =0; i <1000; i++){
System.out.println(getRandomNum(20,30));}}// 练习: 书写一个方法生成任意范围的随机数publicstatic int getRandomNum(int start, int end){return(int)(Math.random()*(end - start +1)+ start);}}
Random类概述:生成随机数
package com.sxt.randomdemo;import java.util.Random;/*
* Random类概述:生成随机数
构造方法
public Random()
public Random(long seed)
成员方法
public int nextInt() 生成int范围内的随机数
public int nextInt(int n)
7
5
6
4
2
9
1
5
4
0
*/publicclassRandomDemo01{publicstaticvoidmain(String[] args){
Random random =newRandom(1000L);// random.setSeed(1000L);for(int i =0; i <10; i++){// System.out.println(random.nextInt());
System.out.println(random.nextInt(10));// System.out.println(random.nextBoolean());}}// 练习: 书写一个方法生成任意范围的随机数publicstatic int getRandomNum(int start, int end){return(int)(Math.random()*(end - start +1)+ start);}}
System类概述:System 类包含一些有用的类字段和方法。它不能被实例化。
package com.sxt.systemdemo;import java.io.IOException;/*
* System类概述:System 类包含一些有用的类字段和方法。它不能被实例化。
成员方法
public static void gc() 运行垃圾回收器
public static void exit(int status) 终止当前正在运行的 Java 虚拟机。参数用作状态码;根据惯例,非 0 的状态码表示异常终止
public static long currentTimeMillis() 返回以毫秒为单位的当前时间
Runtime
exec(String command)
*/publicclassSystemeDemo{publicstaticvoidmain(String[] args) throws IOException {// System.out.println("21313");// System.exit(0);// System.out.println("over");
Runtime rt = Runtime.getRuntime();// rt.exit(0);
Process process = rt.exec("calc");// try {// Thread.sleep(5000);// } catch (InterruptedException e) {// // TODO Auto-generated catch block// e.printStackTrace();// }// process.destroy();}}
BigInteger类概述:对于超出int范围内的数据进行运算
package com.sxt.bigintegerdemo;import java.math.BigInteger;import java.util.Arrays;/*
* BigInteger类概述:对于超出int范围内的数据进行运算
构造方法
public BigInteger(String val)
成员方法
public BigInteger add(BigInteger val)
public BigInteger subtract(BigInteger val)
public BigInteger multiply(BigInteger val)
public BigInteger divide(BigInteger val)
public BigInteger[] divideAndRemainder(BigInteger val)
*/publicclassBigIntegerDemo{publicstaticvoidmain(String[] args){
int i = Integer.MAX_VALUE+1;
System.out.println(i);
BigInteger bi =newBigInteger("2147483648");
System.out.println(bi.add(newBigInteger("1")));
System.out.println(bi.subtract(newBigInteger("1")));
System.out.println(bi.multiply(newBigInteger("10")));
System.out.println(bi.divide(newBigInteger("10")));
System.out.println(Arrays.toString(newBigInteger("4").divideAndRemainder(newBigInteger("5"))));}}
BigDecimal类概述:不可变的、任意精度的有符号十进制数。
package com.sxt.bigdecimaldemo;import java.math.BigDecimal;import java.util.Arrays;/*
* 在一些金融项目当中,在进行小数运算的时,float、double很容易丢失精度为了能精确的表示、计算浮点数,Java设计了BigDecimal。
BigDecimal类概述:不可变的、任意精度的有符号十进制数。
构造方法
public BigDecimal(String val)
成员变量
public BigDecimal add(BigDecimal augend)
public BigDecimal subtract(BigDecimal subtrahend)
public BigDecimal multiply(BigDecimal multiplicand)
public BigDecimal divide(BigDecimal divisor)
数据库中数值类型对应着Java当中Bigdecimal类型
*/publicclassBigDecimalDemo{publicstaticvoidmain(String[] args){
System.out.println(0.01+0.09);
System.out.println(1.0-0.33);
System.out.println(1.015*100);
System.out.println(1.301/100);
BigDecimal bd =newBigDecimal("100");
bd.doubleValue();
bd.shortValue();
System.out.println(newBigDecimal("0.01").add(newBigDecimal("0.09")));
System.out.println(newBigDecimal("1.0").subtract(newBigDecimal("0.33")));
System.out.println(newBigDecimal("1.015").multiply(newBigDecimal("100")));
System.out.println(newBigDecimal("1.301").divide(newBigDecimal("100")));
System.out.println(Arrays.toString(newBigDecimal("4").divideAndRemainder(newBigDecimal("5"))));}}
Date类概述:类 Date 表示特定的瞬间,精确到毫秒。
package com.sxt.datedemo;import java.util.Date;/*
* Date类概述:类 Date 表示特定的瞬间,精确到毫秒。
构造方法
public Date() 根据当前的默认毫秒值创建日期对象
public Date(long date) 根据给定的毫秒值创建日期对象
成员方法
public long getTime() 获取时间,以毫秒为单位
public void setTime(long time)) 设置时间
java.util.Date 和 java.sql.Date相互转换
数据库中的日期类型对应着Java当中的java.sql.Date
2017年12/24
*/publicclassDateDemo01{publicstaticvoidmain(String[] args){
Date d =newDate();
System.out.println(d);
String dateStr = String.format("北京时间为您报时:%tF %tT", d,d);
System.out.println(dateStr);
Date d2 =newDate(2000L);
System.out.printf("北京时间为您报时:%tF %tT%n", d2,d2);
long time = System.currentTimeMillis();
System.out.println(time);
Date d3 =newDate(1548399263787L);
System.out.printf("北京时间为您报时:%tF %tT%n", d3,d3);
d3.setTime(1000L);
System.out.printf("北京时间为您报时:%tF %tT%n", d3,d3);
System.out.println(d3.getTime());
java.util.Date utilDate =newjava.util.Date();
System.out.println(utilDate);
java.sql.Date sqlDate =newjava.sql.Date(utilDate.getTime());
System.out.println(sqlDate);
java.sql.Date sqlDate2 =newjava.sql.Date(1000L);
java.util.Date utilDate2 =newjava.util.Date(sqlDate2.getTime());
System.out.println(utilDate2);}}
Math类概述:Math 类涵盖了很多执行基本数学运算的方法, 是一个工具类。package com.sxt.mathdemo;/* * Math类概述:Math 类涵盖了很多执行基本数学运算的方法, 是一个工具类。 成员方法 public static int abs(int a) 求绝对值 public static double sqrt(double a) 开根号 pu...