求做一个简单的JAVA代码

我想做一个万年历,但有几个地方不会弄 求各位帮帮忙,
1.判断改年份是否为闰年
2.计算该月天数
3.计算该月第一天是星期几
4.格式化输出该年月

提示:判断闰年的条件,能被4整除但不能被100整除;或者能被400整除
晕。。。我刚学的JAVA 你的方法太高深了。。。 我拿这个区交作业。。。肯定会被骂的。。。

各位就帮我写出来第一个问题就行了 判断年份是否为闰年

1.判断改年份是否为闰年,见下面的check()方法
2.计算该月天数,用Calendar类的getActualMaximum()方法能返回指定日历字段可能拥有的最大值,Calendar.DAY_OF_MONTH就是月份字段了
3.计算该月第一天是星期几,复制一个日历实例,把复制的日历设成当月1号,求出1号是星期几,用get()方法,返回指定日历字段的值,Calendar.DAY_OF_WEEK表示星期字段,get(Calendar.DAY_OF_WEEK)返回1 - 7,是星期天 - 星期六,而不是星期一 - 星期天
4.格式化输出该年月,用SimpleDateFormat类格式化日期,见下面的代码:

import java.text.SimpleDateFormat;
import java.util.Calendar;

public class CalendarTest {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//使用Calendar类处理日期
Calendar objCalendar = Calendar.getInstance();

//4.格式化输出该年月,用SimpleDateFormat类格式化日期
//格式:"yyyy年MM月dd日 HH:mm:ss",其中HH是24小时制,hh是12小时制
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
System.out.println("当前时间:" + sdf.format(objCalendar.getTime()));

//1.判断改年份是否为闰年,见下面的check()方法
System.out.println("是否闰年:" + check(objCalendar));

//2.计算该月天数
//Calendar类的getActualMaximum()方法能返回指定日历字段可能拥有的最大值,Calendar.DAY_OF_MONTH就是月份字段了
System.out.println("该月天数:" + objCalendar.getActualMaximum(Calendar.DAY_OF_MONTH));

//3.计算该月第一天是星期几
//复制一个日历实例
Calendar temp = (Calendar)objCalendar.clone();
//把复制的日历设成当月1号
temp.set(Calendar.DAY_OF_MONTH, 1);
//求出1号是星期几,用get()方法,返回指定日历字段的值,Calendar.DAY_OF_WEEK表示星期字段
//get(Calendar.DAY_OF_WEEK)返回1 - 7,是星期天 - 星期六,而不是星期一 - 星期天
System.out.println("该月第一天是星期:" + (temp.get(Calendar.DAY_OF_WEEK) - 1));
}

//判断改年份是否为闰年
public static boolean check(Calendar c) {
int year = c.get(Calendar.YEAR);
if(year%400 == 0)
return true;
if(year%4==0 && year%100!=0)
return true;
return false;
}
}

输出如下:
当前时间:2009年05月07日 10:43:03
是否闰年:false
该月天数:31
该月第一天是星期:5
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-05-07
如果做第一个的话,比不是都知道判断闰年的条件了吗?还不简单?
我给你点提示,自己写吧~~~
if(year%4 == 0 && year%100 != 0) {//变量year你自己在你的程序中定义过

}else if(year%400 == 0) {

}
就用上面的结构做吧,%是求模去余运算符~
第2个回答  2009-05-07
用Excel能实现
第3个回答  2009-05-11
import java.util.Scanner;

public class TestWNL {

/**
* @param args
*/
public static void main(String[] args) {
int year, month, days;
boolean isR = false;
Scanner sc = new Scanner(System.in);

System.out
.println("************************* 欢 迎 使 用 万 年 历 ****************************\n");
System.out.print("请输入年份:");
year = sc.nextInt();
System.out.print("\n请输入月份:");
month = sc.nextInt();
System.out.print("\n请输入日期:");
days = sc.nextInt();

if(year%4==0 && year%100!=0 || year%400 ==0)
isR = true;
String txtYear = "";

if(isR)
txtYear = "闰年";
else
txtYear = "平年";

int sumDay = 0;

//得到1900,1,1日到今年的总天数
for (int i = 1900; i < year; i++) {
if(i%4==0 && i%100!=0 || i%400 ==0)
sumDay+=366;
else
sumDay+=365;
}

//今年的月份的总天数 加上 总天数
for (int i = 1; i < month; i++) {
sumDay += getSumDay(i,isR);
}
System.out.println("加上月份的天数"+sumDay);

int first = sumDay +1;

sumDay += days;//总天数加上今年的号数
System.out.println("加上月份和天数的天数"+sumDay);

int x = sumDay % 7; //得到今天是星期几
String week = "";
switch (x) {
case 0:
week = "星期日";
break;
case 1:
week = "星期一";
break;
case 2:
week = "星期二";
break;
case 3:
week = "星期三";
break;
case 4:
week = "星期四";
break;
case 5:
week = "星期五";
break;
case 6:
week = "星期六";
break;
}
System.out.println(year+"年"+month +"月"+days+"日是星期"+week);

System.out.print("\n\n星期日\t星期一\t星期二\t星期三\t星期四\t星期五\t星期六\n");

int p = 0;
first %=7;
for (; p < first; p++) {
System.out.print("\t");
}

for (int i = 1; i <= getSumDay(month,isR); i++) {
System.out.print(i + "\t");
if((p+i)%7==0)
System.out.println();
}
}

static int getSumDay(int i,boolean isR) {
int days = 0;
switch(i) {
case 1: case 3: case 5: case 7: case 8: case 10: case 12:
days = 31;
break;
case 4: case 6: case 9: case 11:
days = 30;
break;
case 2:
if(isR)
days = 29;
else
days = 28;
break;
}

return days;
}

}

java最基础的代码(java基础代码实例)
importjavax.swing.*;importjavax.swing.border.Border;importjava.awt.*;importjava.awt.event.ActionListener;importjava.awt.event.ActionEvent;importjava.math.BigDecimal;importjava.math.RoundingMode;importjava.util.HashMap;\/ 我的计算器。MyCalculator继承于JFrame,是计算器的界面 \/ publicclassCalcul...

java简单代码小游戏?
求一个简单又有趣的JAVA小游戏代码System.out.println(猜数字游戏,请输入一个数0到999999,输入-1结束游戏:);inti=sc.nextInt();if(i==-1){break;}count++;if(ir){System.out.print(你猜小了。System.out.println(helloworld!);}}基本概念Java是一种可以撰写跨平台应用软件的面向对象的...

简单的java代码,求讲解。。
import javax.swing.*;import java.awt.event.*; 引入库 public class Test2 implements ActionListener{ 实现ActionListener JButton button; 定义按钮变量 public static void main(String[] args) { Test2 gui = new Test2(); 定义、实现类 gui.go(); 开始执行、打开界面 } publicvo...

Java求程序代码
按照你的要求编写的Java程序如下 import java.util.Scanner;public class S{ public static void main(String[] args){ int n=5;int[] a=new int[n];System.out.print("请输入"+n+"个正整数:");Scanner sc=new Scanner(System.in);for(int i=0;i<n;i++){ a[i]=sc.nextInt();}...

用java编写一下程序,希望能有详细代码和注释,谢谢了
第一个:package xiushifu; \/\/创建包 import java.util.*; \/\/加载包 Scanner用到 public class text2 { public static void main(String[] args){ new key(); \/\/创建实例调用key类的构造方法 } } class key \/\/ { private String x = "123456" ; \/\/初始化密码 final ...

用JAVA编写一个程序,要求如下:
import java.util.Scanner;public class StudentTest {public static void main(String[] args) {Student student = new Student();Scanner sc = new Scanner(System.in);System.out.println("请输入姓名:");student.setName(sc.next());System.out.println("请输入性别:");student.setSex(sc....

求段简单JAVA的代码
b2[1]=raf.readByte();b2[2]=raf.readByte();str=bytesToHexString(b2);System.out.println("后三个自己哈希码是:"+b2.toString());System.out.println("转换为十六进制后是:"+str);}catch(Exception e){System.out.println("error");} } public static final String bytesToHexString(byte...

java编写一个奶茶点单程序代码怎么写?
这是一个简单的Java程序,旨在实现奶茶点单功能。用户可以根据提示选择奶茶的口味、大小和加料,程序会计算并显示订单总价。```java import java.util.Scanner;public class MilkTeaOrder { public static void main(String[] args) { Scanner scanner = new Scanner(System.in);System.out.println("...

急求一段简单的java源代码(用户名、密码操作界面)
下面的程序可以直接通过编译运行,自己寻找要用到的代码段。import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.FocusEvent;import java.awt.event.FocusListener;import java.io.File;import java.io.IOException;import java.io....

求一个简洁java计算器代码
import java.awt.*;import java.awt.event.*;import javax.swing.*; \/\/引入所需要的包 class MyFrame extends JFrame implements ActionListener{ private JButton b1,b2,b3,b4,b5,b6;private TextField t1,t2,t3; \/\/定义六个按钮和三个文本域 public MyFrame(String s){ super(s);b1...

相似回答
大家正在搜