JDK7前时间相关类
Date时间类

Simpledateformat

Format 格式化
Parse 解析

默认格式

指定格式
EE:表示周几

Parse:把字符串时间转成date对象
注意:创建对象的格式要和字符串的格式一样

Calendar日历类
不能创建对象
Getinstance 获取当前对象


Getinstance



Get


Set add增加 若是减少就写一个负数


JDK8新增的时间相关类


Zoneid 时区
静态方法,不需要创建对象 直接ZoneId. 调用

Instance时间戳



Minus plus
不会改变原有的时间对象,会创建一个新的instance

Zonedatetime




不会改变原调用者

Datetimeformatter

JDK8 中的Calendar 日历类
LocalDate、LocalTime、LocalDateTime 三个类



获取月的方法

计算时间间隔

Chronounit 最常用

包装类
把基本数据类型变成一个对象

 \
\
integer用的最多

重要:


自动装箱
自动拆箱(JDK5开始)

直接=数字,直接赋值
Integer方法
转成其他进制的数
字符串转整数

不只是整数,boolean,double都有这个方法

以后键盘录入都用nextline,得到字符串后再转成想要的数据类型

算法练习

package exercise;import java.util.ArrayList;
import java.util.Scanner;public class exercise1 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);ArrayList<Integer> arrayList = new ArrayList<>();int sum = 0;while (sum <= 200) {System.out.println("输入整数");String s = sc.nextLine();int i = Integer.parseInt(s);if (i < 1 || i > 100) {System.out.println("数字不在1~100");continue;}sum += i;arrayList.add(i);}System.out.println("sum = " + sum);for (Integer i : arrayList) {System.out.print(i + ", ");}}
}
package exercise;import java.util.Scanner;public class exercise2 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("输入一个数");String s = sc.nextLine();if (!s.matches("[1-9]\\d{0,9}")) {System.out.println("错误输入");return;}int result = 0;for (char c : s.toCharArray()) {int i = c - '0';result = result * 10 + i;}System.out.println(result);System.out.println(result + 1);}
}
package exercise;public class exercise3 {public static void main(String[] args) {System.out.println(toBinaryString(10));}public static String toBinaryString(int num){StringBuilder sb = new StringBuilder();while (num != 0) {int remainder = num % 2;
//            sb.append(remainder);sb.insert(0,remainder);num /= 2;}return sb.toString();}
}




或者jdk8一个方法就搞定
