黑马程序员技术交流社区
标题:
关于一个编程题,计算一个年份的二月的天数。。。
[打印本页]
作者:
苏乞儿
时间:
2014-9-21 23:36
标题:
关于一个编程题,计算一个年份的二月的天数。。。
package day21_practice;
import java.util.Calendar;
import java.util.Scanner;
/*
* 输入一个年份,计算出这一年的二月份有多少天。
*/
public class CalendarDemo2 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个年份:");
int year=Integer.parseInt(sc.nextLine());
sc.close();
Calendar calendar=Calendar.getInstance();
calendar.set(year, 2, 1);//这个是社么用??
calendar.add(Calendar.DATE, -1);//这又是什么,Calendar.DATE到底是个什么,查API也没说清啊。。
System.out.println(calendar.get(Calendar.DATE));
}
}
复制代码
一个题,用Calendar类实现,计算一个年份的二月分的值。。。擦。。。一点思路没有。。。到网上查了一下。。自己敲的代码如上,就是没看懂。。
作者:
霜林醉zhx
时间:
2014-9-22 01:56
calendar.set(year, 2, 1);// 这句是设置日历时间,把时间设轩3月1日。因为在java中,月份是从0开始排的,也就是说一月份的数字是0,二月份是1,三月分是2。
calendar.add(Calendar.DATE, -1);//这句话的意思是,把你设置的时间(3月1号)减一天,就得到了那年2月份的最后一天,也就是要求的这一年2月份有多少天。
Calendar.DATE是Calendar的一个字段,表示天数。
作者:
姠佐メ亾佑つ
时间:
2014-9-22 02:50
楼主我也查了下API注解了哈你不懂的地方,上面懂的就没注解哈.
package com.itheima.bbs;
import java.util.Calendar;
import java.util.Scanner;
/*
* 输入一个年份,计算出这一年的二月份有多少天。
*/
public class HongtenDate {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个年份:");
int year=Integer.parseInt(sc.nextLine());
sc.close();
// 使用默认时区和语言环境获得一个日历(当前日期 )
/*
Calendar 提供了一个类方法 getInstance,以获得此类型的一个通用的对象。
Calendar 的 getInstance 方法返回一个 Calendar 对象, 其日历字段已由当前日期和时间初始化
*/
Calendar calendar=Calendar.getInstance();
/*
set:
public final void set(
int year,
int month,
int date)设置日历字段 YEAR、MONTH 和 DAY_OF_MONTH 的值。
保留其他日历字段以前的值。如果不需要这样做,则先调用 clear()。
参数:
year - 用来设置 YEAR 日历字段的值。
month - 用来设置 MONTH 日历字段的值。Month 值是基于 0 的。例如,0 表示 January。
date - 用来设置 DAY_OF_MONTH 日历字段的值。
*/
//设置日历字段 YEAR、MONTH 和 DAY_OF_MONTH 的值。
calendar.set(year, 2, 1);//(设为输入年份的3月1号)
// (add(Calendar.DAY_OF_MONTH,-1)//减一天,变为上月最后一天
calendar.add(Calendar.DATE, -1);//?这又是什么,Calendar.DATE到底是个什么,查API也没说清啊。。
// get(Calendar.DAY_OF_MONTH)获得这个月的第几天 ;(换句话说就是2月的最后一天,3月1号的前一天)
System.out.println(calendar.get(Calendar.DATE));
}
}
作者:
姠佐メ亾佑つ
时间:
2014-9-22 02:51
晕 发错了 我发代码你好看些;麻烦删除一下;
package com.itheima.bbs;
import java.util.Calendar;
import java.util.Scanner;
/*
* 输入一个年份,计算出这一年的二月份有多少天。
*/
public class HongtenDate {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.println("请输入一个年份:");
int year=Integer.parseInt(sc.nextLine());
sc.close();
// 使用默认时区和语言环境获得一个日历(当前日期 )
/*
Calendar 提供了一个类方法 getInstance,以获得此类型的一个通用的对象。
Calendar 的 getInstance 方法返回一个 Calendar 对象, 其日历字段已由当前日期和时间初始化
*/
Calendar calendar=Calendar.getInstance();
/*
set:
public final void set(
int year,
int month,
int date)设置日历字段 YEAR、MONTH 和 DAY_OF_MONTH 的值。
保留其他日历字段以前的值。如果不需要这样做,则先调用 clear()。
参数:
year - 用来设置 YEAR 日历字段的值。
month - 用来设置 MONTH 日历字段的值。Month 值是基于 0 的。例如,0 表示 January。
date - 用来设置 DAY_OF_MONTH 日历字段的值。
*/
//设置日历字段 YEAR、MONTH 和 DAY_OF_MONTH 的值。
calendar.set(year, 2, 1);//(设为输入年份的3月1号)
// (add(Calendar.DAY_OF_MONTH,-1)//减一天,变为上月最后一天
calendar.add(Calendar.DATE, -1);//?这又是什么,Calendar.DATE到底是个什么,查API也没说清啊。。
// get(Calendar.DAY_OF_MONTH)获得这个月的第几天 ;(换句话说就是2月的最后一天,3月1号的前一天)
System.out.println(calendar.get(Calendar.DATE));
}
}
复制代码
作者:
张丽丹
时间:
2014-9-22 18:00
条条大路通罗马,取3月份第一天,和一月份最后一天,转成long型,相减,除于 一天的毫秒数24*60*60*1000,最后得到的天数应该在减个1,
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2