常用类math、Date、calendar

Math

构造函数私有化——禁止其它类中创建它的对象
所有方法静态——可以直接使用类名访问

求次方、四舍五入、向上向下取整、获得π,弧度值转变为角度值,求绝对值,两数之间最大最小值等

Date

方法名用法
getTime()方法返回格林威治时间到对象指定的时间
compareTo(另一个日期)返回-1 0 或1,分别表示对象小于 等于 大于参数
after(另一个日期)返回是否在参数日期之后
before(另一个日期)返回是否在参数日期之前
System.currentTimeMillis();返回运行这句代码的当前时间
非date类的方法

SimpleDateFormat

日期格式化
日期对象转换为指定格式文本

	创建SimpleDateFormat对象并指定格式;
	给出日期对象
	调用SimpleDateFormat对象的format方法,将日期对象格式化,返回String字符串
	SimpleDateFormat sdm=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	Date d1=new Date();
	System.out.println(sdm.format(d1));//2019-10-31 16:19:53
	SimpleDateFormat sdm2=new SimpleDateFormat("D");
	System.out.println(sdm.format(d1));//304,表示10月31日是2019年的第304天

注意大小写!比如D表示年中的天数,d表示月中的天数

文本解析为日期对象

	创建SimpleDateFormat对象并指定格式;
	给出字符串形式的日期
	调用SimpleDateFormat对象的parse方法,将字符串对象按格式解析成日期对象
	SimpleDateFormat sdm=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	String time ="1999-12-11 11:23:34";
	Date d=sdm.parse(time);
	System.out.println(d);//Sat Dec 11 11:23:34 CST 1999

Calendar

是一个抽象类

getInstance()方法

获取对象,对象默认值为当前日期和时间;(通过这个方法,创建了子类对象并多态成为calendar对象的)

set()方法

  • 重载1 set(int时,int分,int秒)
  • 重载2 set(int年,int月,int日,int时,int分,int秒)
  • 重载3 set(int时间域,int值) 时间域:年=1.月=2…都是calendar类的静态常量,可以直接calendar.MONTH,即set(calendar.MONTH,int值)

get方法

get(int时间域)获取对象表示的时间的特定时间域值

add方法

add(int时间域,int值) 向指定时间域增加值(减少即 加负数),如对象原时间为2019-10-31 17:52:00 ;add(calendar.YEAR,20),结果为2039-10-31 17:52:00 ;

getTimeInMillis方法

获取对象时间的毫秒值

getTime()方法

返回calender对象对应的Date日期对象

Random 伪随机

Scanner文本扫描器

nextInt()方法

nextInt(int 输入的进制数):参数表示将 输入的文本 看做 参数指定的进制数 ,然后返回10进制整数

int num = new scanner.nextInt2);
//输入100
System.out.println(num);//输出4
不存在自动类型转换,如上例中若输入 A  喂等,会发生 InputMismathException

next()方法

输入的任何字符都会被视为字符串,然后返回字符串对象

空格会被视为结束(在开头的空格除外)

nextLine()方法

scanner发生异常后无法重新接收输入问题

public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		Random r1=new Random();
		int n=r1.nextInt();
		System.out.println("来猜大小");
		for(;;){
			try {
				System.out.println("请猜");
				int m=sc.nextInt();
				if (n==m) {
					System.out.println("对了");
				}else {
					System.out.println("错了重猜");
				}
			} catch (Exception e) {//当输入类型不匹配,如用nextInt接收到了字符串时
				System.out.println("输入有误请重新输入");
//				sc=new Scanner(System.in); 
//因为scanner对象在堆内存中已经把异常记录下来了,即便捕获了(输出“输入有误请重新输入”),也会在走过(“请猜”)时不断再次被捕获(再走到“输入有误请重新输入”),进入死循环,无法正常执行next等方法。故每次发生异常,需要重新创建scanner对象。
			}
		}
	}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值