import java.text.SimpleDateFormat;
import java.util.Date;
import org.joda.time.*;
public class Test {
public static void main(String[] args) {
String dateStart = "01/01/2000 05:30";
String dateStop = "02/2/2001 06:31";
SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy HH:mm");
Date d1 = null;
Date d2 = null;
try {
d1 = format.parse(dateStart);
d2 = format.parse(dateStop);
DateTime dt1 = new DateTime(d1);
DateTime dt2 = new DateTime(d2);
System.out.print(Years.yearsBetween(dt1, dt2).getYears() + " years, ");
System.out.print(Months.monthsBetween(dt1, dt2).getMonths() % 52 + " months, ");
System.out.print(Weeks.weeksBetween(dt1, dt2).getWeeks() % 4 + " weeks, "); …Run Code Online (Sandbox Code Playgroud) 我有这个代码:
switch(month){
case 1:
System.out.print("January");
break;
case 2:
System.out.print("February");
break;
case 3:
System.out.print("March");
break;
case 4:
System.out.print("April");
break;
case 5:
System.out.print("May");
break;
case 6:
System.out.print("June");
break;
case 7:
System.out.print("July");
break;
case 8:
System.out.print("August");
break;
case 9:
System.out.print("September");
break;
case 10:
System.out.print("October");
break;
case 11:
System.out.print("November");
break;
case 12:
System.out.print("December");
break;
}
Run Code Online (Sandbox Code Playgroud)
好的,所以这个代码100%完美地工作...对于int月.我有另一个int(avgMonth)只能保持相同的值(1-12),我想只有相同的输出(月份).如何在不必复制整个交换机和案例的情况下将avgMonth添加到此代码中?我尝试使用逗号(月,avgMonth)和&&(月&& avgMonth)以及+'s(月+ avgMonth),但无济于事.