2014-10-19 106 views
1

我希望能够调用另一个输入的三种方法的回报。在下面的例子中,我有其他方法从MM/DD/CCYY日期中提取月份,日期和年份。然后,dayOfWeekMethod将这些数据整理并计算出某一天的一周中的某一天。如何正确地格式化前两行以正确地给我那个结果?谢谢!!如何从其他方法调用返回是其他方法的输入?

这里是我有(这是不正确的完成):

System.out.println("The date is "+MyDateTest.dayOfWeekMethod(MyDateTest.monthMethod(date), 
MyDateTest.dayMethod(date), MyDateTest.yearMethod(date)); 

public static int dayMethod(String dateInput){ 
    int day = MyDate.getDay(dateInput); 

return day; 
} 

public static int monthMethod(String dateInput){ 
    int month = MyDate.getMonth(dateInput); 

    return month; 
} 

public static int yearMethod(String dateInput){ 
    int year = MyDate.getYear(dateInput); 

    return year; 
} 

public static String dayOfWeekMethod(int month, int day, int year){ 
    String dayOfWeek = MyDate.dayofWeek(month, day, year); 

    return dayOfWeek; 
} 
+0

而错误信息e是? – 2014-10-19 14:36:43

+2

看来你只是写了一些代码出来的任何方法或块('System.out.println'),这就是为什么它不编译。另外,为什么你要用类的名称给你的方法调用加上前缀,而你在这个类中是**? – Dici 2014-10-19 14:39:09

+0

那么你可以给你的方法一个价值。例如int day = dayMethod(date); int month = monthMetod(date); int year = yearMethod(date),然后调用dayOfWeekMethod(day,month,year)。 例如:System.out.println(“日期为”+ dayOfWeekMethod(day,moth,year)) – charen 2014-10-19 14:44:21

回答

0

无法测试,因为我不上课指明MyDate但这应该工作,如果你的类指明MyDate作品。

public static void main(String[] args) { 
    String date = ""; 
    int day = dayMethod(date); 
    int month = monthMethod(date); 
    int year = yearMethod(date); 
    System.out.println("The date is "+dayOfWeekMethod(month,day,year)); 
} 

public static int dayMethod(String dateInput) { 
    int day = MyDate.getDay(dateInput); 

    return day; 
} 

public static int monthMethod(String dateInput) { 
    int month = MyDate.getMonth(dateInput); 

    return month; 
} 

public static int yearMethod(String dateInput) { 
    int year = MyDate.getYear(dateInput); 

    return year; 
} 

public static String dayOfWeekMethod(int month, int day, int year) { 
    String dayOfWeek = MyDate.dayofWeek(month, day, year); 

    return dayOfWeek; 
} 
0

如果我理解你的问题,你可以使用一个Calendar例如像

public static String dayOfWeekMethod(int month, int day, int year){ 
    Calendar cal = new GregorianCalendar(year, month - 1, day); 
    switch (cal.get(Calendar.DAY_OF_WEEK)) { 
    case Calendar.MONDAY: return "Monday"; 
    case Calendar.TUESDAY: return "Tuesday"; 
    case Calendar.WEDNESDAY: return "Wednesday"; 
    case Calendar.THURSDAY: return "Thursday"; 
    case Calendar.FRIDAY: return "Friday"; 
    case Calendar.SATURDAY: return "Saturday"; 
    case Calendar.SUNDAY: return "Sunday"; 
    } 
    return null; 
} 

然后你就可以用类似称呼它,

// System.out.println("The day is "+ dayOfWeekMethod(
// MyDateTest.monthMethod(date), MyDateTest.dayMethod(date), 
// MyDateTest.yearMethod(date)); 
System.out.println(dayOfWeekMethod(10, 19, 2014)); 

输出是(预期)

Sunday