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()获得当前时间的毫秒表示
百纵科技官网:https://www.baizon.cn/百纵科技:美国云服务器活动重磅来袭,洛杉矶C3机房 带金盾高防,会员后台可自助管理防火墙,添加黑白名单 CC策略开启低中高.CPU全系列E52680v3 DDR4内存 三星固态盘列阵。另有高防清洗!美国洛杉矶 CN2 云服务器CPU内存带宽数据盘防御价格1H1G10M10G10G19元/月 购买地址2H1G10M10G10G29元/月 购买...
弘速云怎么样?弘速云是创建于2021年的品牌,运营该品牌的公司HOSU LIMITED(中文名称弘速科技有限公司)公司成立于2021年国内公司注册于2019年。HOSU LIMITED主要从事出售香港vps、美国VPS、香港独立服务器、香港站群服务器等,目前在售VPS线路有CN2+BGP、CN2 GIA,该公司旗下产品均采用KVM虚拟化架构。可联系商家代安装iso系统。点击进入:弘速云官方网站地址...
收到好多消息,让我聊一下阿里云国际版本,作为一个阿里云死忠粉,之前用的服务器都是阿里云国内版的VPS主机,对于现在火热的阿里云国际版,这段时间了解了下,觉得还是有很多部分可以聊的,毕竟,实名制的服务器规则导致国际版无需实名这一特点被无限放大。以前也写过几篇综合性的阿里云国际版vps的分析,其中有一点得到很多人的认同,那句是阿里云不管国内版还是国际版的IO读写速度实在不敢恭维,相对意义上的,如果在这...
javacalendar为你推荐
大学生就业形势分析大学生就业现状分析互联网舆情监控系统互联网舆情监控系统软硬件有哪些?中国学生网中国大学生在线邮箱怎么申请?短信营销方案有谁实验过短息营销,这个方法好吗?大家可以试试啊!youtube创始人比特币创始人到底是谁flash实例Flash元件和实例的概念及关系?公众号付费阅读怎么利用公众号做知识付费?sdfsdfsdfsdf小米手机投诉热线云输入法QQ云输入法怎样进行中英文切换?音乐代码css控制背景音乐代码
如何注册中文域名 nerd 12u机柜尺寸 搜狗抢票助手 windows2003iso 亚洲小于500m 777te 秒杀汇 raid10 服务器防火墙 lamp什么意思 学生服务器 七牛云存储 好看的空间 免费获得q币 restart 德国代理ip linuxvi命令 neobux qq部落18-3 更多