• Calendar类,基本类型包装类


    Calendar类:

        Calendar类为抽象类,创建对象并非直接创建,而是通过静态方法创建。

                   西方星期的开始为周日,中国为周一。在Calendar类中,月份的表示是以0-11代表1-12月(设置month需要-1)。日期是有大小关系的,时间靠后,时间越大

        重要的字段摘要:

    static int DATE
              getset 的字段数字,指示一个月中的某天。
    static int DAY_OF_WEEK
              getset 的字段数字,指示一个星期中的某天。
    static int MILLISECOND
              getset 的字段数字,指示一秒中的毫秒。
    static int MINUTE
              getset 的字段数字,指示一小时中的分钟。

    构造方法:

    protected Calendar()
              构造一个带有默认时区和语言环境的 Calendar。
    protected Calendar(TimeZone zone, Locale aLocale)
              构造一个带有指定时区和语言环境的 Calendar。

    静态方法:

          

          Calendar 提供了一个类方法 getInstance,以获得此类型的一个通用的对象。CalendargetInstance 方法返回一个 Calendar 对象。

          获取日历类对象
                       Calendar c = Calendar.getInstance();
                       System.out.println(c.get(Calendar.DATE));

        常用方法:

           

              c.add(Calendar.DATE, 2);
                             System.out.println(c.get(Calendar.DATE));        返回给定日历字段的值
                             调用
                             get(c);
                             将日历类对象转为日期类对象
                             Date d=c.getTime();
                             System.out.println(d);
                             给日类类对象设置指定时间
                             c.set(2008, 8-1, 8);
                             get(c);

            

                获取字段
                                   public static void get(Calendar c) {
                                     获取年份
                                    int year = c.get(Calendar.YEAR);
                                    获取月份
                                    int month = c.get(Calendar.MONTH)+1;
                                    获取日
                                    int day = c.get(Calendar.DATE);
                                  获取小时
                                   int hour = c.get(Calendar.HOUR);
                                  获取分
                                   int min = c.get(Calendar.MINUTE);
                                  获取秒
                                  int sec = c.get(Calendar.SECOND);
                                 获取星期
                                  int week = c.get(Calendar.DAY_OF_WEEK);

            System.out.println("今天是" + year + "年" + month + "月" + day + "日" + hour + ":" + min + ":" + sec + "星期" + week);

             YEAR 年,MONTH 月,从0开始算起,最大11;0代表1月,11代表12月,  DATE 天,  HOUR 时,  MINUTE分, SECOND秒。

        练习:  

          package com.oracle.demo01;
          import java.text.ParseException;
          import java.util.Calendar;
          import java.util.Date;
          public class Zuoye1 {
             public static void main(String[] args) throws ParseException {
                //求出自己出生了多少天
                Calendar now=Calendar.getInstance();//现在的日期
                Calendar birthday=Calendar.getInstance();
                birthday.set(1995, 07, 06);//你的出生日期
                Long times=now.getTimeInMillis()- birthday.getTimeInMillis();//二者之间相差的毫秒数
                System.out.println("天数是"+times/(24*60*60*1000)+"天");//转化成天数
                //    求出今天距离2022年1月1日还有多少天
                Calendar birthday2=Calendar.getInstance();
                birthday2.set(2022, 01, 01);
                Long time2= birthday2.getTimeInMillis()-now.getTimeInMillis();//二者之间相差的毫秒数
               System.out.println("天数是"+time2/(24*60*60*1000)+"天");//转化成天数
              }
           }

     

     

    用自己的格式写出现在符合中国习惯的时间  
    public class Lianxi {

        public static void main(String[] args) {
            Calendar c=Calendar.getInstance();
            int year=c.get(Calendar.YEAR);
            int month=c.get(Calendar.MONTH)+1;
            int date=c.get(Calendar.DATE);
            int hour=c.get(Calendar.HOUR);
            int min=c.get(Calendar.MINUTE);
            int sec=c.get(Calendar.SECOND);
            int week=c.get(Calendar.DAY_OF_WEEK);
            String h,m,s,w=null;
            if(hour<10){
                h="0"+hour;
            }else{
                h=hour+"";
            }
            if(min<10){
                m="0"+min;
            }else{
                m=min+"";
            }
            if(sec<10){
                s="0"+sec;
            }else{
                s=sec+"";
            }
            switch(week){
            case 1:
                w="天";
                break;
            case 2:
                w="一";
                break;
            case 3:
                w="二";
                break;
            case 4:
                w="三";
                break;
            case 5:
                w="四";
                break;
            case 6:
                w="五";
                break;
            case 7:
                w="六";
                break;
                default:
                    break;
                    
            }
            System.out.println(year+"年"+month+"月"+date+"日"+h+":"+m+":"+s+"星期"+w);
        }

    }

    基本类型包装类:

          java将基本数据类型值封装成了对象,用于在基本数据和字符串之间进行转换。

          8种基本包装类:

          

           将字符串转为基本类型:

            

               int number=Integer.parseInt("2000");
                              System.out.println(number+2);
                              double money=Double.parseDouble("12.3");
                              System.out.println(money+2);

             将基本数据类型转换成字符串的3种方式:

                                           package com.oracle.demo01;
                                           public class Demo02 {
                                           public static void main(String[] args) {
                                           将基本数据类型转为字符串,第一种方式:
                                            String s1=123+"";
                                          System.out.println(s1+2);
                                          第二种方式:
                                           String s2=String.valueOf(12.3);
                                          System.out.println(s2+2);
                                         第三种方式:
                                          String s3=Integer.toString(456);
                                            System.out.println(s3+2);
                                           }
                                         }

          基本数据类型转为包装类:

                   //第一种方式:构造方法
                         Integer i1=new Integer(12);
                         Integer i2=new Integer("45");
                        //包装类中的valueOf()方法;
                        Integer i3=Integer.valueOf(78);
                        Integer i4=Integer.valueOf("36");
                        再把包装类型转为基本数据类型:用包装类的intValue()方法:
                         int ii1=i1.intValue();
                              System.out.println(ii1+2);

        自动装箱和自动拆箱:  

                自动装箱  基本数据类型转为包装类型                    自动装箱必须在byte范围内,-127-127
                   Integer i1=123; //    Integer i1=new Integer(123);
                     自动拆箱 包装类型转为基本数据类型
                int num=i1+3;      //  int num=i1.intValue()+3;
                   System.out.println(num);

  • 相关阅读:
    UIPickerView
    visual studio2010生成get方法和set方法快捷键
    vmware安装mac虚拟机键盘失灵解决方法
    运行android模拟器过大
    [SQL Utility] How to retrieve Oracle’s version info?
    【读书笔记】c# in depth (1)
    [Oracle 10g] About Recycle bin
    [Oracle Troubleshooting] Get Oracle Bounces When Data File Is Missing
    [Oracle Mgmt]Clone Oracle Database Manually
    [SQL*PLUS]Set Up Sql*Plus
  • 原文地址:https://www.cnblogs.com/maxuefeng/p/13793181.html
Copyright © 2020-2023  润新知