「Long is a class. long is a primitive. That means Long can be null, where long can't. Long can go anywhere that takes an Object, long can't (since it isn't a class it doesn't derive from Object). java
Java will usually translate a Long into a long automatically (and vice versa), but won't for nulls (since a long can't be a long), and you need to use the Long version when you need to pass a class (such as in a generic declaration).this
」spa
Java的數據類型分兩種:
1.基本類型:long,int,byte,float,double,char
2. 對象類型(類): Long,Integer,Byte,Float,Double,Char,String,其它一切java提供的,或者你本身建立的類。code
其中Long又叫 long的包裝類。而Byte和Float也相似,通常包裝類的名字首寫是數值名的大寫開頭。對象
什麼叫包裝類?好比咱們也能夠定義一個類:blog
這樣這個Long就是一個包裝類,他包裝了一個整數值,而後能夠在裏面寫一些運算符重載的方法使它支持某些運算。這個時候能夠賦值:
Long it=new Long(10);
如今變量it就是一個對象,不是一個數字。內存
Long 是長整型,在怎麼長自己也是整型,12.10的整形部分是12,固然結果是12, ci
byte: 八位整數 -128——127,可用來節省內存的使用。
short: 16位整數 -32768——32,767,也比較省內存。
int: 32位整數 -2,147,483,648——2,147,483,647,通常來講整數都夠用了
long: 64位整數 -9,223,372,036,854,775,808—— 9,223,372,036,854,775,807,通常不須要用
float: 32位浮點,若是浮點須要節省內存用這個。
Double: 64位浮點,通常非整數浮點可用這個。it
可是要記住float和double都不是精確的,若是要儲存錢一類的必須精確的,用java.math.BigDecimal io