有两种方法:
方法一:用javautilDate类来实现,并结合javatextDateFormat类来实现时间的格式化,看下面代码:
import javautil;
import javatext;
//以下默认时间日期显示方式都是汉语语言方式
//一般语言就默认汉语就可以了,时间日期的格式默认为MEDIUM风格,比如:2008-6-16 20:54:53
//以下显示的日期时间都是再Date类的基础上的来的,还可以利用Calendar类来实现见类TestDate2java
public class TestDate {
public static void main(String[] args) {
Date now = new Date();
Calendar cal = CalendargetInstance();
DateFormat d1 = DateFormatgetDateInstance(); //默认语言(汉语)下的默认风格(MEDIUM风格,比如:2008-6-16 20:54:53)
String str1 = d1format(now);
DateFormat d2 = DateFormatgetDateTimeInstance();
String str2 = d2format(now);
DateFormat d3 = DateFormatgetTimeInstance();
String str3 = d3format(now);
DateFormat d4 = DateFormatgetInstance(); //使用SHORT风格显示日期和时间
String str4 = d4format(now);
DateFormat d5 = DateFormatgetDateTimeInstance(DateFormatFULL,DateFormatFULL); //显示日期,周,时间(精确到秒)
String str5 = d5format(now);
DateFormat d6 = DateFormatgetDateTimeInstance(DateFormatLONG,DateFormatLONG); //显示日期。时间(精确到秒)
String str6 = d6format(now);
DateFormat d7 = DateFormatgetDateTimeInstance(DateFormatSHORT,DateFormatSHORT); //显示日期,时间(精确到分)
String str7 = d7format(now);
DateFormat d8 = DateFormatgetDateTimeInstance(DateFormatMEDIUM,DateFormatMEDIUM); //显示日期,时间(精确到分)
String str8 = d8format(now);//与SHORT风格相比,这种方式最好用
Systemoutprintln("用Date方式显示时间: " + now);//此方法显示的结果和CalendargetInstance()getTime()一样
Systemoutprintln("用DateFormatgetDateInstance()格式化时间后为:" + str1);
Systemoutprintln("用DateFormatgetDateTimeInstance()格式化时间后为:" + str2);
Systemoutprintln("用DateFormatgetTimeInstance()格式化时间后为:" + str3);
Systemoutprintln("用DateFormatgetInstance()格式化时间后为:" + str4);
Systemoutprintln("用DateFormatgetDateTimeInstance(DateFormatFULL,DateFormatFULL)格式化时间后为:" + str5);
Systemoutprintln("用DateFormatgetDateTimeInstance(DateFormatLONG,DateFormatLONG)格式化时间后为:" + str6);
Systemoutprintln("用DateFormatgetDateTimeInstance(DateFormatSHORT,DateFormatSHORT)格式化时间后为:" + str7);
Systemoutprintln("用DateFormatgetDateTimeInstance(DateFormatMEDIUM,DateFormatMEDIUM)格式化时间后为:" + str8);
}
}
运行结果:
用Date方式显示时间: Mon Jun 16 20:54:53 CST 2008
用DateFormatgetDateInstance()格式化时间后为:2008-6-16
用DateFormatgetDateTimeInstance()格式化时间后为:2008-6-16 20:54:53
用DateFormatgetTimeInstance()格式化时间后为:20:54:53
用DateFormatgetInstance()格式化时间后为:08-6-16 下午8:54
用DateFormatgetDateTimeInstance(DateFormatFULL,DateFormatFULL)格式化时间后为
:2008年6月16日 星期一 下午08时54分53秒 CST
用DateFormatgetDateTimeInstance(DateFormatLONG,DateFormatLONG)格式化时间后为
:2008年6月16日 下午08时54分53秒
用DateFormatgetDateTimeInstance(DateFormatSHORT,DateFormatSHORT)格式化时间后
为:08-6-16 下午8:54
用DateFormatgetDateTimeInstance(DateFormatMEDIUM,DateFormatMEDIUM)格式化时间
后为:2008-6-16 20:54:53
方法二:用javautilCalendar类来实现,看下面:
import javautil;
import javatext;
//以下是利用Calendar类来实现日期时间的,和Date类相比较比较简单
public class TestDate2 {
public static void main(String[] args) {
Calendar ca = CalendargetInstance();
int year = caget(CalendarYEAR);//获取年份
int month=caget(CalendarMONTH);//获取月份
int day=caget(CalendarDATE);//获取日
int minute=caget(CalendarMINUTE);//分
int hour=caget(CalendarHOUR);//小时
int second=caget(CalendarSECOND);//秒
int WeekOfYear = caget(CalendarDAY_OF_WEEK);
Systemoutprintln("用CalendargetInstance()getTime()方式显示时间: " + cagetTime());
Systemoutprintln("用Calendar获得日期是:" + year +"年"+ month +"月"+ day + "日");
Systemoutprintln("用Calendar获得时间是:" + hour +"时"+ minute +"分"+ second +"秒");
Systemoutprintln(WeekOfYear);//显示今天是一周的第几天(我做的这个例子正好是周二,故结果显示2,如果你再周6运行,那么显示6)
}
}
运行结果是:
用CalendargetInstance()getTime()方式显示时间: Mon Jun 16 21:54:21 CST 2008
用Calendar获得日期是:2008年5月16日
用Calendar获得时间是:9时54分21秒
2
总结:中的来说,方法二是最方便的,方法一显得分笨拙,不过看个人喜欢了。
1、取得指定日期是星期几
取得指定日期是星期几可以采用下面两种方式取得日期是星期几:
a、使用Calendar类
//根据日期取得星期几
public static String getWeek(Date date){
String[] weeks = {"星期日","星期一","星期二","星期三","星期四","星期五","星期六"};
Calendar cal = CalendargetInstance();
calsetTime(date);
int week_index = calget(CalendarDAY_OF_WEEK) - 1;
if(week_index<0){
week_index = 0;
}
return weeks[week_index];
}
b、使用SimpleDateFormat类
//根据日期取得星期几
public static String getWeek(Date date){
SimpleDateFormat sdf = new SimpleDateFormat("EEEE");
String week = sdfformat(date);
return week;
}
注:格式化字符串存在区分大小写
对于创建SimpleDateFormat传入的参数:EEEE代表星期,如“星期四”;MMMM代表中文月份,如“十一月”;MM代表月份,如“11”;
yyyy代表年份,如“2010”;dd代表天,如“25”
2、取得日期是某年的第几周
根据日期入得日期是某年的第几周。
//取得日期是某年的第几周
public static int getWeekOfYear(Date date){
Calendar cal = CalendargetInstance();
calsetTime(date);
int week_of_year = calget(CalendarWEEK_OF_YEAR);
return week_of_year;
}
3、得到某年的某个月有多少天
已知年份和月份,取得该月有多少天。
//取得某个月有多少天
public static int getDaysOfMonth(int year,int month){
Calendar cal = CalendargetInstance();
calset(CalendarYEAR, year);
calset(CalendarMONTH, month-1);
int days_of_month = calgetActualMaximum(CalendarDAY_OF_MONTH);
return days_of_month;
}
4、取得两个日期之间的相差多少天
已知两个日期,计算它们之间相差多少天。
// 取得两个日期之间的相差多少天
public static long getDaysBetween(Date date0, Date date1) {
long daysBetween = (date0getTime() - date1getTime() + 1000000) / 86400000;// 86400000=3600241000 用立即数,减少乘法计算的开销
return daysBetween;
}
import javatextSimpleDateFormat;
import javautilCalendar;
import javautilDate;
public class Test {
public static void main(String[] args) {
Date nextMonthFirstDate = nextMonthFirstDate();
printDate(nextMonthFirstDate);
}
public static Date nextMonthFirstDate() {
Calendar calendar = CalendargetInstance();
calendarset(CalendarDAY_OF_MONTH, 1);
calendaradd(CalendarMONTH, 1);
return calendargetTime();
}
public static void printDate(Date date) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
Systemoutprintln(sdfformat(date));
}
}
关于系统架构和软件分层的概念我们在前几期的文章中曾经介绍过多次了。今天,北京java课程就来详细了解一下,软件架构中的分层都有哪些类型。希望大家通过对本文的阅读,能够对软件架构领域有更多的了解和认识。
经典的三层架构:
1基础层:dao,帮助类,IO读写,资源加载等一些基础设施,他们作为整个系统基础的模块可以组合成业务层和服务层
2业务层和服务层:典型的就是service,这里承载更多的是业务的实现,资源的组合调度,事务实现,等等,这里是整个系统核心的地方,下面整合底层dao以及事务,根据业务和场景灵活的把业务逻辑使用底层的基础单元拼接组合起来,上面为表现层提供具体的业务处理逻辑
3表现层:接受外部的请求,并把调用对应的service *** 作具体业务,把终结果反馈给调用者或是用户
四层架构,在基础层基础之上还可以在分出一层:领域层,基础层还是提供基本的数据 *** 作和IO与网络 *** 作,不过领域层对基础层再来一次封装和整合,目的也是方便整合底层资源方便service层调用,简化业务层和基础层的复杂依赖
静态业务对象:
ViewObject:VO界面展示用到的数据对象
DomainObject:DO领域层对象,一般可以简约的理解为javabean对象,从业务中抽取的基本模型类
BussinessObject:BO业务对象一般也在service业务层,如果DO不能完全表达,可以使用BO获取更多信息的表达,并且还可以封装重用DO中的实体信息
PersistantObject:PO持久存储对象,一般作用于dao层,和数据库实体对应
DataTransferObject:DTO数据传递对象,用于封装参数,数据中转会,重构过程方法列表会用到
动态处理对象:
Controller控制器,Manager管理类,Service服务类,Repository,DAO数据源,Client客户端,Dispather转发器,Handler处理器,Interceptor拦截器
Helper,Utils帮助类
动态的配置文件与属性:
一些经常用到的开关和阈值一定要写在配置文件中,或有配置中心可以下发,不要在程序中写死,而且要有对相应的刷新机制api接口,调用后强制刷新配置参数
常用的比如:
活动的开始结束日期
业务中的大值,限制值等阈值
外界的URI:文件上传地址,静态资源位置,等等
等等一切可以借鉴Ioc理念抽取出来的配置变量
==我去给你写。等下贴给你。
/
传入一个月份,得到这个月份所有的周三,周四将其打印出来。
@param month 参数指定的月份
@throws Exception
/
private void getwendsor(int month) throws Exception
{
if(month<1||month>12)
throw new Exception("请指定一个合法的月份。");
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Calendar cal=CalendargetInstance();
calset(CalendarMONTH,month-1);
calset(CalendarDAY_OF_MONTH, 1);
int day=1;
do
{
//Systemoutprintln(sdfformat(calgetTime())+" "+calget(CalendarDAY_OF_WEEK)+" "+CalendarWEDNESDAY);
if(calget(CalendarDAY_OF_WEEK)==CalendarWEDNESDAY)
Systemoutprintln(month+"月份的"+sdfformat(calgetTime())+ "是周三");
if(calget(CalendarDAY_OF_WEEK)==CalendarTHURSDAY)
Systemoutprintln(month+"月份的"+sdfformat(calgetTime())+ "是周四");
day++;
calset(CalendarDAY_OF_MONTH, day);
}while(calget(CalendarMONTH)+1==month);
}
这个方法是单独定义的,所以你可以随意调用,并且得到任意一个月份的周三或者周四。只需要在调用的时候指定您要查看的月份即可。
如果有疑问欢迎交流。呵呵
Java软件开发行业在当下是越来越热门,对java的关注人数也在不断地增加,越来越多的人对java行业未来的发展是相当的有信心,java初学者也是越来越多,但是java初学者在学习java的过程中会有很多的疑惑,比如java初学者到底应该怎样才能把java学好
java初学者应该怎么学
1下定决心把java学成
学java可以说就像怀孕一样,途中有时候会是困难重重的,不是你想什么时候把孩子生下来,孩子就会按照你的意愿出生。电脑培训认为学java也是一样不是你想说,我明天最迟后天就可以把java学会,你就真的学会了,是需要付出的,其中也会碰到很多的困难,如果你学java的决心不坚定,那么你很有可能学着学着就放弃了。所以,对于java初学者来说学习java一定要先有把java学好的决心,否则不要轻易开始学java。
2选择适合自己的学习方式
学java有的选择自学,有的选择到java培训机构,不管哪种学习方式首先你要确定你有多长的学习时间,你自己有多大的耐心,你对java学成需要什么样的基础有没有一定的了解等等,要先问下自己,如果你是想快速学成快速到企业工作或者完全对java是零基础想要快速入门java的话,小编建议是到专业的java培训机构。所以,你一定要结合你自身的实际情况,选择适合你自己的学习方式。
3理论实践缺一不可
Java的学习不单单是把java理论学好了,你就能在java行业大展身手了,java是跟代码离不开的,你得不断地敲代码,不断地把java理论跟java代码实践 *** 作结合在一起。你的逻辑思维也很重要,一定要把你学到的java理论转化为可以运用到实践当中去的,在解决java问题时,多想想为什么要这样 *** 作,这样 *** 作有什么优势,还可以运用到哪些 *** 作中。java的学习理论实践缺一不可。
以上就是关于如何获取明天的日期全部的内容,包括:如何获取明天的日期、java中如何获取日期时间中的星期几、Java获取当前日期的下个月1号等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)