DATE和DAY_OF_MONTH有啥区别

joejoe1991 2007-05-24 03:05:44
Calendar里的DATE和DAT_OF_MONTH有啥区别?

在帮助里看着好像没区别
为什么我做一道题的时候 把DATE设置成2结果是对的,可是把DAY_OF_MONTH设置成2就不对了,设置成1才对?

谢谢了!
...全文
942 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
joejoe1991 2007-05-27
  • 打赏
  • 举报
回复
呃 看的有点晕 可还是没有回答我的问题啊

DATE和DAY_OF_MONTH有啥区别?
shmilywhw 2007-05-27
  • 打赏
  • 举报
回复
package project;

import java.util.Calendar;

public class CalendarTable {
public CalendarTable() {
}

public static void main(String[] args) {
Calendar rightNow = Calendar.getInstance();
int year, month;
year = rightNow.get(Calendar.YEAR);
month = rightNow.get(Calendar.MONTH);

int num = rightNow.getActualMaximum(Calendar.DAY_OF_MONTH);

rightNow.set(year, month, 1);
int now = rightNow.get(Calendar.DAY_OF_WEEK);

System.out.println("\t" + "\t" + "\t" + year + "年" + " " + (month + 1) +
" 月");
System.out.println("\t" + "日" + "\t" + "一" + "\t" + "二" + "\t" + "三" +
"\t" + "四" + "\t" + "五" + "\t" + "六");
for (int j = 1; j < (now); j++) {
System.out.print("\t");
}
for (int i = 1; i <= (num); i++) {
System.out.print("\t" + i);
if ((i + now - 1) % 7 == 0) {
System.out.println();
}
}
}
}
这段代码是直接根据系统的时间打印当前时间的日历
你可以改一下 改成通过输入来打印日历
shmilywhw 2007-05-27
  • 打赏
  • 举报
回复
你是要做一个日历出来吧 其实不用那么麻烦去判断是否是闰年 也不需要去用switch判断每个月多少天,我写个代码你运行一下
joejoe1991 2007-05-27
  • 打赏
  • 举报
回复
人呢
joejoe1991 2007-05-24
  • 打赏
  • 举报
回复
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Calendar;
import java.util.Scanner;

public class wenjian
{
public static void main(String args[])
{
int nian=0;
int yue=0;
Scanner dedao=new Scanner(System.in);

System.out.print("请输入年:");
nian=dedao.nextInt();
System.out.print("请输入月:");
yue=dedao.nextInt();

if (nian<0 || yue<0 || yue>12)
System.out.println("请输入正确的信息!");
else
{
shijian a=new shijian(nian,yue);
a.shezhiriqi();
a.dedaoxingqi();
a.jisuanxingqi();
a.xianshi();

}

}
}

class shijian
{
//声明成员
private int nian; //保存年
private int yue; //保存月
private String xingqi; //得到日期字符串
private int shuzi = 0; //把日期转换成数字后保存到这里
private int runnian = 0; //判断闰年

//声明对象
Date riqi = null;
Calendar setriqi = Calendar.getInstance();
SimpleDateFormat format = new SimpleDateFormat("E");

//以下是构造方法
public shijian(int nian, int yue) {
this.nian = nian;
this.yue = yue;

if (nian % 4 == 0 && nian % 100 != 0) //判断闰年代码块
runnian = 1;
else if (nian % 100 == 0 && nian % 400 == 0)
runnian = 1;
}

void shezhiriqi() { //把用户输入的年月设置为setriqi对象里的一部分
setriqi.set(Calendar.YEAR, nian);
setriqi.set(Calendar.MONTH, yue - 1);
setriqi.set(Calendar.DAY_OF_MONTH, 1);
riqi = setriqi.getTime(); //把设置后的时间生成一个Date对象返回给riqi引用
}

void dedaoxingqi() { // 输入riqi里的星期,把星期值赋给字符串xingqi
xingqi = format.format(riqi);
System.out.println("xingqi: "+xingqi);
}

void jisuanxingqi() { //对xingqi的值进行检测
if (xingqi.equals("星期一"))
shuzi = 1;
else if (xingqi.equals("星期二"))
shuzi = 2;
else if (xingqi.equals("星期三"))
shuzi = 3;
else if (xingqi.equals("星期四"))
shuzi = 4;
else if (xingqi.equals("星期五"))
shuzi = 5;
else if (xingqi.equals("星期六"))
shuzi = 6;
else if (xingqi.equals("星期日"))
shuzi = 0;
}

void xianshi() {
int tianshu; //检测用户输入的月份有多少天
switch (yue) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
tianshu = 31;
break;
default:
tianshu = 30;
}

if (runnian == 1 && yue == 2) //如果是闰年而且月份是2月
tianshu = 29; //tianshu就是29
else if (runnian != 1 && yue == 2)
tianshu = 28; //如果不是闰年不过月份是2月 那tianshu就是28

System.out.println("\t\t\t\t" + nian + "\t" + yue + "\n"); //输出
System.out.println("\t日\t一\t二\t三\t四\t五\t六");

for (int i = 0; i < shuzi; i++) { //输出tab 为了对齐
System.out.print("\t");
}
for (int i = 1; i <= tianshu; i++, shuzi++) {
if (shuzi == 7) { //把值循环输出
System.out.print("\n");
shuzi = 0;
}

System.out.print("\t" + i);
}
}
}

就是这些
malligator 2007-05-24
  • 打赏
  • 举报
回复
Your Code?
joejoe1991 2007-05-24
  • 打赏
  • 举报
回复
人呢
Date 对象属性constructor 返回对创建此对象的 Date 函数的引用。prototype 使您有能力向对象添加属性和方法。Date 对象方法getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)。getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)。getFullYear() 从 Date 对象以四位数字返回年份。getHours() 返回 Date 对象的小时 (0 ~ 23)。getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)。getMinutes() 返回 Date 对象的分钟 (0 ~ 59)。getMonth() 从 Date 对象返回月份 (0 ~ 11)。getSeconds() 返回 Date 对象的秒数 (0 ~ 59)。getTime() 返回 1970 年 1 月 1 日至今的毫秒数。getTimezoneOffset() 返回本地时间与格林威治标准时间 (GMT) 的分钟差。getUTCDate() 根据世界时从 Date 对象返回月中的一天 (1 ~ 31)。getUTCDay() 根据世界时从 Date 对象返回周中的一天 (0 ~ 6)。getUTCFullYear() 根据世界时从 Date 对象返回四位数的年份。getUTCHours() 根据世界时返回 Date 对象的小时 (0 ~ 23)。getUTCMilliseconds() 根据世界时返回 Date 对象的毫秒(0 ~ 999)。getUTCMinutes() 根据世界时返回 Date 对象的分钟 (0 ~ 59)。getUTCMonth() 根据世界时从 Date 对象返回月份 (0 ~ 11)。getUTCSeconds() 根据世界时返回 Date 对象的秒钟 (0 ~ 59)。getYear() 已废弃。 请使用 getFullYear() 方法代替。parse() 返回1970年1月1日午夜到指定日期(字符串)的毫秒数。setDate() 设置 Date 对象中月的某一天 (1 ~ 31)。setFullYear() 设置 Date 对象中的年份(四位数字)。setHours() 设置 Date 对象中的小时 (0 ~ 23)。setMilliseconds() 设置 Date 对象中的毫秒 (0 ~ 999)。setMinutes() 设置 Date 对象中的分钟 (0 ~ 59)。setMonth() 设置 Date 对象中月份 (0 ~ 11)。setSeconds() 设置 Date 对象中的秒钟 (0 ~ 59)。setTime() setTime() 方法以毫秒设置 Date 对象。setUTCDate() 根据世界时设置 Date 对象中月份的一天 (1 ~ 31)。setUTCFullYear() 根据世界时设置 Date 对象中的年份(四位数字)。setUTCHours() 根据世界时设置 Date 对象中的小时 (0 ~ 23)。setUTCMilliseconds() 根据世界时设置 Date 对象中的毫秒 (0 ~ 999)。setUTCMinutes() 根据世界时设置 Date 对象中的分钟 (0 ~ 59)。setUTCMonth() 根据世界时设置 Date 对象中的月份 (0 ~ 11)。setUTCSeconds() setUTCSeconds() 方法用于根据世界时 (UTC) 设置指定时间的秒字段。setYear() 已废弃。请使用 setFullYear() 方法代替。toDateString() 把 Date 对象的日期部分转换为字符串。toGMTString() 已废弃。请使用 toUTCString() 方法代替。toISOString() 使用 ISO 标准返回字符串的日期格式。toJSON() 以 JSON 数据格式返回日期字符串。toLocaleDateString() 根据本地时间格式,把 Date 对象的日期部分转换为字符串。toLocaleTimeString() 根据本地时间格式,把 Date 对象的时间部分转换为字符串。toLocaleString() 据本地时间格式,把 Date 对象转换为字符串。toString() 把 Date 对象转换为字符串。toTimeString() 把 Date 对象的时间部分转换为字符串。toUTCString() 根据世界时,把 Date 对象转换为字符串。UTC() 根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数。valueOf() 返回 Date 对象的原始值。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧