-1

在此处输入图像描述

我正在尝试制作一个用户能够输入日期的程序:28 -03 - 2014.

这和程序读取,给出明天的日期,如:29 - march - 2014。该程序必须检查:

  • 字符串最多 10 个。
  • 日期(2 位):1 - 31
  • 细绳:-
  • 月份(两位数):1 - 12
  • 细绳:-
  • 年份:四位数

这是我的代码!

    public String month()
    {
            int month = 0;
            switch(month){
            case 1 :monthString = " Janauri";
                    break;
             case 2: monthString = "February"
    .......
    ublic String dateOfTomorrow(int day, int month, int year)

    {
    String Date =  day+ "-" + month+ "- " + year;
    day++;
    if(day > totalDaysInMonth(month));
    {// new  month
    day = 1;
    month++;
    if(month > 12)
    {//new year
    month= 1;
    year ++;
    }
  }
    return Date;

    }
        private boolean  totalDaysInMonth(int day)
        {
            if( day >= 1 && day < 31)
            {
                return true;
            }
            else {
                return false;
                }
        }


        public void actionPerformed(ActionEvent e)
            {
            for ( int i = 1; i<31;);
                String s = tf.getText();
                if ( e.getSource() == b1)
                {

                    l2.setText(s);

                }
                else if (e.getSource ()== b2)
                {
                    l2.setText(monthString);
                }

            }
4

2 回答 2

1

我认为你的问题出在这个循环中:

for ( int i = 1; i<31;);

这永远不会结束。删除该空循环或将其更改为:

for ( int i = 1; i<31;i++);
于 2014-03-28T20:07:53.977 回答
0

我真的不明白你所说的1/2堆栈是什么意思。但是如果你制作一串变量

String Date =  day + "-" + month + "-" + year;

然后更改它对字符串没有任何影响的变量。所以你仍然会得到相同的日期。

一个提高可读性的提示使您的变量采用驼峰式大小写。因此,不要将 Date 称为日期。

于 2014-03-28T20:10:18.990 回答