精华内容
下载资源
问答
  • 时间必须要以月为单位分割 54 boolean result= false ; 55 if (start.getActualMaximum(Calendar.DAY_OF_MONTH)==start.get(Calendar.DATE)){ // 说明这是开始时间是月份的最后一天 56 result=end....
      1 package test;
      2 
      3 import java.io.UnsupportedEncodingException;
      4 import java.text.ParseException;
      5 import java.text.SimpleDateFormat;
      6 import java.util.Base64;
      7 import java.util.Calendar;
      8 import java.util.Date;
      9 
     10 public class Test {
     11     public static void main(String[] args) throws UnsupportedEncodingException, ParseException {
     12         /*
     13          * Base64.Encoder encoder = Base64.getEncoder(); Base64.Decoder decoder
     14          * = Base64.getDecoder(); String str="mx..05220416";
     15          * System.out.println(new
     16          * String(decoder.decode("Z2hteDA1MjIwNDE2"),"UTF-8"));
     17          */
     18         /*
     19          * String time ="2018-01-02"; String time2 ="2019-01-02";
     20          * SimpleDateFormat sDateFormat=new SimpleDateFormat("yyyy-MM-dd");
     21          * //加上时间 Date begin=sDateFormat.parse(time); Date
     22          * end=sDateFormat.parse(time2); //System.out.println(begin);
     23          * System.out.println(begin.getTime());
     24          * System.out.println(end.getTime()); long oneyear=31536000;
     25          * System.out.println(end.getTime()/1000-begin.getTime()/1000==oneyear);
     26          * System.out.println();
     27          */    
     28         
     29         String begin="2017-02-27";
     30         String end="2017-03-28";
     31         System.out.println(test(begin,end));
     32     }
     33 
     34     public static boolean test(String beg,String ed) throws ParseException{
     35         boolean result=false;
     36         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
     37         Date date = format.parse(beg);
     38         Date date2 = format.parse(ed);
     39         // 开始时间
     40         Calendar start = Calendar.getInstance();
     41         start.setTime(date);
     42         // 结束时间
     43         Calendar end = Calendar.getInstance();
     44         end.setTime(date2);
     45         if(testMonth(start,end)&&testYear(date,date2)&&testDay(start,end)){
     46              result=true;
     47         }
     48         return result;
     49     }
     50     
     51     
     52 
     53 public static boolean testDay(Calendar start,Calendar end){//时间必须要以月为单位分割
     54         boolean result=false;
     55         if(start.getActualMaximum(Calendar.DAY_OF_MONTH)==start.get(Calendar.DATE)){//说明这是开始时间是月份的最后一天
     56             result=end.getActualMaximum(Calendar.DAY_OF_MONTH)==end.get(Calendar.DATE);//那么结束时间也需要是月份的最后一天
     57             if(start.get(Calendar.DATE)==end.get(Calendar.DATE)){
     58                 result=true;
     59             }
     60         }
     61         if(start.getActualMaximum(Calendar.DAY_OF_MONTH)>start.get(Calendar.DATE)){//说明这是开始时间不是月份的最后一天
     62             if(start.get(Calendar.DATE)==end.get(Calendar.DATE)){//结束时间和开始时间是不同月份的同一天
     63                 result=true;
     64             }else if(start.get(Calendar.DATE)>end.get(Calendar.DATE)&&end.getActualMaximum(Calendar.DAY_OF_MONTH)==end.get(Calendar.DATE)){
     65                 result=true;
     66             }
     67             else if(start.get(Calendar.DATE)<end.get(Calendar.DATE)&&start.getActualMaximum(Calendar.DAY_OF_MONTH)==start.get(Calendar.DATE)){
     68                 result=true;
     69             }
     70         }
     71         return result;
     72         }
     73     
     74     
     75     public static boolean testYear(Date date,Date date2){
     76         boolean result=false;
     77         if(date2.getTime()/1000-date.getTime()/1000<31536000){//相差的时间不能大于一年
     78             result=true;
     79         }
     80         System.out.println(date2.getTime()/1000-date.getTime()/1000);
     81         return result;
     82     }
     83     
     84     public static boolean testMonth(Calendar start,Calendar end){
     85         boolean result=false;
     86         int subMonthCount = (end.get(Calendar.YEAR) - start.get(Calendar.YEAR) == 0)//相差的月份
     87                 ? end.get(Calendar.MONTH) - start.get(Calendar.MONTH) // 同一年
     88                 : ((end.get(Calendar.YEAR) - start.get(Calendar.YEAR) >= 2) // 年数差超过2年
     89                         ? (end.get(Calendar.YEAR) - start.get(Calendar.YEAR) - 1) * 12
     90                                 + start.getActualMaximum(Calendar.MONTH) - start.get(Calendar.MONTH)
     91                                 + end.get(Calendar.MONTH) + 1
     92                         : start.getActualMaximum(Calendar.MONTH) - start.get(Calendar.MONTH)
     93                                 + end.get(Calendar.MONTH) + 1); // 年数差为1,Calendar.get(MONTH)
     94                                                                 // 第一月是0,所以+1
     95         //System.out.println(subMonthCount);
     96         if(subMonthCount<1){//相差月份必须大于一个月
     97             result=false;
     98         }else{
     99             result=true;
    100         }
    101         return result;
    102     }
    103     
    104     
    105 }


    //欢迎测试
    欢迎大家一起说出自己的想法。
    展开全文
  • 总结这一年多的时间

    2016-06-23 08:19:17
    离开高研院已经有一年多的时间了。现在真的很怀念在高研院的日子,虽然是事业单位,空闲时间多,但是做学问那是一门心思扎进去,沉下心来搞学问的。想念亲爱的同学们,想念亲爱的老师们,想念师兄师姐们。 现在工作...

    离开高研院已经有一年多的时间了。现在真的很怀念在高研院的日子,虽然是事业单位,空闲时间多,但是做学问那是一门心思扎进去,沉下心来搞学问的。想念亲爱的同学们,想念亲爱的老师们,想念师兄师姐们。

    现在工作很忙,没多少时间写博客。但是生活不只是苟且,还有诗和远方!

    展开全文
  • 编程是什么?也许每个人都有不同的见解。   有人认为编程是一份工作,也有人认为编程是一种爱好,甚至有人认为编程是此生追求。其实,编程就是编写程序。   首先,从“编”字分析,它既可以表示编写,也...

      编程是什么?也许每个人都有不同的见解。

      有人认为编程是一份工作,也有人认为编程是一种爱好,甚至有人认为编程是此生追求。其实,编程就是编写程序。
      首先,从“编”字分析,它既可以表示编写,也可以表示按一定的原则、规则或次序来组织或排列。但,都离不开思考。
      “程”字,它既可以表示工程,也可以表示行进的距离。但,都离不开执行。

      简单来说,编程就是不停的思考,不停的执行。

    在这里插入图片描述

    编程与做别的事情相同,没有执行捷径,只有思考的方式不同。


    章节预览:

    1. 成功案例
    2. 为自己定制一个小目标
    3. 提升“绝对力量”
    4. 分析每一次“执行”
    5. 你已进入“天才”领域


    章节内容:


    1. 成功案例

      说起编程界的“天才”,我们首先想到的就是Linus Torvalds。
      linus Torvalds的成名之作是我们熟知的linux内核,在它的基础上诞生出许多著名的操作系统,比如:Slackware、Debian、RedHat、Fedora、Ubuntu、LinuxMint等。

    在这里插入图片描述

      linux从初期被人们了解,到中期被人们熟知,甚至到后期占据绝大部分内核江山,都离不开linus Torvalds的宏伟目标。接下来,我们一起了解linus Torvalds的成长之路:

      上世纪八十年代,Unix开始向商业化方向发展,大部分学生由于支付不起昂贵的授权费用,不得不停止相关的研究。1987年,荷兰有一位大学教授编写了一个类Unix的应用系统并命名为Minix,用于教学使用。Linus Torvalds起初接触Minix是为了学术研究,接触一段时间发现Minix一些设计观念与自己的理解存在一些差异,但是他不能轻易修改和发布该系统的源码(由于Minix的许可证等问题)。

      1991年,Linus Torvalds为当时新推出使用Intel 80386微处理器的计算机开发了一款全新的操作系统,并命名为Linux。

      期初,Linus只是在自编写的内核中植入gcc编译器和Shell。由于Linux完全遵循GPL协议主题,发布到互联网后得到强烈的反响,很快吸引了众多开发者、黑客对其代码进行修改和维护。

      Linux内核从发布到现在经历了4个大版本以及众多小版本更新,linux发行版也从Slackware最初发布到后来的Debian、RedHat、Fedora、Ubuntu、LinuxMint等等。

      上述故事中,我们可以分析出一个关键字,就是“成长”。Linus Torvalds刚开始只是为了学术研究,迫不得已编写自己的内核,内核发布后,发现许多人面临同样的问题,这也让他萌发了新的思想——与大家一起完善这个内核。就这样,linux内核从初期只能编译、执行简单程序,到后来一步一步走上正规化,这些都离不开思想“成长”。

      其实,并不是只有伟人的想法可以称为思想,我们每一个人的想法都可以称为思想。思想既表示我们未实现的想法,也可表达为我们未来的目标。

      有想法是件好事情,它寄托着我们对成功的向往。接下来,我们为自己定制一个小目标,每一次实现都代表着我们在前进、在成长,并离成功更近一步。 然后我们通过数个小目标,完成我们的远大理想。

    2. 为自己定制一个小目标

      为自己定制一个小目标很简单,可以是学会几个单词,也可以是学会一门语言的基本类型,甚至可以是理解一篇文章。
      目标越细越好,也更容易实现,它更能激发我们求知的欲望。因为目标过大,容易使我们退缩,甚至放弃。而目标过小,太容易实现,无法从中得到“成就感”。

    在这里插入图片描述
      定制目标应根据自己的实际情况做决定,定制目标的原则可以分成以下三步:

        1. 预算一周或一个月能够完成;
        2. 目标分成多部分执行,执行中如果发现某一部分走不通或太难实现,应修改这部分计划甚至重新定制目标。
        3. 目标每一部分足够细致,至少在定制过程中每一步在脑海中都能走通。

      生活中,我自己也不停的定制新的目标,执行过程中也遇到不少弯路,好在及时纠正,没有造成过多的影响。


      我从正式入职工作到现在也接近五年了,这几年也跨越了几个领域,虽算不上光辉事迹,但也作为大家的参考对象,分析一下:

    1. 刚入职时,我是一个编程小白,未使用过VS2008编译器,基本的调试都不会,迫于工作压力,第一个月硬着头皮向同事求助,在他们的帮助下,第一个月我学会了调试程序、发布程序,并且学会了分析结构和结构中的代码含义。
    2. 入职两个月,我习惯了厚脸皮,也习惯了与他们打闹嬉戏。那段时间里,我有了较大的进步,甚至能写出令他们头疼的代码。
    3. 入职三个月,我具有了独立编写新项目的能力,硬是在接下来的一个月里,使用QT写出了工作一年才能写出的项目,并且也得到了领导赏识,后来让我做了C++项目负责人,并管理四位成员的代码。
    4. 入职一年多,通过大量阅读文章和参考书籍,让我有很大的进步,并通过<STL之双向循环链表(List)的内部关系>这篇文章,正式开始业余作家之路。
    5. 入职两年多,那段时间里我接触了不同领域的代码,比如DSP、DMA,甚至FPGA代码我也会参考一下。那一年我也学习了windriver,用于Windows下的驱动编写和理解。后来开始使用Linux系统,接触Linux驱动,并在一个月后编写出了字符驱动。
    6. 入职三年多,先后编写了几个不同硬件的Linux驱动,并做到Windows、VXworks、Ubuntu的驱动思路互通,以及下位机的编写。后来,带领团队自主定制安卓系统,从最初的4.4.4版本在模拟器里执行,到后来的6.0.1版本成功移植到我们的硬件板卡中。这期间实现了许多功能,比如IOS风格定制,小程序排列在屏幕中间位置,去除各种无用部件,单屏双显,陀螺仪坐标定位,开机动画修改,framework框架修改等。
    7. 入职四年多,定制linux内核,增加硬件适配,使用设备树控制基于芯片的相关硬件等。也在GitHub发表了一些原创,比如胸章设备支持中文等。

      私下里,我一直保留着写博客的习惯,每一篇文章都记录着我的成长经历,这些经历包含着我心酸的往事、也包含着我对编程的激情。

     以前的经历从现在来看,都很轻松、随意,但也是我曾经做了好多努力才做到的,这段经历也是我曾经头疼的经历。

      最近这段时间,我自己编写的书籍也篇目过半了,我还在继续为我的以后定制着计划。

      任何大的目标都是从一个小目标,甚至是一件小事情做起,只有经历过了才明白其中的艰辛和“成就感”。

    3. 提升“绝对力量”

      绝对力量不是任何负面因素,它代表我们的编程基础。

    在这里插入图片描述
      编程基础非常重要,日常编码中,我们的每一行代码都由它们组成。刚开始,我并不看重基础知识,因为那时候靠想法编程,几乎是异想天开的想法。但经过一次又一次的打击才发现,基础知识深厚才能编写出优质代码,现在我更愿意按照基础知识编程,因为这样的代码更可靠,也更容易理解。

      后来,为了学习基础知识,我参考了大量书籍,每一本都非常认真的分析,每当遇到难点都用铅笔或水笔记录在笔记本内。

      再后来,基础知识稳定后,参考任何书籍或任何代码都非常轻松,跨平台、跨语言也可以很快上手。
      使用基础知识,可以让我轻松分析透STL中每一份完整代码,比如Vector,map,List等,也可以让我分析透甚至编写出每一个设计结构,比如二叉树、红黑树,甚至我自己编写一个多容器框架。

      2018年,我通过自己设计的内存池、红黑树、List,结合在一起做出了一个智能框架,设计它的目的是为了突破多线程中读写的限制。比如在我自己设计的内存池中缓存数据,通过红黑树平衡数据,并通过List储存或删除数据,达到数据同时读取和写入完全不用加锁。但最后还是失败了,那时候能力还是不足,只能在少量数据中做到同时读取和写入不用加锁,大量数据时,则会出现数据错误。当然,以后有时间也许我会重新设计这个结构。

      基础知识对于我们的代码来说非常重要,不能为了快速提升自己的能力而忽略基础知识,毕竟少走弯路才是最快的路径。

    4. 分析每一次“执行”

      编写程序的精髓在于每一次失败,每一次失败都会发现很多不足之处,也许是设计思路不对,也许是内存管理不到位导致,也许是算法使用不当。
      编写过程中,代码执行结果在意料之外也是常事,不能因为结果不对就否认这份代码。遇到这种情况,首先要做的就是冷静下来,然后仔细分析容易出错误的代码范围。当然,能调试的情况下,尽量调试代码,错误的出现可能是一个条件的优先级问题,也可能是数据未对齐,或是数据溢出,也或是数据访问越位。这几种情况我们通过眼睛很难观察出原因,只有通过不断的调试,一次又一次的分析数据结果来判断问题所在,调试分析也是最省时间的一种方式。

    在这里插入图片描述

      我在设计新结构时,也遇到过眼睛无法检查出的错误,比如之前写完全随机加密算法。我分析了每一个函数,每一个循环结构甚至是每一条语句,都没有检查出错误。后来调试中想起来,四个字节数据向一个四字节单位位移,如果前三个数中有负数,将会得到一个错误数值。根据这种情况,每次位移时都增加了“&”运算,确保数据的准确性。

      坦然面对每一次失败,并总结出失败的原因,是我们成长的路上不可缺少的因素。

    5. 你已进入“天才”领域

      上述2、3、4中,每一条如果你都能做到,或者都能处理好,那么恭喜你,你成功进入“天才”领域。
    在这里插入图片描述
      所谓的“天才”都是通过日积月累的练习,不断的突破自己,最终脱颖而出。

      生活中,如果你是一个仔细的人可能会发现,那些看起来笨笨的人经过一段时间的努力,都会有惊人的进步。其实,这部分人并不笨,他们只是更相信自己,更愿意通过自己的实践来证明事情的对错。因为自己努力得到的结果,比别人口头说出的结果更准确。
      几年前,我和普通人的想法一样,认为高手就应该比别人更聪明,比别人更强。但这几年努力后发现,高手不愿意与别人比较,他们更愿意与自己比较,突破自己才是正确的方向和目标。

    展开全文
  • 我做的是技术支持,在客户这里会遇到各种问题,许多都是我们产品的缺陷或者瑕疵,有些问题短时间根本找不到原因,更别说解决方案了。此时只有依赖那些曾经有经验的同事了。他们也许在其它客户那里遇到过类似的问题,...

    一人浑身是铁,能碾几颗钉!团队太重要了!


    我 做的是技术支持,在客户这里会遇到各种问题,许多都是我们产品的缺陷或者瑕疵,有些问题短时间根本找不到原因,更别说解决方案了。此时只有依赖那些曾经有 经验的同事了。他们也许在其它客户那里遇到过类似的问题,也许可以用其它的方法先解决眼前的,或者可以让总部重新出一个补丁(这个补丁以前也许是个别的, 但这次也许就是正式的了)。


    从 提出问题,群发邮件给所有相关同事和领导,到安排资源,测试,到最后发到客户手里,整个流程需要许多人的配合,一些人要通宵来解决。用户的这类需求,都是 紧急的,如果不解决就无法进行下一步。每次任务都要明确给出时间点,明确到流程中具体的人。然后不断的联系了解进度情况。拿到了补丁,还要在用户这里做测 试,有问题还要返工。


    一个人,在这种工作岗位上,真的做不了什么。我最大的成就,就是和用户的关系做的不错,他们有时能稍微容忍一下我们的误工。不过任何人的忍耐都是有限度的。

    展开全文
  • 不论是互联网公司还是移动互联网公司, “三个月就是一年”这样的时间观念已经成为了无数能人志士的共识。 和时间赛跑是每个从业者的基本素质,然而程序员应该怎样控制自己的时间呢?个人时间管理的依据就是“三个月...
  • 一、当为年 或者月 或者日 时 统计有效时间段的 每一年 每一月或者每一日 二、 计算时间差 天数
  • 毕业一年

    2012-07-08 14:37:00
    又是一年毕业季,自己在csdn中有一年时间了,也已经毕业了一年了,想想当初自己踏入学校的那个发型(当初自己头发留的挺长的),现在感觉有点变了,变得去注重形象,也看了很多的人写了毕业一年有感,觉得自己也该写...
  • 春夏秋冬又一年

    千次阅读 多人点赞 2016-12-25 21:34:26
    春夏秋冬又一年春夏秋冬,一年又一年。可总有那些岁月,可能是几个月,几天甚至一瞬间,让人刻骨铭心难以忘怀的。2016就是我生命中最难忘的一年,不是几个月、几天或者一瞬间,而是满满的一年。到国外求学,学到自己...
  • 在腾讯实习一年,我学到了什么

    千次阅读 多人点赞 2018-06-13 16:11:46
    6月底,我欣然前去,到现在刚好一年时间,马上要回学校了,我觉得该写点什么,因为这是一个很特殊的时间点,我站在学校和社会的交界处,对校园生活保持着最鲜活的记忆,对社会的法则又有了初步的认识,此刻的处境...
  • 一年。。。换了实习单位,定了毕业去向。现在回到学校准备毕业答辩了。。。乘这个最后的呆在学校的机会,把一些东西梳理一下吧。 
  • 白干一年

    千次阅读 2008-05-18 19:33:00
    白干一年,白干一年的事经常发生,好在我们年轻。年轻的时候经常发生一些不可预料的事,这些事可能会影响你暂时的心情。但是正是由于我们年轻,这样的影响很快就会过去,不会造成什么致命的影响。其实有些事情是必然...
  • 工作一年什么都不会!

    千次阅读 2012-10-15 23:08:34
    工作了一年了,什么都不会,也该给自己一个交代吧。 我07年上大学,学的计算机科学与技术。大学期间各种玩游戏,四年的课程估计上了不到100节课吧,只有大一上没挂科,其余每学期都各种挂科。大学四年什么都没...
  • 他们无法确认什么时间商品被转售的,只能靠检查并扫描产品才能确任 。 Samatha还说道, 如果在区块链上进行追踪并将所有系统进行整合,一旦商品打包完成,被送到第一家经销商,这些活动就都会被记录下来 ,企业就...
  • * 取得一年中周信息以及学期中周信息,根据指定时间取得周信息 * */ class Week{ private $term_last = 1; //代表上学期 用于可能的学期分表联动 private $term_naxt = 2; //代表下学期 用于可能的学期分表...
  • 大学生工作满一年别忘转正定级

    千次阅读 2011-09-02 12:55:57
    大学生工作满一年别忘转正定级来源: 傅尔蓉的日志 也许我不提,80%的人不知道转正定级这四个字,当然我也不知道。。。更不知道其中厉害关系。可是了解以后,我大吃一惊,这个实在是太重要了,我们必须知道...
  • 01 微信群里老李说他刚入职到新单位,请我们几个吃饭。印象中2010年毕业后他从事C++开发,薪资3k,工作一年后跳槽,薪资8k,一年后又再次跳槽,薪资翻了一番。 对于程...
  • 毕业一年

    2010-06-04 11:26:21
    挺怀念大学三年里美好时光的,在这三年里认识了很多的朋友,他们之中很多在无形之间给了我很的帮助和鼓励。 毕业一年了,工作也一年了,现在给自己这一年的工作总结一下 这一年呆在最久的是在一家软件公司,...
  • 也就是从大二起,大学的时光就基本是待在实验室了,以至于前一段时间出去面试,经理问我对大学还能记住什么,我只记得实验室,毕竟在这里待了三年,多少个凌晨回寝室的日子只有自己记得,一个人走在灯光下的背影至今...
  • 毕业一年多总结

    2016-10-18 22:36:00
    今天刚好是我生日,总感觉要写的什么东西纪念一下。 2015年6月26日福建师范大学...找了一天,感觉毕业生没有什么资本,就选择一家事业单位先工作的。干了快一年,感觉项目没啥用户量,没啥东西可以学习,就选择离职。
  • 小程序学习一年感悟

    千次阅读 2018-06-21 08:59:58
    小程序学习一年感悟 2017年1月,微信正式发布小程序,小程序逐渐进入公众的视野。不温不火的几个月,随着小程序的生态不断的扩大完善,用户数量呈爆炸式的增长,越来越多的人投入小程序的怀抱。 当时的我,...
  • 一年对于程序员来说有多长?

    千次阅读 2016-09-04 15:56:48
    聊这个话题,我表示又蛋疼了!你想看么?还没写过这么有争议的话题,有点...我们只需要选择一下单位就好了,结果是:1年(yr)=31536000000毫秒(ms)为什么聊这个话题?蛋当然不可能说疼就疼了!水是有源的,树是有根的
  • 工作一年后的感想

    千次阅读 2013-10-20 01:02:24
     大家也都知道,北京太了,虽然说大家都在北京生活工作等等,可是真要出去找个同学还是有点难度的,出去一趟来回怎么也有半天的,所以我有充足的时间去思考人生(说的了点)。说点背景吧,出差回京一周了,...
  • 新的一年 2007

    2007-01-07 22:46:00
    新的一年来到了,我在新的工作单位的工作也进入了第9个月份,终于结束了从长天离职后的迷惘期,自从离开呆了超过7年的长天,经过半年多的自我调整,还有三个月时间的失业经历,可以说已经告别了上一个十年工作状态,...
  • 工作一年之结语

    千次阅读 2005-10-30 12:18:00
    工作已经一年了,现在看看读大学时写的那些东西...几乎做了一年的短语结构处理,最近又在此基础上参与单位的一个搜索引擎项目的开发。真的感谢生活,竟给了我这样一个舞台! 和女友在一起,偶尔想起大学时代,她总会笑
  • banq大哥,请问通常java程序员做一年薪水是做少呢? 发表: 2006年06月15日 15:21
  • 但是运输公司可不傻,装货和卸货也是有很成本的,他们会限制单次运输量来控制风险,数据量太对浏览器和服务器都是很负担。业界不成文的规定是,(大多数)浏览器通常都会限制url长度在2K个字节,而(大多数)...
  • 毕业一年的感言

    千次阅读 2007-07-05 18:20:00
    毕业一年的感言 时间过的好快啊,转眼间,毕业一年了,回想起毕业离校时的情形,心里感慨万千. 还记得,毕业时一堆人顶着烈日,在楼下买书,中午休息的时间,还在一起打牌,笑声,讨价还价声汇集一片。 还记得散伙饭的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 61,030
精华内容 24,412
关键字:

一年大的时间单位是什么