public static int getDayOfMonth(){
Calendar aCalendar = CalendargetInstance(LocaleCHINA);
int day=aCalendargetActualMaximum(CalendarDATE);
return day;
}
这是获取的一个月的最大的天数。。。。
import javautilScanner;
public class P {
public static void main(String[] args) {
final int[] month={31,28,31,30,31,30,31,31,30,31,30,31};
int y,m,s;
Scanner sc=new Scanner(Systemin);
Systemoutprint("请输入年、月(以空格分隔,如2016 8)");
y=scnextInt();
m=scnextInt();
s=month[m-1];
if(2==m && (0==y%400 || (0==y%4 && 0!=y%100)))
s+=1;
for(int i=1;i<s;i++)
Systemoutprint(""+m+"月"+i+"日,");
Systemoutprintln(""+m+"月"+s+"日");
scclose();
}
}
import javautil;
public class Test {
public static void main(String[] args) {
Scanner input = new Scanner(Systemin);
Systemoutprintln("请输入年份");
int year = inputnextInt();
Systemoutprintln("请输入月份");
int month = inputnextInt();
if(month==2){
if (((year % 100 == 0) && (year % 400 == 0))
|| ((year % 100 != 0) && (year % 4 == 0))) {
Systemoutprintln(month+"月份天数是29天");
return;
}else {
Systemoutprintln(month+"月份天数是28天");
return;
}
}else if(month%2==0 ) {
Systemoutprintln(month+"月份是30天");
}else if(month%2!=0) {
Systemoutprintln(month+"月份是31天");
}
}
}
程序就自己写吧,告诉你一个思路。先判断月份是否为2月,如果是的话判断年是否为闰年,若为闰年2月为29天,若不是闰年为28天;如果要判断的月份不是2月,判断其是否为1,3,5,7,8,10,12,若是其中的一个则为31天,剩余的月份为30天
import javautilCalendar;
public class Main {
public static void main(String[] args) {
Systemoutprintln(countWorkDay(2018, 6));
}
/
获取指定年月有多少个工作日)
@param year
@param month
@return
/
public static int countWorkDay(int year, int month) {
Calendar c = CalendargetInstance();
cset(CalendarYEAR, year);
// 月份是从0开始计算,所以需要减1
cset(CalendarMONTH, month - 1);
// 当月最后一天的日期
int max = cgetActualMaximum(CalendarDAY_OF_MONTH);
// 开始日期为1号
int start = 1;
// 计数
int count = 0;
while (start <= max) {
cset(CalendarDAY_OF_MONTH, start);
if (isWorkDay(c)) {
count++;
}
start++;
}
return count;
}
// 判断是否工作日(未排除法定节假日,由于涉及到农历节日,处理很麻烦)
public static boolean isWorkDay(Calendar c) {
// 获取星期,1~7,其中1代表星期日,2代表星期一 7代表星期六
int week = cget(CalendarDAY_OF_WEEK);
// 不是周六和周日的都认为是工作日
return week != CalendarSUNDAY && week != CalendarSATURDAY;
}
}
看代码:
import javautilScanner;
public class Demo {
public static void main(String[] args) throws Exception {
try (Scanner in = new Scanner(Systemin)) {
Systemoutprintln("输入年份和月份:");
int year = innextInt();
int month = innextInt();
int day = 0;
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
day = 31;
break;
case 4:
case 6:
case 9:
case 11:
day = 30;
break;
case 2:
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
day = 29;
} else {
day = 28;
}
break;
default:
Systemerrprintln("输入月份有误");
break;
}
Systemoutprintf("%d 年 %d 月有 %d 天\n", year, month, day);
}
}
}
运行:
错误的不少呢,修改如下:
import javaxswingJOptionPane;
public class Year {
public static void main(String[] args) {
String yearString = JOptionPaneshowInputDialog(null, "请输入您要查找的年份");
String monthString = JOptionPaneshowInputDialog(null, "请输入您要查找的月份:");
int daysOfMonth = 0;
int year = IntegerparseInt(yearString);
int month = IntegerparseInt(monthString);
switch (month) {
case 1:
daysOfMonth = 31;
break;
case 2:
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
daysOfMonth = 29;
} else
daysOfMonth = 28;
break;
case 3:
daysOfMonth = 31;
break;
case 4:
daysOfMonth = 30;
break;
case 5:
daysOfMonth = 31;
break;
case 6:
daysOfMonth = 30;
break;
case 7:
daysOfMonth = 31;
break;
case 8:
daysOfMonth = 31;
break;
case 9:
daysOfMonth = 30;
break;
case 10:
daysOfMonth = 31;
break;
case 11:
daysOfMonth = 30;
break;
case 12:
daysOfMonth = 31;
break;
default:
break;
}
;
JOptionPaneshowMessageDialog(null, "这个月份总共的天数是" + daysOfMonth);
Systemoutprintln("您输入的年份是:" + yearString + "\n您输入的月份是:" + monthString + "\n这个月份总共的天数是:" + daysOfMonth);
}
}
以上就是关于怎样得到当前月份的天数(Java)全部的内容,包括:怎样得到当前月份的天数(Java)、Java输入月份 循环打印出该月的天数 比如1月1日,1月2日,1月3日......1月31日、用java程序写出 接收一个年份和一个月份,判断得出该月的总天数。(用if语句完成)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)