<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>笔记</title>
</head>
<body>
<h4>Date:</h4>
默认获取的是当前的日期时间
Date d = new Date();
System.out.println(d); //输出的是默认风格的日期
获取日期对象的毫秒值:
System.currentTimeMillis();
new Date().getTime()
把当前日期按照指定的毫秒值进行设定
Date d2=new Date(1492851628576l);
System.out.println(d2);
public void setTime(long time):设置日期对象的毫秒值
Date d3=new Date();
d3.setTime(1492851657);
System.out.println(d3);
<h4>DateFormat</h4>
1.格式化:Date -- String
方法: format(Date d)方法:
需求:格式化日期,将默认风格输出的日期转换为另一种默认风格的输出
用法:调用SimpleDateFormat类中的format(Date d)方法
代码:Date d = new Date(); //创建当前日期对象
SimpleDateFormat sdf = new SimpleDateFormat();
String dateStr = sdf.format(d); //调用它的方法
System.out.printl(datestr);
输出的转变: Thu Apr 27 20:20:29 CST 2017 -----> 17-4-27 下午8:20
2.格式化:
方法:SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
format(Date d)方法
需求: 按照自己指定的一种风格将日期格式化
代码:Date d = new Date();
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateStr2 = sdf2.format(d);
System.out.println(dateStr2);
//格式成什么类型的东西用什么类型的对象去接受
3.解析:String -- Date
方法:Date parse(String s)
需求:将字符串类型的日期还原成系统默认风格
代码:String dateStr = "2017-04-22 16:11:56"; //创建一个日期字符串
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//括号内的风格必须和字符串内的风格相同
Date d = sdf.parse(dateStr);
System.out.println(d);
输出转变:2017-04-22 16:11:56---->Sat Apr 22 16:11:56 CST 2017
<h4>DateUtils</h4>
需求:
1.让外界无法创建这个类的对象
2.设置的方法直接可以通过类名调用
3.可以获取 yy年MM月dd日
4.可以获取 HH:mm:ss
5.可以获取 yy-MM-dd HH:mm:ss
代码: public static String getDate() {
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yy年MM月dd日");
String dateStr = sdf.format(d);
return dateStr;
}
DateUtils.getDate();
完成:输入自己的出生年月和现在的日期,算出自己活了多少天
代码实现: Scanner sc = new Scanner(System.in);
System.out.println("请输入出生日期:");
String s1 = sc.nextLine();
System.out.println("请输入现在的日期:");
String s2 = sc.nextLine();
// 将日期字符串转换成日期的默认风格:
SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd");
Date d1 = s.parse(s1);
Date d2 = s.parse(s2);
long d3 = d1.getTime();
long d4 = d2.getTime();
long time3 = Math.abs(d4 - d3) / 1000 / 60 / 60 / 24;
System.out.println(time3);
<h4>Calendar</h4>
概念: 它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等
日历字段之间的转换提供了一些方法
方法: public int get(int field):返回给定日历字段的值
//获取日历对象
Calendar c = Calendar.getInstance();
//获取年份
System.out.println(c.get(Calendar.YEAR));
//获取月份
System.out.println(c.get(Calendar.MONTH)+1);
//获取日期
System.out.println(c.get(Calendar.DATE));
//或取小时
System.out.println(c.get(Calendar.HOUR));
//获取分钟
System.out.println(c.get(Calendar.MINUTE));
//获取秒数
System.out.println(c.get(Calendar.SECOND));
实现:任意一年的二月有多少天?
Scanner sc = new Scanner(System.in);
//1.获取键盘录入的年份
int year = sc.nextInt();
//2.将日历设置成录入年份的3月1号
Calendar c = Calendar.getInstance(); //创建对象
c.set(year, 2,1);
//3.将日期字段向后推1天
c.add(Calendar.DATE, -1);
//4.获取此时的日期字段值
System.out.println("二月份有"+c.get(Calendar.DATE)+"天");
<h4>正则表达式</h4>
用法: String reg = "1[38][0-9]{9}";
String number = "13245678901";
System.out.println(number.matches(reg)); //返回值为boolean类型
正则表达式的规则直接百度;
1. 分割功能:public String[] split(String regex):根据给定正则表达式的匹配拆分此字符串。
代码实现: String s2 = "aa.bb.cc";
String reg2 = "\\.";
String[] strS2 = s2.split(reg2);
for (int i = 0; i < strS2.length; i++) {
System.out.println(strS2[i]);
/**
* 需求2:
我有如下一个字符串:”91 27 46 38 50”
请写代码实现最终输出结果是:”27 38 46 50 91”
1.切割字符串
2.转换成int值存入数组
3.排序
4.遍历数组,用sb进行拼接
*/
String s = "91 27 46 38 50";
//1.切割字符串
String reg = " ";
String[] strS = s.split(reg);
//2.转换成int值存入数组
int[] arr = new int[strS.length];
for (int i = 0; i < strS.length; i++) {
arr[i] = Integer.parseInt(strS[i]);
}
// 3.排序
Arrays.sort(arr);
//System.out.println(Arrays.toString(arr));
//4.遍历数组,用sb进行拼接
StringBuffer sb = new StringBuffer();
for (int i = 0; i < arr.length; i++) {
sb.append(arr[i]+" ");
}
System.out.println(sb.toString());
2. 替换功能: public String replaceAll(String regex,String
replacement):把符合regex的用replacement替换
代码实现: // 需求:字符串中的数字使用*代替
// public String replaceAll(String regex,String
// replacement):把符合regex的用replacement替换
String s = "我的银行卡号是:6103320894945843";
String reg = "\\d";
String newStr = s.replaceAll(reg, "*");
System.out.println(newStr);
</body>
</html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>笔记</title>
</head>
<body>
<h4>Date:</h4>
默认获取的是当前的日期时间
Date d = new Date();
System.out.println(d); //输出的是默认风格的日期
获取日期对象的毫秒值:
System.currentTimeMillis();
new Date().getTime()
把当前日期按照指定的毫秒值进行设定
Date d2=new Date(1492851628576l);
System.out.println(d2);
public void setTime(long time):设置日期对象的毫秒值
Date d3=new Date();
d3.setTime(1492851657);
System.out.println(d3);
<h4>DateFormat</h4>
1.格式化:Date -- String
方法: format(Date d)方法:
需求:格式化日期,将默认风格输出的日期转换为另一种默认风格的输出
用法:调用SimpleDateFormat类中的format(Date d)方法
代码:Date d = new Date(); //创建当前日期对象
SimpleDateFormat sdf = new SimpleDateFormat();
String dateStr = sdf.format(d); //调用它的方法
System.out.printl(datestr);
输出的转变: Thu Apr 27 20:20:29 CST 2017 -----> 17-4-27 下午8:20
2.格式化:
方法:SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
format(Date d)方法
需求: 按照自己指定的一种风格将日期格式化
代码:Date d = new Date();
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateStr2 = sdf2.format(d);
System.out.println(dateStr2);
//格式成什么类型的东西用什么类型的对象去接受
3.解析:String -- Date
方法:Date parse(String s)
需求:将字符串类型的日期还原成系统默认风格
代码:String dateStr = "2017-04-22 16:11:56"; //创建一个日期字符串
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//括号内的风格必须和字符串内的风格相同
Date d = sdf.parse(dateStr);
System.out.println(d);
输出转变:2017-04-22 16:11:56---->Sat Apr 22 16:11:56 CST 2017
<h4>DateUtils</h4>
需求:
1.让外界无法创建这个类的对象
2.设置的方法直接可以通过类名调用
3.可以获取 yy年MM月dd日
4.可以获取 HH:mm:ss
5.可以获取 yy-MM-dd HH:mm:ss
代码: public static String getDate() {
Date d = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yy年MM月dd日");
String dateStr = sdf.format(d);
return dateStr;
}
DateUtils.getDate();
完成:输入自己的出生年月和现在的日期,算出自己活了多少天
代码实现: Scanner sc = new Scanner(System.in);
System.out.println("请输入出生日期:");
String s1 = sc.nextLine();
System.out.println("请输入现在的日期:");
String s2 = sc.nextLine();
// 将日期字符串转换成日期的默认风格:
SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd");
Date d1 = s.parse(s1);
Date d2 = s.parse(s2);
long d3 = d1.getTime();
long d4 = d2.getTime();
long time3 = Math.abs(d4 - d3) / 1000 / 60 / 60 / 24;
System.out.println(time3);
<h4>Calendar</h4>
概念: 它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH、HOUR 等
日历字段之间的转换提供了一些方法
方法: public int get(int field):返回给定日历字段的值
//获取日历对象
Calendar c = Calendar.getInstance();
//获取年份
System.out.println(c.get(Calendar.YEAR));
//获取月份
System.out.println(c.get(Calendar.MONTH)+1);
//获取日期
System.out.println(c.get(Calendar.DATE));
//或取小时
System.out.println(c.get(Calendar.HOUR));
//获取分钟
System.out.println(c.get(Calendar.MINUTE));
//获取秒数
System.out.println(c.get(Calendar.SECOND));
实现:任意一年的二月有多少天?
Scanner sc = new Scanner(System.in);
//1.获取键盘录入的年份
int year = sc.nextInt();
//2.将日历设置成录入年份的3月1号
Calendar c = Calendar.getInstance(); //创建对象
c.set(year, 2,1);
//3.将日期字段向后推1天
c.add(Calendar.DATE, -1);
//4.获取此时的日期字段值
System.out.println("二月份有"+c.get(Calendar.DATE)+"天");
<h4>正则表达式</h4>
用法: String reg = "1[38][0-9]{9}";
String number = "13245678901";
System.out.println(number.matches(reg)); //返回值为boolean类型
正则表达式的规则直接百度;
1. 分割功能:public String[] split(String regex):根据给定正则表达式的匹配拆分此字符串。
代码实现: String s2 = "aa.bb.cc";
String reg2 = "\\.";
String[] strS2 = s2.split(reg2);
for (int i = 0; i < strS2.length; i++) {
System.out.println(strS2[i]);
/**
* 需求2:
我有如下一个字符串:”91 27 46 38 50”
请写代码实现最终输出结果是:”27 38 46 50 91”
1.切割字符串
2.转换成int值存入数组
3.排序
4.遍历数组,用sb进行拼接
*/
String s = "91 27 46 38 50";
//1.切割字符串
String reg = " ";
String[] strS = s.split(reg);
//2.转换成int值存入数组
int[] arr = new int[strS.length];
for (int i = 0; i < strS.length; i++) {
arr[i] = Integer.parseInt(strS[i]);
}
// 3.排序
Arrays.sort(arr);
//System.out.println(Arrays.toString(arr));
//4.遍历数组,用sb进行拼接
StringBuffer sb = new StringBuffer();
for (int i = 0; i < arr.length; i++) {
sb.append(arr[i]+" ");
}
System.out.println(sb.toString());
2. 替换功能: public String replaceAll(String regex,String
replacement):把符合regex的用replacement替换
代码实现: // 需求:字符串中的数字使用*代替
// public String replaceAll(String regex,String
// replacement):把符合regex的用replacement替换
String s = "我的银行卡号是:6103320894945843";
String reg = "\\d";
String newStr = s.replaceAll(reg, "*");
System.out.println(newStr);
</body>
</html>