蓝桥杯日期问题常考,java提供了日期类很方便;

//日历类

Calendar c = Calendar.getInstance();  // 获取实例化对象

Date date =c.getTime();      // 日期类得到c的时间;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd hh:mm:ss");  // 修改格式
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-mm-dd");  
String now =sdf.format(date);  //  以字符串方式得到时间,用sdf修改date得到自己希望的格式
System.out.println(now);  // 输出当前时间/日期

使用日历类根据日期得到星期:

Calendar calendar = Calendar.getInstance();
//2017年12月29日:星期五
calendar.set(2017 , 11, 29); //注意月份是用0-11代表1-12月
int a = calendar.get(Calendar.DAY_OF_WEEK);
System.out.println(a);//1-7代表星期日-星期六

例题:

从键盘输入一个日期,格式为yyyy-M-d

要求计算该日期与1949年10月1日距离多少天

例如:

用户输入了:1949-10-2 程序输出:1

用户输入了:1949-11-1 程序输出:31

代码:

public class Demo1 {
static long sum = 0;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String next = sc.next();
String[] s = next.split("-");// 以 - 为分界拆分为字符串数组
int year = Integer.parseInt(s[0]);
int month = Integer.parseInt(s[1]);
int day = Integer.parseInt(s[2]);
// 日期类
// 取得两个到元年的时间相减变成天数
Date d1 = new Date(year, month, day);
long t1 = d1.getTime();// 返回的是毫秒值
Date d2 = new Date(1949, 10, 1);
long t2 = d2.getTime();
long sum = (t1 - t2) / (1000 * 60 * 60 * 24) + 1; // 转化为天数
System.out.println(sum); } }

错误或者不足的地方欢迎指正!!

最后分享一个喜欢的句子:

  风雪中,羊走得很慢,人也走得很慢。牧羊人的皮帽子湿漉漉的,他无精打采的把脑袋缩在翻起来的皮袄领子里。羊摇头晃脑,没什么目的。牧羊人低垂着脑袋,仿佛也没什么目的。他们出现得过于不合时宜了,只是在这世间到处走,就耗尽了他们的力气。 

日期类的使用(java)-蓝桥杯的更多相关文章

  1. Java 蓝桥杯 算法训练(VIP) 最大体积

    最大体积 问题描述 每个物品有一定的体积(废话),不同的物品组合,装入背包会战用一定的总体积. 假如每个物品有无限件可用,那么有些体积是永远也装不出来的. 为了尽量装满背包,附中的OIER想要研究一下 ...

  2. Java蓝桥杯——排序练习:选美大赛

    选美大赛 在选美大奖赛的半决胜赛现场,有一批选手参加比赛,比赛的规则是最后得分越高,名次越低.当半决决赛结束时,要在现场按照选手的出场顺序宣布最后得分和最后名次,获得相同分数的选手具有相同的名次,名次 ...

  3. JAVA蓝桥杯黄金分割数,涉及到bigdecimal

    import java.math.BigDecimal; public class test { public static void main(String[] args) { BigDecimal ...

  4. 密码脱落 JAVA 蓝桥杯

    密码脱落 X星球的考古学家发现了一批古代留下来的密码.这些密码是由A.B.C.D 四种植物的种子串成的序列.仔细分析发现,这些密码串当初应该是前后对称的(也就是我们说的镜像串).由于年代久远,其中许多 ...

  5. java 蓝桥杯算法提高 出现次数最多的整数

    思路:其实这道题不是太难,但是这个题太坑了,提交了好多次都不是100,后来才知道,一定一定要在输入数组数据之前先判断一下输进去的n的范围,一定一定要注意,否则就是跟我下面的图片一样的效果了,泪奔~ 问 ...

  6. java 蓝桥杯算法提高 字串统计

    思路:这道题用HashMap来保存枚举的字串,key值保存字串-value值保存字串所出现的次数:         通过for循环并使用subString()方法枚举所有符合要求的子串maxStr记录 ...

  7. java 蓝桥杯算法提高 矩阵乘法

    思路:根据提示的内容,我们可以得到c[i][j] += a[i][k]*b[k][j],k>=0&&k<s PS:这道题本身不难,但是当我定义A[m][s] B[s][n] ...

  8. java 蓝桥杯算法提高 _3K好数

    nums[i][j] 存的是i位数的时候,首位数字是j的K好数的数目,i从1位开始的结果,去算2位时的结果,去算3位时的结果...最后得到l位的结果.K进制只是一个范围. import java.ut ...

  9. java 蓝桥杯算法提高 _1区间k大数查询

    import java.util.Scanner; public class _1区间K大数查询 { public static void main(String[] args) { Scanner ...

  10. java 蓝桥杯算法提高 _2最大最小公倍数

    解题思路: 1. n是奇数,那就最大的三个数相乘2. n是偶数,得分两种情况了, ①如果n不是3的倍数,那就s=n*(n-1)*(n-3)---n与n-2同为偶数,故排除一个n-2: ②n是3的倍数, ...

随机推荐

  1. java Concurrent并发容器类 小结

    Java1.5提供了多种并发容器类来改进同步容器的性能. 同步容器将所有对容器的访问都串行化,以实现他们的线程安全性.这种方法的代价是严重降低并发性,当多个线程竞争容器的锁时,吞吐量将严重减低.  一 ...

  2. java(7)数组

    一.什么是数组及其作用? 定义:具有相同数据类型的一个集合 作用:存储连续的具有相同类型的数据 二.java中如何声明和定义数组 2.1 声明和定义的语法: 数据类型[ ] 数组名:( int[ ] ...

  3. LOJ #556. 「Antileaf's Round」咱们去烧菜吧

    好久没更博了 咕咕咕 现在多项式板子的常数巨大...周末好好卡波常吧.... LOJ #556 题意 给定$ m$种物品的出现次数$ B_i$以及大小$ A_i$ 求装满大小为$[1..n]$的背包的 ...

  4. Centos 05 系统目录讲解

    本节内容 1.linux目录结构 2.主目录功能简介 3.重要子目录 linux目录结构 在linux里面,逻辑上所有目录只有一个顶点,根是所有目录的起点. 根下面是类似一个倒挂的树一样的层次结构 可 ...

  5. Linux常用命令总结-软件测试面试专用

  6. zookeep服务启动命令

    zookeeper的安装目录:/usr/local/zookeeper-3.4.6/bin/zkServer.sh; 配置文件路径:../conf/zoo.cfg 端口 :2181: ZooKeepe ...

  7. ASP.NET Web API系列教程(目录)(转)

    注:微软随ASP.NET MVC 4一起还发布了一个框架,叫做ASP.NET Web API.这是一个用来在.NET平台上建立HTTP服务的Web API框架,是微软的又一项令人振奋的技术.目前,国内 ...

  8. WPF样式中TargetType 属性 (Property) 和 x:Key 属性 (Attribute)

    如第一个示例所示,如果将 TargetType 属性设置为 TextBlock 而不为样式分配 x:Key,样式就会应用于所有 TextBlock 元素.这种情况下,x:Key 隐式设置为 {x:Ty ...

  9. C#+EntityFramework编程方式详细之Model First

    Model First Model First模式即“模型优先”,这里的模型指的是“ADO.NET Entity Framework Data Model”,此时你的应用并没有设计相关数据库,在VS中 ...

  10. pl/sql学习(4): 包package

    本文简单介绍包, 目前来看我用的不多, 除了之前 为了实现 一个procedure 的输出参数是结果集的时候用到过 package. 概念: 包是一组相关过程.函数.变量.常量和游标等PL/SQL程序 ...