A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

import java.util.*;
class  CalendarDemo
{
        public static void main(String[] args)
        {
                Calendar c=Calendar.getInstance();
                //c.set(2012,2,23);
                //往后推
                c.add(Calendar.MONTH,1);
                printCalendat(c);
        }
        public static void printCalendat(Calendar c)
        {
               
                String[] mons={"一月","二月","三月","四月",
                        "五月","六月","七月","八月",
                        "九月","十月","十一月","十二月"};
                String[] week={"","星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
                int index=c.get(Calendar.MONTH);
                int week1=c.get(Calendar.DAY_OF_WEEK);
                sop(c.get(Calendar.YEAR));
                sop(mons[index]);
                sop(week[week1]);
        }
        public static void sop(Object obj)
        {
                System.out.println(obj);
        }
}

评分

参与人数 1技术分 +1 收起 理由
To + 1 赞一个!

查看全部评分

3 个回复

倒序浏览
前面加空说明这个Calendar.DAY_OF_WEEK 是从1开始的,
Sunday开头这是老外的习惯,谁让Java不是中国人写的呢
回复 使用道具 举报
首先,老美是把星期天作为一个星期的第一天,
然后,一个数组中角标是从0 开始的。
int week1=c.get(Calendar.DAY_OF_WEEK);这句代码是获取一个星期中的第几天,
取值是范围是【1-7】。
String[] week={"","星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
加了“”目的是为了让从这个数组中取值是从第一个值(星期天)开始取值。

评分

参与人数 1技术分 +1 收起 理由
To + 1 赞一个!

查看全部评分

回复 使用道具 举报
int week1=c.get(Calendar.DAY_OF_WEEK);取值是1—7
String[] week={"","星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
老外的星期天=1,星期一=2,。。。星期六=7,
所以当取String[0]week是空,当时1的时候取星期天,。。。2是星期六

如果不加“”,在取第一个的时候就会变成“星期一”,

评分

参与人数 1技术分 +1 收起 理由
To + 1 很给力!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马