Java8 基礎資料型別包裝類 Long

2021-08-14 12:21:29 字數 4871 閱讀 8713

//final修飾不可更改,每次賦值都是新建類(其中-128~127是通過longcache陣列獲取的不是新建的,所以可以使用==比較,但其他資料是通過new建立的,不能使用==直接比較大小,因為是不同的類,位址不同,需用equals)

public

final

class

long

extends

number

implements

comparable

{}

常量

//-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;

繼承

抽象類number

獲取包裝類與基本型別之間的轉換值,short、int、long、byte、float、double。

實現

comparable 介面

實現compareto(t o)方法

私有靜態內部類

//初始化是-128~127的long物件

private

static

class longcache

static final long cache = new long[-(-128) + 127 + 1];

static

}

轉成特定進製的字串

//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() {}

按無符號數值轉特定進製的字串,biginteger

//無符號數轉字串

//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) {}

字串轉long

//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轉long

//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轉基本資料型別

public

byte

bytevalue() {}

public

short

shortvalue() {}

public

intintvalue() {}

public

long

longvalue() {}

public

float

floatvalue() {}

public

double

doublevalue() {}

獲取系統屬性的值

//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) {}

比較及求和

//返回-1,1,0(-1表示y大,1表示x大)

public

intcompareto(long anotherlong) {}

//返回-1,1,0(-1表示y大,1表示x大)

public

static

intcompare(long x, long y) {}

//比較xy無符號數的大小,返回-1,1,0(-1表示y大,1表示x大)

public

static

intcompareunsigned(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) {}

無符號數運算

//將dividend和divisor轉成無符號整數相除取整

public

static

long

divideunsigned(long dividend, long divisor) {}

//將dividend和divisor轉成無符號整數相除取餘

public

static

long

remainderunsigned(long dividend, long divisor) {}

位運算

同integer

Java8 基礎資料型別包裝類 Byte

final修飾不可更改,每次賦值都是新建類 其中 128 127是直接從bytecache中獲取的不是新建的,可以使用 比較是否相同,其他數值是通過new新建的,不能使用 比較相同,因為位址不同,需用equals比較 public final class byte extends number im...

java基礎 基本資料型別包裝類

一 public static void main string args 二 public static void main string args public static void show object a 小栗子 對乙個字串中的數值進行從小到大的排序。20 78 9 7 88 36 29...

Java 8種基本型別包裝類和String的常量池

通過如下 輸出可以看出常量池數值範圍為 128 127。integer i1 129 integer i2 129 system.out.println i1 i2 t i1 i2 i1 128 i2 128 system.out.println i1 i2 t i1 i2 i1 127 i2 12...