javacalendarjava中的calendar类主要有那些方法
javacalendar 时间:2021-06-26 阅读:(
)
用java(用calendar类)写一个万年历,输入年并且显示当年的日历
public?class?MyCalendar?{
????public?static?void?main(String?args[])?{
????????Scanner?sc?=?new?Scanner(System.in);
????????Calendar?c?=?Calendar.getInstance();
????????System.out.println("请输入数字年:(比如?2014)");
????????int?year?=?sc.nextInt();
????????sc.close();
//??????int?year?=?2014;
????????c.set(Calendar.YEAR,year);
????????for?(int?i?=?0;?i?<?12;?i++)?{
???????? c.set(Calendar.MONTH,i);??//
???????? c.set(Calendar.DATE,1);??//设置成1月
???????? printMonth(c);
}?
????}
????public?static?void?printMonth(Calendar?c){
???? c.set(Calendar.DAY_OF_MONTH,1);???//设置成一日
???? System.out.printf("
=========??%s??月??=========
",c.get(Calendar.MONTH)+1);
????????String[]?weeks?=?{?"日",?"一"?,??"二",??"三",??"四",??"五",??"六"?};
????????for?(int?i?=?0;?i?<?weeks.length;?i++)?{
????????????System.out.printf("%s"?+?(i?!=?6??" ":"
"),weeks[i]);
????????}
????????int?offday?=?c.get(Calendar.DAY_OF_WEEK)?-?1;
????????for(int?i?=?0;?i?<?offday;?i++){
????????????System.out.printf(" ");
????????}
????????int?month?=?c.get(Calendar.MONTH);
????????while(c.get(Calendar.MONTH)?==?month?){
????????????System.out.printf("%d"?+?(?(c.get(Calendar.DAY_OF_WEEK))?!=?7???" ":"
")?,c.get(Calendar.DAY_OF_MONTH));
????????????c.add(Calendar.DAY_OF_MONTH,?1);
????????}
????}
}如何用java做日历
看看下面代码:
import java.awt.*;
import java.awt.event.*;
import java.util.Calendar;
import javax.swing.JOptionPane;
class CalendarBean
{
String day[];
int year=2011,month=0;
public void setYear(int year)
{ this.year=year;
}
public int getYear()
{ return year;
}
public void setMonth(int month)
{ this.month=month;
}
public int getMonth()
{ return month;
}
public String[] getCalendar()
{ String a[]=new String[42];
Calendar 日历=Calendar.getInstance();
日历.set(year,month-1,1);
int 星期几=日历.get(Calendar.DAY_OF_WEEK)-1;
int day=0;
if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
{ day=31;
}
if(month==4||month==6||month==9||month==11)
{ day=30;
}
if(month==2)
{ if(((year%4==0)&&(year%100!=0))||(year%400==0))
{ day=29;
}
else
{ day=28;
}
}
for(int i=星期几,n=1;i<星期几+day;i++)
{
a[i]=String.valueOf(n) ;
n++;
}
return a;
}
}
class CalendarFrame extends Frame implements ActionListener
{
Label labelDay[]=new Label[42];
Button titleName[]=new Button[7];
String name[]={"日","一","二","三", "四","五","六"};
TextField text1,text2;Button nextMonth,previousMonth,Enter;Label lab1,lab2,lab3;
int year=2012,month=5;
CalendarBean calendar;
Label showMessage=new Label("",Label.CENTER);
public CalendarFrame()
{ Panel pCenter=new Panel();
pCenter.setLayout(new GridLayout(7,7));
for(int i=0;i<7;i++)
{ titleName[i]=new Button(name[i]);
pCenter.add(titleName[i]);
}
for(int i=0;i<42;i++)
{
labelDay[i]=new Label("",Label.CENTER);
pCenter.add(labelDay[i]);
}
calendar=new CalendarBean();
calendar.setYear(year);
calendar.setMonth(month);
String day[]=calendar.getCalendar();
for(int i=0;i<42;i++)
{ labelDay[i].setText(day[i]);
}
lab1=new Label("请输入日期");
lab2=new Label("年份");
lab3=new Label("月份");
Enter=new Button("确定");
text1=new TextField(10);
text2=new TextField(5);
nextMonth=new Button("下月");
previousMonth=new Button("上月");
Enter.addActionListener(this);
nextMonth.addActionListener(this);
previousMonth.addActionListener(this);
Panel pNorth=new Panel(),
pSouth=new Panel();
pNorth.add( lab1);
pNorth.add(lab2);
pNorth.add( text1);
pNorth.add(lab3);
pNorth.add(text2);
pNorth.add(Enter);
pNorth.add(previousMonth);
pNorth.add(nextMonth);
pSouth.add(showMessage);
showMessage.setText("日历:"+calendar.getYear()+"年"+ calendar.getMonth()+"月" );
ScrollPane scrollPane=new ScrollPane();
scrollPane.add(pCenter);
add(scrollPane,BorderLayout.CENTER);
add(pNorth ,BorderLayout.NORTH);
add(pSouth ,BorderLayout.SOUTH);
}
public void actionPerformed(ActionEvent e)
{ if(e.getSource()==nextMonth)
{ month=month+1;
if(month>12)
month=1;
calendar.setMonth(month);
String day[]=calendar.getCalendar();
for(int i=0;i<42;i++)
{ labelDay[i].setText(day[i]);
}
}
else if(e.getSource()==previousMonth)
{ month=month-1;
if(month<1)
month=12;
calendar.setMonth(month);
String day[]=calendar.getCalendar();
for(int i=0;i<42;i++)
{ labelDay[i].setText(day[i]);
}
}else {
String yea=text1.getText();
String mon=text2.getText();
try{
year=Integer.parseInt(yea);
month=Integer.parseInt(mon);
if(month>12||month<1||year<1){
JOptionPane.showMessageDialog(null, "请输入正确月份或月份");
return;
}
else{
calendar.setYear(year);
calendar.setMonth(month);
}
String day[]=calendar.getCalendar();
for(int i=0;i<42;i++)
{
labelDay[i].setText(day[i]);
}
}catch(NumberFormatException ee){
JOptionPane.showMessageDialog(null, "请输入正确的年份及月份");
}
}
showMessage.setText("日历:"+calendar.getYear()+"年"+calendar.getMonth()+"月" );
}
}
public class CalendarMainClass
{ public static void main(String args[])
{ CalendarFrame frame=new CalendarFrame();
frame.setTitle("日历");
frame.setBounds(300,200,500,300);
frame.setVisible(true);
frame.validate();
frame.addWindowListener(new java.awt.event.WindowAdapter()
{ public void windowClosing(java.awt.event.WindowEvent e)
{ System.exit(0);
}
}
);
}
}
有问题就追问。
满意请采纳。
JAVA中用Calendar方法来获得系统时间,打印在控制台上,我的程序怎么有问题啊??
public class Time extends Thread
{
public void run()
{
int h, m, s;
while (true)
{
h = Calendar.getInstance().get(Calendar.HOUR_OF_DAY);
m = Calendar.getInstance().get(Calendar.MINUTE);
s = Calendar.getInstance().get(Calendar.SECOND);
System.out.print("当前系统时间为:" + "h:"+h + "m:"+m + "s:"+s);
try
{
Thread.sleep(100);
}
catch (Exception e)
{
}
}
}
public static void main(String args[])
{
Time th = new Time();
th.start();
}
}Java中的Calendar类中的getActualMaximum方法
java.util.Calendar.getActualMaximum() 方法返回基于此Calendar的时间值,指定日历字段可能拥有的最大值。
示例演示java.util.calendar.getActualMaximum()方法的用法。
import java.util.*;
public class CalendarDemo {
public static void main(String[] args) {
// create a calendar
Calendar cal = Calendar.getInstance();
// get the maximum value that year field can have
int i = cal.getActualMaximum(Calendar.YEAR);
System.out.println("Maximum year:" + i);
// get the maximum value that month field can have
int a = cal.getActualMaximum(Calendar.MONTH);
System.out.println("Maximum month:" + a);
}
}
编译和运行上面的程序,这将产生以下结果:
Maximum year:292278994
Maximum month:11java中的calendar类主要有那些方法
Calendar类的静态方法getInstance()可以初始化一个日历对象:Calendar now = Calendar.getInstance();
可以使用下面三个方法把日历定到任何一个时间:
set(int year ,int month,int date)
set(int year ,int month,int date,int hour,int minute)
set(int year ,int month,int date,int hour,int minute,int second)
如果想获得年份、月份、小时等信息可以使用:
Now.get(Calendar.Month);这样的方法 0表示一月,1表示二月
get(Calendar.DAY_OF_MONTH)获得这个月的第几天
get(Calendar.DAY_OF_WEEK)获得这个星期的第几天
get(Calendar.DAY_OF_YEAR)获得这个年的第几天
getTimeMillis()获得当前时间的毫秒表示
我们对于BlueHost主机商还是比较熟悉的,早年我们还是全民使用虚拟主机的时候,大部分的外贸主机都会用到BlueHost无限虚拟主机方案,那时候他们商家只有一款虚拟主机方案。目前,商家国际款和国内款是有差异营销的,BlueHost国内有提供香港、美国、印度和欧洲机房。包括有提供虚拟主机、VPS和独立服务器。现在,BlueHost 商家周年活动,全场五折优惠。我们看看这次的活动有哪些值得选择的。 ...
RAKsmart怎么样?RAKsmart是一家由华人运营的国外主机商,提供的产品包括独立服务器租用和VPS等,可选数据中心包括美国加州圣何塞、洛杉矶、中国香港、韩国、日本、荷兰等国家和地区数据中心(部分自营),支持使用PayPal、支付宝等付款方式,网站可选中文网页,提供中文客服支持。本月商家继续提供每日限量秒杀服务器月付30.62美元起,除了常规服务器外,商家美国/韩国/日本站群服务器、1-10...
亚洲云Asiayun怎么样?亚洲云Asiayun好不好?亚洲云成立于2021年,隶属于上海玥悠悠云计算有限公司(Yyyisp),是一家新国人IDC商家,且正规持证IDC/ISP/CDN,商家主要提供数据中心基础服务、互联网业务解决方案,及专属服务器租用、云服务器、云虚拟主机、专属服务器托管、带宽租用等产品和服务。Asiayun提供源自大陆、香港、韩国和美国等地骨干级机房优质资源,包括B...
javacalendar为你推荐
存储区域网络网络存储技术的SAN(存储区域网络)的优点pat是什么格式pat 格式的文件用什么软件打开?webservice框架java Webservice都有哪几种方式啊,哪种方式比较好啊comexceptionapro exception是什么意思音乐代码css控制背景音乐代码java程序员招聘java程序员学出来工作好不好找,工资咋样?cursorlocationsession("rs").cursorlocation=3是什么意思?云办公平台Gleasy云办公平台解决了哪些问题?ocr软件下载如何安装汉王ocr文字识别软件爱码验证码平台接码验证码接收平台如何使用?
网站虚拟主机空间 网络星期一 贵州电信宽带测速 好玩的桌面 线路工具 lighttpd 2017年万圣节 发包服务器 dd444 上海域名 建立邮箱 稳定免费空间 如何建立邮箱 新睿云 华为云盘 创建邮箱 联通网站 便宜空间 韩国代理ip 论坛主机 更多