java基礎之封裝類,Math,日期格式處理

來源:互聯網
上載者:User

標籤:訪問   基本   cep   logs   ring   eva   void   oat   boolean   

封裝類,Math,日期格式處理
  • 封裝類
  • Math:random(),round()
  • 日期格式處理

Java提倡的是思想是一切皆對象,但是我們基礎資料型別 (Elementary Data Type)不是一個類,也就是說 沒有對象概念,和Java提倡的思想相違背,為瞭解決這個矛盾,Java裡面提供8種基礎資料型別 (Elementary Data Type)的封裝類。

序號

基礎資料型別 (Elementary Data Type)

封裝類

1

int

Integer

2

char

Character

3

float

Float

4

long

Long

5

short

Short

6

double

Double

7

boolean

Boolean

8

byte

Byte


    public static void main(String[] args) {        int i=10;        boolean flag=false;        double j=10.00;        Integer k=new Integer(i);//基礎資料型別 (Elementary Data Type)轉換成封裝類對象(裝箱)        Boolean f=new Boolean(flag);        Double d=new Double(j);        int x=k.intValue();//封裝類轉換成基礎資料型別 (Elementary Data Type)叫拆箱        boolean bo=f.booleanValue();        double de=d.doubleValue();//進行拆箱    }

 


封裝類除瞭解決Java提倡的思想之外呢,還可以進行什麼操作呢?

  •          ·裝箱:將基礎資料型別 (Elementary Data Type)轉換成封裝類對象
  •          ·拆箱:將封裝類對象轉換成基礎資料型別 (Elementary Data Type)
  •          ·將字串轉換成基礎資料型別 (Elementary Data Type)

以上的裝箱和拆箱操作都是手動進行的,在JDK1.5之後,裝箱和拆箱的操作可以自動進行。

public static void main(String[] args) {        int i=10;        boolean flag=false;        double j=10.00;        Integer k=i;//基礎資料型別 (Elementary Data Type)轉換成封裝類對象(裝箱)        Boolean f=flag;        Double d=j;        int x=k;//封裝類轉換成基礎資料型別 (Elementary Data Type)叫拆箱        boolean bo=f;        double de=d;//進行拆箱    }
//將字串轉換成基礎資料型別 (Elementary Data Type)    private void mian() {        // TODO Auto-generated method stub        String s="1122";        int x=Integer.parseInt(s);        int y=Integer.valueOf(s);    }

開發的時候一定要注意,在轉換的時候,注意異常的出現,比如說我們將字串“aabb”轉換成int類型的話,那麼一定會報錯(NumberFormatException)。

2Math

Math類是定義了一系列的數學運算方法,是使用static修飾的方法,表示可以通過Math類直接存取。我們在開發中一般只需要關注兩個:

  •          ·四捨五入:
  •          ·取得隨機數
    public static void main(String[] args) {        double d=100.53;        int i = (int)Math.round(d);        System.out.println(i);    }

另外就是隨機數:使用random()取隨機數取出來的是0-1小數,是大於等於0,小於1。

範例:取1-10之間的隨機數

    public static void main(String[] args) {        for (int i = 1; i < 10; i++) {            double d=Math.random();//取0到1之間的隨機數            int x=(int) Math.round(d*10);            System.out.println(x+"  ");        }    }
3日期格式的處理

我們主要講到的是Date類,是java.util包中的Date類,另外Calendar(日曆)類,而後是日期格式轉換類(DateFormat)。

 Date:Date類中的大部分的方法都已經過時,一般只會用到構造方法取得系統當前的時間。

         ·public long getTime():取得自1970年1月1號開始的毫秒數

public static void main(String[] args) {        Date date = new Date();        System.out.println(date);        System.out.println(date.getTime());    }

如果我們現在要取得Date對象的準確的年月日時分秒毫秒呢?我們知道Date類中的方法已經過時,那麼我們現在使用Calendar日曆類完成操作。此類有大量的操作方法:

         ·public abstract void add(int field,  int amount):給指定的日曆欄位添加指定的值

         ·public int get(int field):取得指定日曆欄位的值

         ·public final Date getTime():轉換成Date類型

         ·public void set(int field,  int value):指定的日曆欄位設定指定的值

         ·public final void setTime(Date date):將Date類型設定到Calendar對象中

範例:取得準確年月日時分秒毫秒

public static void main(String[] args) {        Date date = new Date();        System.out.println(date);        System.out.println(date.getTime());        Calendar ca= new GregorianCalendar();//取得日曆對象(也可以取得系統目前時間)        System.out.println("年"+ca.get(Calendar.YEAR));        System.out.println("月"+ca.get(Calendar.MONTH)+1);//0到11個月        System.out.println("日"+ca.get(Calendar.DAY_OF_MONTH));        System.out.println("時"+ca.get(Calendar.HOUR_OF_DAY));        System.out.println("分"+ca.get(Calendar.MINUTE));        System.out.println("秒"+ca.get(Calendar.SECOND));        System.out.println("毫秒"+ca.get(Calendar.MILLISECOND));        System.out.println("今年第幾周"+ca.get(Calendar.WEEK_OF_YEAR));        System.out.println("這個月第幾周:"+ca.get(Calendar.WEEK_OF_MONTH));    }
3.日期格式的轉換

在Java中使用DateFormat進行日期格式的轉換,此類也是一個抽象類別,執行個體化的時候必須依靠子類:SimpleDateFormat,常用的構造方法:

         ·public SimpleDateFormat(String pattern):參數表示的日期的轉換規則

規則:y年,M月,d日,H小時,m分鐘,s秒,S毫秒

DateFormat常用的方法:

         ·public final String format(Date date):將Date對象轉換成字串

         ·public Date parse(String source) throws ParseException:將字串轉換成日期

 

範例:將Date類型轉換成字串

public static void main(String[] args) {        Date date = new Date();        DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");//定義轉換格式                String s = df.format(date);//進行轉換                System.out.println(s);            }}

範例:將字串轉換成日期

String s = "1998/10-10";        DateFormat df = new SimpleDateFormat("yyyy/MM-dd");//定義轉換格式        try {            Date date = df.parse(s);//將字串轉化成日期            System.out.println(date);        } catch (Exception e) {            e.printStackTrace();        }

在開發過程中,一定要注意SimpleDateFormat定義的轉換規則,如果轉換規則定義錯誤,那麼日期轉換異常沒法避免

小結

  ·使用封裝類將字串轉換成基礎資料型別 (Elementary Data Type)

       ·會使用Math中的random()和round()方法

       ·學會使用Calendar類中的一些方法

       ·學會使用DateFormat進行日期格式的轉換

java基礎之封裝類,Math,日期格式處理

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.