目录
1 实验名称
Data类&Calendar类&Pattern类Match类
2 实验目的
掌握在eclipse中调试代码
掌握Data类&Calendar类&Pattern类Match类中方法的使用
掌握正则表达式的使用
3 实验源代码
Example1.java:
public class Example {
public static void main(String arg[]){
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
int year = calendar.get(Calendar.YEAR),
month = calendar.get(Calendar.MONTH)+1,
day = calendar.get(Calendar.DAY_OF_MONTH),
hour = calendar.get(Calendar.HOUR_OF_DAY),
minute = calendar.get(Calendar.MINUTE),
second = calendar.get(Calendar.SECOND);
System.out.print("now time: ");
System.out.print(" "+year+"年"+month+"月"+day+"日");
System.out.println(" "+hour+"时"+minute+"分"+second+"秒");
int y = 2012,m = 9,d = 1;
calendar.set(y,m-1,d);//将日历翻到2012年9月1日,注意8表示9月
long time1 = calendar.getTimeInMillis();
y = 2016;
m = 7;
day = 1;
calendar.set(y,m-1,d);
long time2 = calendar.getTimeInMillis();
long subDay = (time2-time1)/(1000*60*60*24);
System.out.println(""+new Date(time2));
System.out.println("与"+new Date(time1));
System.out.println("相隔"+subDay+"天");
}
}
Example2.java:
public class Example {
public static void main(String[] args) {
String s = "市话:76.8元,长途:167.38元,短信:12.68元";
String regex = "[0123456789.]+";//匹配数字列
Pattern p = Pattern.compile(regex);//
Matcher m = p.matcher(s);
double sum = 0;
while(m.find()){
String item = m.group();
System.out.println(item);
sum = sum+Double.parseDouble(item);
}
System.out.println("amount:"+sum);
}
}
4 实验运行结果图
5 总结
此次实验步骤:首先使用Date类获取当前日期和时间,Java中的Date类可以用来表示日期和时间。其次使用Calendar类进行日期和时间的计算,Java中的Calendar类可以进行日期和时间的计算,比如加减年、月、日、时、分、秒等。然后使用Pattern类进行正则表达式匹配,Java中的Pattern类可以用来编译和匹配正则表达式。最后使用DateFormat类将日期和时间格式化为指定字符串,Java中的DateFormat类可以将一个日期和时间格式化为指定的字符串。
String对象调用public boolean matches(String regex)方法可以判断当前String对象的字符序列是否和参数regex指定的正则表达式匹配。Data类的使用:有参构造和无参构造。使用Calendar类的static方法getInstance()可以初始化一个日历对象,然后calendar对象可以调用方法。使用正则表达式regex作参数得到一个称为模式的Pattern类的实例,得到可以检索String的对象input的Matcher类的实例matcher(称为匹配对象)。模式对象pattern调用matcher(CharSequence input)方法返回一个Matcher对象matcher,参数input用于给出matcher要检索的String对象。