public static void display(String dateFirst, String dateSecond){ 
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); 
         
        try{ 
            Date dateOne = dateFormat.parse(dateFirst); 
            Date dateTwo = dateFormat.parse(dateSecond); 
             
            Calendar calendar = Calendar.getInstance(); 
             
            calendar.setTime(dateOne); 
             
            while(calendar.getTime().before(dateTwo)){               
                System.out.println(dateFormat.format(calendar.getTime())); 
                 
                calendar.add(Calendar.DAY_OF_MONTH, 1);              
            } 
        } 
        catch(Exception e){ 
            e.printStackTrace(); 
        } 
         
    }谁能把这个函数改成有返回值的,返回类型为boolean类型。

解决方案 »

  1.   

    public static boolean display(String dateFirst, String dateSecond){ 
            boolean firstBeforeSecond = true;
            SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); 
            
            try{ 
                Date dateOne = dateFormat.parse(dateFirst); 
                Date dateTwo = dateFormat.parse(dateSecond); 
                
                Calendar calendar = Calendar.getInstance(); 
                
                calendar.setTime(dateOne); 
                
                if (!calendar.getTime().before(dateTwo)){              
                    firstBeforeSecond = false;
                }             retrun firstBeforeSecond;
            } 
            catch(Exception e){ 
                e.printStackTrace(); 
            } 
            
        } 
      

  2.   

    返回 boolean?说清楚点,什么情况下应该返回 true,什么情况下应该返回 false。
      

  3.   


    正解。 返回true 、false自己看着整就行啦
      

  4.   


    你写的这个方法提示错误是This method must return a result of type boolean
      

  5.   

    ???yi jin return le a???
      

  6.   

    这个不对吧,只在 try 块中有 return 啊,如果跑到 catch 块中就没 return 呢,
    得把 try 中的 return 搬到外面去就可以了。
      

  7.   

    精解如下:
    public static boolean display(String dateFirst, String dateSecond) {
    boolean returnValue = false;
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
    try {
    Date dateOne = dateFormat.parse(dateFirst);
    Date dateTwo = dateFormat.parse(dateSecond);
    returnValue = dateOne.before(dateTwo);
    } catch (Exception ex) {
    ex.printStackTrace();
    }
    return returnValue;
    }
      

  8.   


    public static boolean display(String dateFirst, String dateSecond){ 
            SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); 
            boolean flag = false;
            try{ 
                Date dateOne = dateFormat.parse(dateFirst); 
                Date dateTwo = dateFormat.parse(dateSecond); 
                
                Calendar calendar = Calendar.getInstance(); 
                
                calendar.setTime(dateOne); 
                
                while(calendar.getTime().before(dateTwo)){              
                    System.out.println(dateFormat.format(calendar.getTime())); 
                    
                    calendar.add(Calendar.DAY_OF_MONTH, 1);              
                }             flag = true;
            } 
            catch(Exception e){ 
                e.printStackTrace(); 
            } 
            return flag;
        }