ome/img/nav3_on.png">
APP
系统平台
  • 建站知识
  • 联系我们
  • 咨询热线 :
    028-86922220

    疆括仕网站建设,新征程启航

    为企业提供网站建设、域名注册、服务器等服务

    显示日历代码java,日历怎么显示日期

    java编写日历

    我给你贴上我在java核心技术中看到的代码吧,当然没有输入年份和月份,是按照当前时间创建的,写有我写的注释,应该能看的懂

    创新互联是一家专注于成都做网站、网站制作与策划设计,海珠网站建设哪家好?创新互联做网站,专注于网站建设10年,网设计领域的专业建站公司;建站业务涵盖:海珠等地区。海珠做网站价格咨询:028-86922220

    /*

    * 2012年5月13日10:37:58

    * 日历程序

    * Function:

    * 显示当前月份的日历

    * 总结

    * 1. 0-11分别代表1-12月

    * 1-7分别代表周日-周六

    * 2. 使用GregorianCalendar对象的get方法(参数)获取月,日,年等信息

    * 3.

    */

    import java.text.DateFormatSymbols;

    import java.util.*;

    public class CalendarTest {

    public static void main(String[] args) {

    //construct d as current date构造一个日期

    GregorianCalendar d = new GregorianCalendar();

    //获取今天是这个月的第几天

    int today = d.get(Calendar.DAY_OF_MONTH); //Calendar.DAY_OF_MONTH作为参数调用,得到今天是这个月的第几天

    int month = d.get(Calendar.MONTH); //月份

    d.set(Calendar.DAY_OF_MONTH, 1); //设置d的日期是本月的1号

    int weekDay = d.get(Calendar.DAY_OF_WEEK); //获取当天位于本星期的第几天,也就确定了星期几,值的范围是1-7

    int firstDayOfWeek = d.getFirstDayOfWeek(); //获取一星期的第一天,我们得到的是Calendar.SUNDAY,因为我们一星期的第一天是周日

    int indent = 0; //为了定位本月第一天,定义索引

    while (weekDay != firstDayOfWeek) {

    //注意,月份用0-11代表1-12月,为了清晰起见,使用常量代替,下面获取月份得到的实际是当前月-1的值,所以我们要加1

    //System.out.printf("当前星期的第%d天,位于当月的第%d天, 现在是%d月\n",

    // weekDay, d.get(Calendar.DAY_OF_MONTH), d.get(Calendar.MONTH)+1); //Test Code

    indent++;//缩进个数+1

    d.add(Calendar.DAY_OF_MONTH, -1);//当前天数-1,如果现在是1号,则执行本条代码后,时间变为上一个月最后一天

    weekDay = d.get(Calendar.DAY_OF_WEEK); //重新获取当天位于本星期的第几天

    }

    String[] weekDayNames = new DateFormatSymbols().getShortWeekdays();//获取简短形式的星期字符串数组

    //System.out.println(weekDayNames.length);getShortWeekdays()得到的数组的长度是8,下标为0的是没有值1为星期日...7为星期六

    //注释代码1

    //Java核心技术的代码

    /*

    do {

    //System.out.printf("%4s", weekDayNames[weekDay]); //经过上面定义索引,weekDay代表的是本星期日

    d.add(Calendar.DAY_OF_MONTH, 1); //天数加1

    weekDay = d.get(Calendar.DAY_OF_WEEK); //重新获得weekDay的值

    } while (weekDay != firstDayOfWeek); //当循环完一个星期后,这里判断不成立,退出循环

    */

    //我写的代码,替换上面注释代码1

    for (int i=1; iweekDayNames.length; i++)//打印星期标题

    System.out.printf("%3s\t", weekDayNames[i]);//引号内是一个全角的空格,因为是中文版,不是书上英文环境,中文和空格对于不上,这里我们用\t解决

    //System.out.printf("%3s ", weekDayNames[i]); //方式2

    System.out.println();//换行

    for (int i=1; i=indent; i++)//确定一星期的一天位置,利用上面indent

    System.out.printf("\t");//如用方式2,则这里内容是四个全角空格

    //实现输出日期

    d.set(Calendar.MONTH, month);

    d.set(Calendar.DAY_OF_MONTH, 1);

    do {

    //print day

    int day = d.get(Calendar.DAY_OF_MONTH);

    System.out.printf("%3d", day);

    if (day == today)

    System.out.print("*");

    System.out.print("\t");

    d.add(Calendar.DATE, 1);//天数加1

    weekDay = d.get(Calendar.DAY_OF_WEEK);//刷新weekDay

    if (weekDay == firstDayOfWeek) //如果这天等于星期天则换行

    System.out.println();

    } while (d.get(Calendar.MONTH) == month);

    }

    }

    编写java程序,由键盘输入年份,显示当年日历,要求使用数组。

    首先键盘输入的话多种方式实现,提供两种,一是使用main方法的arg参数,也就是在使用java命令的时候后面跟上参数,在main方法里调用arg[0]即可,第二种方法是使用scanner类来得到system.in的内容

    然后就是打印全年,这个只要使用calendar类即可,得到calendar对象以后通过一个循环365次,不断的day加一即可

    求一个JAVA编写的日历,用控制台的形式显示。

    import

    java.util.Calendar;

    class

    CalendarList{

    int

    year,month;

    int

    dayNum,i,num,count=0;

    Calendar

    objCalendar;

    int[]

    arrDayNum={31,28,31,30,31,30,31,31,30,31,30,31};

    CalendarList(){

    objCalendar=Calendar.getInstance();

    this.year=objCalendar.get(Calendar.YEAR);

    this.month=objCalendar.get(Calendar.MONTH)+1;

    //要+1

    }

    CalendarList(String

    args0,String

    args1){

    this.year=Integer.parseInt(args1);

    this.month=Integer.parseInt(args0);

    objCalendar=Calendar.getInstance();//这里没有get

    objCalendar.set(Calendar.YEAR,year);//set是这样用的

    objCalendar.set(Calendar.MONTH,month-1);

    }

    void

    display(){

    System.out.println("\t\t\t"+year+"年"+month+"月");

    System.out.println("日

    六");

    //每个空3个空格

    num=objCalendar.get(Calendar.DAY_OF_WEEK);

    if

    ((year/4==0year/100!=0)||(year/400==0)){

    arrDayNum[1]+=1;

    }

    for

    (i=1;i=12;i++){

    if

    (i==month){

    dayNum=arrDayNum[i-1];

    break;

    }

    }

    for(i=1;i=num;i++){

    System.out.print("

    ");//5个空格

    count++;

    }

    for

    (i=1;i=dayNum;i++){

    System.out.print(i10?"

    "+i+"

    ":i+"

    ");

    //自己改了下

    ,空格数:1,3,3

    count++;

    if(count==7){

    System.out.println();

    count=0;

    }

    }

    System.out.println

    ();

    }

    }

    public

    class

    MainClass

    {

    public

    static

    void

    main(String[]

    args)

    {

    CalendarList

    objCalendar=new

    CalendarList();

    CalendarList

    objCalendar1=new

    CalendarList("11","2007");

    objCalendar.display();

    objCalendar1.display();

    }

    }

    JAVA日历代码,怎么做?

    import java.util.Date;

    import java.util.Calendar;

    import java.text.DateFormat;

    import java.text.SimpleDateFormat;

    import java.text.ParseException;

    import java.awt.Color;

    import java.awt.Font;

    import java.awt.Point;

    import java.awt.Dimension;

    import java.awt.BorderLayout;

    import java.awt.FlowLayout;

    import java.awt.GridLayout;

    import java.awt.Cursor;

    import java.awt.event.ActionEvent;

    import java.awt.event.ActionListener;

    import javax.swing.JButton;

    import javax.swing.JDialog;

    import javax.swing.JPanel;

    import javax.swing.JLabel;

    import javax.swing.JSpinner;

    import javax.swing.SpinnerNumberModel;

    import javax.swing.SwingUtilities;

    import javax.swing.SwingConstants;

    import javax.swing.event.ChangeListener;

    import javax.swing.event.ChangeEvent;

    import javax.swing.border.LineBorder;

    /**

    * @company:NEUSOFT

    * @Title:日期选择控件

    * @Description:在原有基础上修改了以下内容:

    * 1. 将容器由Frame改为了Dialog,以便在基于对话框的程序中也能够使用

    * 2. 将最小日期由1980改为了1950,考虑到目前球员的出生日期可能早于1980年

    * 3. 将初始显示格式设置为 yyyy年MM月dd日 格式,原有的小时去掉了,不适合于出生日期字段

    */

    public class DateChooserJButton extends JButton {

    private DateChooser dateChooser = null;

    private String preLabel = "";

    public DateChooserJButton() {

    this(getNowDate());

    }

    public DateChooserJButton(SimpleDateFormat df, String dateString) {

    this();

    setText(df, dateString);

    }

    public DateChooserJButton(Date date) {

    this("", date);

    }

    public DateChooserJButton(String preLabel, Date date) {

    if (preLabel != null)

    this.preLabel = preLabel;

    setDate(date);

    setBorder(null);

    setCursor(new Cursor(Cursor.HAND_CURSOR));

    addActionListener(new ActionListener() {

    public void actionPerformed(ActionEvent e) {

    if (dateChooser == null)

    dateChooser = new DateChooser();

    Point p = getLocationOnScreen();

    p.y = p.y + 30;

    dateChooser.showDateChooser(p);

    }

    });

    }

    private static Date getNowDate() {

    return Calendar.getInstance().getTime();

    }

    private static SimpleDateFormat getDefaultDateFormat() {

    return new SimpleDateFormat("yyyy年MM月dd日");

    }

    // 覆盖父类的方法

    public void setText(String s) {

    Date date;

    try {

    date = getDefaultDateFormat().parse(s);

    } catch (ParseException e) {

    date = getNowDate();

    }

    setDate(date);

    }

    public void setText(SimpleDateFormat df, String s) {

    Date date;

    try {

    date = df.parse(s);

    } catch (ParseException e) {

    date = getNowDate();

    }

    setDate(date);

    }

    public void setDate(Date date) {

    super.setText(preLabel + getDefaultDateFormat().format(date));

    }

    public Date getDate() {

    String dateString = this.getText().substring(preLabel.length());

    try {

    return getDefaultDateFormat().parse(dateString);

    } catch (ParseException e) {

    return getNowDate();

    }

    }

    public String getDateString()

    {

    Date birth =getDate();

    DateFormat formatDate = new SimpleDateFormat("yyyy-MM-dd");

    return formatDate.format(birth).toString();

    //return this.getText().substring(preLabel.length());

    }

    // 覆盖父类的方法使之无效

    //public void addActionListener(ActionListener listener) {

    //}

    private class DateChooser extends JPanel implements ActionListener,

    ChangeListener {

    int startYear = 1950; // 默认【最小】显示年份

    int lastYear = 2050; // 默认【最大】显示年份

    int width = 200; // 界面宽度

    int height = 200; // 界面高度

    Color backGroundColor = Color.gray; // 底色

    // 月历表格配色----------------//

    Color palletTableColor = Color.white; // 日历表底色

    Color todayBackColor = Color.orange; // 今天背景色

    Color weekFontColor = Color.blue; // 星期文字色

    Color dateFontColor = Color.black; // 日期文字色

    Color weekendFontColor = Color.red; // 周末文字色

    // 控制条配色------------------//

    Color controlLineColor = Color.pink; // 控制条底色

    Color controlTextColor = Color.white; // 控制条标签文字色

    Color rbFontColor = Color.white; // RoundBox文字色

    Color rbBorderColor = Color.red; // RoundBox边框色

    Color rbButtonColor = Color.pink; // RoundBox按钮色

    Color rbBtFontColor = Color.red; // RoundBox按钮文字色

    JDialog dialog;

    JSpinner yearSpin;

    JSpinner monthSpin;

    JSpinner hourSpin;

    JButton[][] daysButton = new JButton[6][7];

    DateChooser() {

    setLayout(new BorderLayout());

    setBorder(new LineBorder(backGroundColor, 2));

    setBackground(backGroundColor);

    JPanel topYearAndMonth = createYearAndMonthPanal();

    add(topYearAndMonth, BorderLayout.NORTH);

    JPanel centerWeekAndDay = createWeekAndDayPanal();

    add(centerWeekAndDay, BorderLayout.CENTER);

    }

    private JPanel createYearAndMonthPanal() {

    Calendar c = getCalendar();

    int currentYear = c.get(Calendar.YEAR);

    int currentMonth = c.get(Calendar.MONTH) + 1;

    int currentHour = c.get(Calendar.HOUR_OF_DAY);

    JPanel result = new JPanel();

    result.setLayout(new FlowLayout());

    result.setBackground(controlLineColor);

    yearSpin = new JSpinner(new SpinnerNumberModel(currentYear,

    startYear, lastYear, 1));

    yearSpin.setPreferredSize(new Dimension(48, 20));

    yearSpin.setName("Year");

    yearSpin.setEditor(new JSpinner.NumberEditor(yearSpin, "####"));

    yearSpin.addChangeListener(this);

    result.add(yearSpin);

    JLabel yearLabel = new JLabel("年");

    yearLabel.setForeground(controlTextColor);

    result.add(yearLabel);

    monthSpin = new JSpinner(new SpinnerNumberModel(currentMonth, 1,

    12, 1));

    monthSpin.setPreferredSize(new Dimension(35, 20));

    monthSpin.setName("Month");

    monthSpin.addChangeListener(this);

    result.add(monthSpin);

    JLabel monthLabel = new JLabel("月");

    monthLabel.setForeground(controlTextColor);

    result.add(monthLabel);

    hourSpin = new JSpinner(new SpinnerNumberModel(currentHour, 0, 23,

    1));

    hourSpin.setPreferredSize(new Dimension(35, 20));

    hourSpin.setName("Hour");

    hourSpin.addChangeListener(this);

    result.add(hourSpin);

    JLabel hourLabel = new JLabel("时");

    hourLabel.setForeground(controlTextColor);

    result.add(hourLabel);

    return result;

    }

    private JPanel createWeekAndDayPanal() {

    String colname[] = { "日", "一", "二", "三", "四", "五", "六" };

    JPanel result = new JPanel();

    // 设置固定字体,以免调用环境改变影响界面美观

    result.setFont(new Font("宋体", Font.PLAIN, 12));

    result.setLayout(new GridLayout(7, 7));

    result.setBackground(Color.white);

    JLabel cell;

    for (int i = 0; i 7; i++) {

    cell = new JLabel(colname[i]);

    cell.setHorizontalAlignment(JLabel.RIGHT);

    if (i == 0 || i == 6)

    cell.setForeground(weekendFontColor);

    else

    cell.setForeground(weekFontColor);

    result.add(cell);

    }

    int actionCommandId = 0;

    for (int i = 0; i 6; i++)

    for (int j = 0; j 7; j++) {

    JButton numberButton = new JButton();

    numberButton.setBorder(null);

    numberButton.setHorizontalAlignment(SwingConstants.RIGHT);

    numberButton.setActionCommand(String

    .valueOf(actionCommandId));

    numberButton.addActionListener(this);

    numberButton.setBackground(palletTableColor);

    numberButton.setForeground(dateFontColor);

    if (j == 0 || j == 6)

    numberButton.setForeground(weekendFontColor);

    else

    numberButton.setForeground(dateFontColor);

    daysButton[i][j] = numberButton;

    result.add(numberButton);

    actionCommandId++;

    }

    return result;

    }

    private JDialog createDialog(JDialog owner) {

    JDialog result = new JDialog(owner, "日期时间选择", true);

    result.setDefaultCloseOperation(JDialog.HIDE_ON_CLOSE);

    result.getContentPane().add(this, BorderLayout.CENTER);

    result.pack();

    result.setSize(width, height);

    return result;

    }

    void showDateChooser(Point position) {

    JDialog owner = (JDialog) SwingUtilities

    .getWindowAncestor(DateChooserJButton.this);

    if (dialog == null || dialog.getOwner() != owner)

    dialog = createDialog(owner);

    dialog.setLocation(getAppropriateLocation(owner, position));

    flushWeekAndDay();

    dialog.setVisible(true);

    }

    Point getAppropriateLocation(JDialog owner, Point position) {

    Point result = new Point(position);

    Point p = owner.getLocation();

    int offsetX = (position.x + width) - (p.x + owner.getWidth());

    int offsetY = (position.y + height) - (p.y + owner.getHeight());

    if (offsetX 0) {

    result.x -= offsetX;

    }

    if (offsetY 0) {

    result.y -= offsetY;

    }

    return result;

    }

    private Calendar getCalendar() {

    Calendar result = Calendar.getInstance();

    result.setTime(getDate());

    return result;

    }

    private int getSelectedYear() {

    return ((Integer) yearSpin.getValue()).intValue();

    }

    private int getSelectedMonth() {

    return ((Integer) monthSpin.getValue()).intValue();

    }

    private int getSelectedHour() {

    return ((Integer) hourSpin.getValue()).intValue();

    }

    private void dayColorUpdate(boolean isOldDay) {

    Calendar c = getCalendar();

    int day = c.get(Calendar.DAY_OF_MONTH);

    c.set(Calendar.DAY_OF_MONTH, 1);

    int actionCommandId = day - 2 + c.get(Calendar.DAY_OF_WEEK);

    int i = actionCommandId / 7;

    int j = actionCommandId % 7;

    if (isOldDay)

    daysButton[i][j].setForeground(dateFontColor);

    else

    daysButton[i][j].setForeground(todayBackColor);

    }

    private void flushWeekAndDay() {

    Calendar c = getCalendar();

    c.set(Calendar.DAY_OF_MONTH, 1);

    int maxDayNo = c.getActualMaximum(Calendar.DAY_OF_MONTH);

    int dayNo = 2 - c.get(Calendar.DAY_OF_WEEK);

    for (int i = 0; i 6; i++) {

    for (int j = 0; j 7; j++) {

    String s = "";

    if (dayNo = 1 dayNo = maxDayNo)

    s = String.valueOf(dayNo);

    daysButton[i][j].setText(s);

    dayNo++;

    }

    }

    dayColorUpdate(false);

    }

    public void stateChanged(ChangeEvent e) {

    JSpinner source = (JSpinner) e.getSource();

    Calendar c = getCalendar();

    if (source.getName().equals("Hour")) {

    c.set(Calendar.HOUR_OF_DAY, getSelectedHour());

    setDate(c.getTime());

    return;

    }

    dayColorUpdate(true);

    if (source.getName().equals("Year"))

    c.set(Calendar.YEAR, getSelectedYear());

    else

    // (source.getName().equals("Month"))

    c.set(Calendar.MONTH, getSelectedMonth() - 1);

    setDate(c.getTime());

    flushWeekAndDay();

    }

    public void actionPerformed(ActionEvent e) {

    JButton source = (JButton) e.getSource();

    if (source.getText().length() == 0)

    return;

    dayColorUpdate(true);

    source.setForeground(todayBackColor);

    int newDay = Integer.parseInt(source.getText());

    Calendar c = getCalendar();

    c.set(Calendar.DAY_OF_MONTH, newDay);

    setDate(c.getTime());

    }

    }

    }

    这是一个专门的选日期的类 ,你看看完了调用就行了

    编写JAVA程序实现一个简单的日历(高分求高手)(追加分)

    import java.awt.*;

    import java.awt.event.*;

    import java.util.*;

    import javax.swing.*;

    import javax.swing.event.*;

    import javax.swing.table.*;

    public class MyCalendar extends JApplet {

    public static final String WEEK_SUN = "SUN";

    public static final String WEEK_MON = "MON";

    public static final String WEEK_TUE = "TUE";

    public static final String WEEK_WED = "WED";

    public static final String WEEK_THU = "THU";

    public static final String WEEK_FRI = "FRI";

    public static final String WEEK_SAT = "SAT";

    public static final Color background = Color.white;

    public static final Color foreground = Color.black;

    public static final Color headerBackground = Color.blue;

    public static final Color headerForeground = Color.white;

    public static final Color selectedBackground = Color.blue;

    public static final Color selectedForeground = Color.white;

    private JPanel cPane;

    private JLabel yearsLabel;

    private JSpinner yearsSpinner;

    private JLabel monthsLabel;

    private JComboBox monthsComboBox;

    private JTable daysTable;

    private AbstractTableModel daysModel;

    private Calendar calendar;

    public MyCalendar() {

    cPane = (JPanel) getContentPane();

    }

    public void init() {

    cPane.setLayout(new BorderLayout());

    calendar = Calendar.getInstance();

    calendar = Calendar.getInstance();

    yearsLabel = new JLabel("Year: ");

    yearsSpinner = new JSpinner();

    yearsSpinner.setEditor(new JSpinner.NumberEditor(yearsSpinner, "0000"));

    yearsSpinner.setValue(new Integer(calendar.get(Calendar.YEAR)));

    yearsSpinner.addChangeListener(new ChangeListener() {

    public void stateChanged(ChangeEvent changeEvent) {

    int day = calendar.get(Calendar.DAY_OF_MONTH);

    calendar.set(Calendar.DAY_OF_MONTH, 1);

    calendar.set(Calendar.YEAR, ((Integer) yearsSpinner.getValue()).intValue());

    int maxDay = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);

    calendar.set(Calendar.DAY_OF_MONTH, day maxDay ? maxDay : day);

    updateView();

    }

    });

    JPanel yearMonthPanel = new JPanel();

    cPane.add(yearMonthPanel, BorderLayout.NORTH);

    yearMonthPanel.setLayout(new BorderLayout());

    yearMonthPanel.add(new JPanel(), BorderLayout.CENTER);

    JPanel yearPanel = new JPanel();

    yearMonthPanel.add(yearPanel, BorderLayout.WEST);

    yearPanel.setLayout(new BorderLayout());

    yearPanel.add(yearsLabel, BorderLayout.WEST);

    yearPanel.add(yearsSpinner, BorderLayout.CENTER);

    monthsLabel = new JLabel("Month: ");

    monthsComboBox = new JComboBox();

    for (int i = 1; i = 12; i++) {

    monthsComboBox.addItem(new Integer(i));

    }

    monthsComboBox.setSelectedIndex(calendar.get(Calendar.MONTH));

    monthsComboBox.addActionListener(new ActionListener() {

    public void actionPerformed(ActionEvent actionEvent) {

    int day = calendar.get(Calendar.DAY_OF_MONTH);

    calendar.set(Calendar.DAY_OF_MONTH, 1);

    calendar.set(Calendar.MONTH, monthsComboBox.getSelectedIndex());

    int maxDay = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);

    calendar.set(Calendar.DAY_OF_MONTH, day maxDay ? maxDay : day);

    updateView();

    }

    });

    JPanel monthPanel = new JPanel();

    yearMonthPanel.add(monthPanel, BorderLayout.EAST);

    monthPanel.setLayout(new BorderLayout());

    monthPanel.add(monthsLabel, BorderLayout.WEST);

    monthPanel.add(monthsComboBox, BorderLayout.CENTER);

    daysModel = new AbstractTableModel() {

    public int getRowCount() {

    return 7;

    }

    public int getColumnCount() {

    return 7;

    }

    public Object getValueAt(int row, int column) {

    if (row == 0) {

    return getHeader(column);

    }

    row--;

    Calendar calendar = (Calendar) MyCalendar.this.calendar.clone();

    calendar.set(Calendar.DAY_OF_MONTH, 1);

    int dayCount = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);

    int moreDayCount = calendar.get(Calendar.DAY_OF_WEEK) - 1;

    int index = row * 7 + column;

    int dayIndex = index - moreDayCount + 1;

    if (index moreDayCount || dayIndex dayCount) {

    return null;

    } else {

    return new Integer(dayIndex);

    }

    }

    };

    daysTable = new CalendarTable(daysModel, calendar);

    daysTable.setCellSelectionEnabled(true);

    daysTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

    daysTable.setDefaultRenderer(daysTable.getColumnClass(0), new TableCellRenderer() {

    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected,

    boolean hasFocus, int row, int column) {

    String text = (value == null) ? "" : value.toString();

    JLabel cell = new JLabel(text);

    cell.setOpaque(true);

    if (row == 0) {

    cell.setForeground(headerForeground);

    cell.setBackground(headerBackground);

    } else {

    if (isSelected) {

    cell.setForeground(selectedForeground);

    cell.setBackground(selectedBackground);

    } else {

    cell.setForeground(foreground);

    cell.setBackground(background);

    }

    }

    return cell;

    }

    });

    updateView();

    cPane.add(daysTable, BorderLayout.CENTER);

    }

    public static String getHeader(int index) {

    switch (index) {

    case 0:

    return WEEK_SUN;

    case 1:

    return WEEK_MON;

    case 2:

    return WEEK_TUE;

    case 3:

    return WEEK_WED;

    case 4:

    return WEEK_THU;

    case 5:

    return WEEK_FRI;

    case 6:

    return WEEK_SAT;

    default:

    return null;

    }

    }

    public void updateView() {

    daysModel.fireTableDataChanged();

    daysTable.setRowSelectionInterval(calendar.get(Calendar.WEEK_OF_MONTH),

    calendar.get(Calendar.WEEK_OF_MONTH));

    daysTable.setColumnSelectionInterval(calendar.get(Calendar.DAY_OF_WEEK) - 1,

    calendar.get(Calendar.DAY_OF_WEEK) - 1);

    }

    public static class CalendarTable extends JTable {

    private Calendar calendar;

    public CalendarTable(TableModel model, Calendar calendar) {

    super(model);

    this.calendar = calendar;

    }

    public void changeSelection(int row, int column, boolean toggle, boolean extend) {

    super.changeSelection(row, column, toggle, extend);

    if (row == 0) {

    return;

    }

    Object obj = getValueAt(row, column);

    if (obj != null) {

    calendar.set(Calendar.DAY_OF_MONTH, ((Integer)obj).intValue());

    }

    }

    }

    public static void main(String[] args) {

    JFrame frame = new JFrame("Calendar Application");

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    MyCalendar myCalendar = new MyCalendar();

    myCalendar.init();

    frame.getContentPane().add(myCalendar);

    frame.setSize(240, 172);

    frame.show();

    }

    }

    日历输出程序java控制流程

    import java.util.Calendar;

    import java.util.Date;

    import java.util.Scanner;

    public class MyCalendar

    {

    public static void main(String[] args)

    {

    Scanner scanner = new Scanner(System.in);

    String reg = "^(\\d+)[^\\d]+((0?[1-9])|(1[012]))$";

    while(true)

    {

    System.out.println("输入年月(年和月用非数字隔开:如2015.1)(什么都不输入直接退出)");

    String line = scanner.nextLine().trim();

    if("".equals(line))

    {

    scanner.close();

    break;

    }

    if(!line.matches(reg))

    {

    continue;

    }

    int year = Integer.parseInt(line.replaceAll(reg, "$1"));

    int month = Integer.parseInt(line.replaceAll(reg, "$2"));

    System.out.println("日\t一\t二\t三\t四\t五\t六");

    Calendar calendar = Calendar.getInstance();

    // 这个月的1号是星期几

    calendar.set(year, month - 1, 1);

    int day = calendar.get(Calendar.DAY_OF_WEEK);

    int start = Calendar.SUNDAY;

    calendar.add(Calendar.DATE, -day + start);

    while(start day)

    {

    System.out.print(calendar.get(Calendar.DATE) + "\t");

    calendar.add(Calendar.DATE, 1);

    start++;

    }

    calendar.set(year, month - 1, 1);

    Date now = calendar.getTime();

    calendar.set(year, month, 1);

    Date next = calendar.getTime();

    for(Date cur = now; cur.before(next);)

    {

    calendar.setTime(cur);

    int x = calendar.get(Calendar.DATE);

    String tmp = x 10 ? "0" + x : x + "";

    System.out.print(tmp + "\t");

    if(calendar.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY)

    {

    System.out.println();

    }

    calendar.add(Calendar.DATE, 1);

    cur = calendar.getTime();

    }

    calendar.add(Calendar.DATE, -1);

    int to = calendar.get(Calendar.DAY_OF_WEEK);

    int end = Calendar.SATURDAY;

    while(to end)

    {

    calendar.add(Calendar.DATE, 1);

    int x = calendar.get(Calendar.DATE);

    String tmp = x 10 ? "0" + x : x + "";

    System.out.print(tmp + "\t");

    to++;

    }

    System.out.println("\r\n");

    }

    }

    }


    分享名称:显示日历代码java,日历怎么显示日期
    转载源于:https://www.tyhkzb.com/article/hsodcg.html
    在线咨询
    服务热线
    服务热线:028-86922220
    TOP