Java8 基礎數據類型包裝類-Long

 

基礎

//final修飾不可更改,每次賦值都是新建類(其中-128~127是經過LongCache數組獲取的不是新建的,因此能夠使用==比較,但其餘數據是經過new建立的,不能使用==直接比較大小,由於是不一樣的類,地址不一樣,需用equals) public final class Long extends Number implements Comparable<Long> {}
  • 1
  • 2

常量php

//-2^63 @Native public static final long MIN_VALUE = 0x8000000000000000L; //2^63-1 @Native public static final long MAX_VALUE = 0x7fffffffffffffffL; //位數 @Native public static final int SIZE = 64; //字節數 public static final int BYTES = SIZE / Byte.SIZE;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

繼承 
抽象類Number 
獲取包裝類與基本類型之間的轉換值,short、int、long、byte、float、double。 
實現 
Comparable 接口 
實現compareTo(T o)方法 
私有靜態內部類java

//初始化是-128~127的Long對象 private static class LongCache { private LongCache(){} static final Long cache[] = new Long[-(-128) + 127 + 1]; static { for(int i = 0; i < cache.length; i++) cache[i] = new Long(i - 128); } }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

方法

轉成特定進制的字符串數組

//i:數值 //radix:須要轉換的進制(2~36 不在此範圍的按10進制處理) public static String toString(long i, int radix) {} //默認轉成10進制,當i==MIN_VALUE 直接返回數值"-9223372036854775808" public static String toString(long i) {} //調用toString(long i) public String toString() {}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

按無符號數值轉特定進制的字符串,BigIntegermarkdown

//無符號數轉字符串 //i:數值 //radix:須要轉換的進制(2~36 不在此範圍的按10進制處理) public static String toUnsignedString(long i, int radix) {} private static BigInteger toUnsignedBigInteger(long i) {} //轉化成16進制無符號字符串 public static String toHexString(long i) {} //轉化成10進制無符號字符串 public static String toUnsignedString(long i) {} //轉化成8進制無符號字符串 public static String toOctalString(long i) {} //轉化成2進制無符號字符串 public static String toBinaryString(long i) {}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

字符串轉longide

//s:數值字符串 //radix:s字符串是幾進制(radix不在2~36則拋異常) public static long parseLong(String s, int radix) throws NumberFormatException{} //字符串爲10進制 public static long parseLong(String s) throws NumberFormatException {} //無符號字符串轉long(字符串第一位爲「-」拋異常) //radix:表示s字符串是幾進制(radix不在2~36則拋異常) public static long parseUnsignedLong(String s, int radix) throws NumberFormatException {} //字符串爲10進制 public static long parseUnsignedLong(String s) throws NumberFormatException {}

字符串,long轉Longpost


   
   
   
   
   
//s:數字型字符串 //radix:表示s字符串是幾進制(radix不在2~36則拋異常) public static Long valueOf(String s, int radix) throws NumberFormatException {} //默認爲10進制 public static Long valueOf(String s) throws NumberFormatException{} //其中-128~127的Long是程序啓動時就已經保存到LongCache中,因此在這個範圍的數據是直接取的LongCache中的值 public static Long valueOf(long l) {} //nm:能夠是010(8進制)、0x10(16進制)(#開頭的在這個方法中也表示16進制) public static Long decode(String nm) throws NumberFormatException {}

Long轉基本數據類型spa


   
   
   
   
   
public byte byteValue() {} public short shortValue() {} public int intValue() {} public long longValue() {} public float floatValue() {} public double doubleValue() {}

獲取系統屬性的值.net


   
   
   
   
   
//nm:系統屬性的名稱 //val:若是爲空時的默認值 public static Long getLong(String nm, long val) {} public static Long getLong(String nm, Long val) {} //返回默認值爲null public static Long getLong(String nm) {}

比較及求和code


   
   
   
   
   
//返回-1,1,0(-1表示y大,1表示x大) public int compareTo(Long anotherLong) {} //返回-1,1,0(-1表示y大,1表示x大) public static int compare(long x, long y) {} //比較xy無符號數的大小,返回-1,1,0(-1表示y大,1表示x大) public static int compareUnsigned(long x, long y) {} public static long sum(long a, long b) {} public static long max(long a, long b) {} public static long min(long a, long b) {}

無符號數運算orm



    
    
    
    
    
//將dividend和divisor轉成無符號整數相除取整 public static long divideUnsigned(long dividend, long divisor) {} //將dividend和divisor轉成無符號整數相除取餘 public static long remainderUnsigned(long dividend, long divisor) {}

位運算 同Integer

相關文章
相關標籤/搜索