cari
RumahJavajavaTutorialJava数据类型Long的详细分析

Java数据类型Long的详细分析

Sep 26, 2018 pm 02:17 PM
java

 本篇文章给大家带来的内容是关于Java数据类型Long的详细分析,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

Long

Long 基本数据类型long  的包装类

Long 类型的对象包含一个 long类型的字段

image_5bab1d94_4380[4]

属性简介

值为  263-1 的常量,它表示 long 类型能够表示的最大值 @Native public static final long MAX_VALUE = 0x7fffffffffffffffL;
值为 -263 的常量,它表示 long 类型能够表示的最小值 @Native public static final long MIN_VALUE = 0x8000000000000000L;
用来以二进制补码形式表示 long 值的比特位数 @Native public static final int SIZE = 64;
二进制补码形式表示 long 值的字节数 public static final int BYTES = SIZE / Byte.SIZE;
表示基本类型 long 的 Class 实例 public static final Classad84a9ca022f0fe586e370cd3963bff2     TYPE = (Classad84a9ca022f0fe586e370cd3963bff2) Class.getPrimitiveClass("long");

构造方法

构造方法都是新创建对象,分配新的空间

字符串形式构造,默认以十进制的字符串形式解析

包装类
使用对应的基本数据类型long 构造
image_5bab1d94_3c2e[4]

包装类

使用对应的基本数据类型long 的字符串String形式构造

image_5bab1d94_7677[4]

常用方法

比较

static int compare(long x, long y)

静态方法

0   x == y;

-1   x 29cf66491862bae5cfd9ed73c5d16f0d y

image_5bab1d94_44ce[4]

int compareTo(Long anotherLong)
实例方法
两个对象进行比较   ,实际比较两个对象的value值
根本还是通过调用 static int compare(long x, long y)
image_5bab1d94_63a5[4]
static int compareUnsigned(long x, long y)
静态方法
两个基本类型int 当做无符号数进行比较   通过+MIN_VALUE进行转换
根本还是调用static int compare(long x, long y)

image_5bab1d94_253d[4]

parseXXX系列

字符串解析 为 基本类型

不需要对象,所以都是静态方法

image_5bab1d94_130b[4]

static long parseLong(String s, int radix)

静态方法
使用第二个参数指定的基数(进制),将字符串参数解析为有符号的整数
除了第一个字符可以是用来表示负值的 ASCII 减号 '-' ('\u002D’),加号'+' ('\u002B')  外
字符串中的字符必须都是指定基数的数字

static long parseLong(String s)

静态方法
static long parseLong(String s, int radix) 的十进制简化形式
image_5bab1d94_4b14[4]

static long parseUnsignedLong(String s, int radix)

静态方法

使用第二个参数指定的基数(进制),将字符串参数解析为无符号的整数

除了第一个字符可以是用来表示正值的 ASCII  加号'+' ('\u002B')  外

字符串中的字符必须都是指定基数的数字

static long parseUnsignedLong(String s)

静态方法
static long parseUnsignedLong(String s, int radix)的十进制简化形式

image_5bab1d94_1311[4]

valueOf系列

把基本基本类型 包装为对象

用来创建获得对象,所以无需对象,全都是静态方法

image_5bab1d94_7ef1[4]

VaueOf系列都有对应的缓存区, 缓存区范围内对象为同一个 

缓冲区为静态内部类中的数组

image_5bab1d94_408d[4]

缓冲范围为  -128~127

static Long valueOf(long l)

静态方法
读取缓存中的对象或者创建新的对象
image_5bab1d94_515c[4]

static Integer valueOf(String s, int radix)

静态方法
根据指定的基数(进制)解析字符串
根本是调用static Long valueOf(long l)
image_5bab1d94_57b7[4]

static Long valueOf(String s)


静态方法
十进制 解析字符串
static Long valueOf(String s, int radix) 的十进制简化形式
根本是调用static   Long valueOf(long l)

image_5bab1d94_2d40[4]

decode

接受通过以下语法给出的十进制、十六进制和八进制数字

Sign是可选的 表示符号位

再往后 DecimalNumeral  就是指定基数的字符序列的正值

不能是负数,想要设置负数请仅仅使用符号位 也就是+-1  --1这种肯定不行

Sign DecimalNumeral

Sign 0x HexDigits

Sign 0X HexDigits

Sign # HexDigits

Sign 0 OctalDigits

Sign:

-

与Integer中的decode方法一样
代码也都一模一样,除了Integer换成了Long

XXXValue系列

获取对象的某种基本类型的值

需要获取对象的所以必然全部都是实例方法

image_5bab1d94_7a0c[4]

强制类型转换的形式,将内部的long 值转换为指定的类型

byte byteValue()


image_5bab1d94_55df[4]
short shortValue()
image_5bab1d94_189f[4]
int intValue()
image_5bab1d94_1aa5[4]
long longValue()
image_5bab1d94_3e2f[4]
float floatValue()
image_5bab1d94_4e72[4]
double doubleValue()
image_5bab1d94_5f3[4]


toUnsignedString 系列   toString  toXXXString  系列

无符号  字符串相关的转换

static String toString(long i, int radix)

静态方法

根据指定基数,int    返回一个String 

如果基数小于 Character.MIN_RADIX 或者大于 Character.MAX_RADIX,默认设置为基数 10

如果是负数 第一个符号位负号 '-' ('\u002D'),如果不是负数,将不会有符号

剩下的字符表示第一个参数的大小

如果大小是0  由字符  '0' ('\u0030') 表示,否则用来表示数值的第一个字符不会是0

用以下 ASCII 字符作为数字:

0123456789abcdefghijklmnopqrstuvwxyz

其范围是从 '\u0030' 到 '\u0039' 和从 '\u0061' 到 '\u007A'

如果 radix 为 N, 则按照所示顺序,使用这些字符中的前 N 个作为其数字

因此,十六进制(基数为 16)的数字是 0123456789abcdef

static String toString(long i)

静态方法

toString(long i, int radix)的十进制简化形式

同toString(long i, 10)

String toString()

实例方法

等同于把对象的value直接调用  toString(long i)

image_5bab1d94_5bbf[4]

static String toBinaryString(long i)

静态方法

以二进制(基数 2)无符号整数形式返回一个整数参数的字符串表示形式

image_5bab1d94_5e4[4]

static String toOctalString(long i)

静态方法

以八进制(基数 8)无符号整数形式返回一个整数参数的字符串表示形式

image_5bab1d94_638c[4]

static String toHexString(long i)

静态方法

以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式

image_5bab1d94_5a3b[4]

static String toUnsignedString(long i, int radix)
静态方法

在第二个参数指定的基数中,返回第一个参数的字符串表示的无符号整数值

如果基数不在Character.MIN_RADIX 和 Character.MAX_RADIX的范围内, 默认基数为10

如果大小是0,由字符零表示   '0' ('\u0030')

否则第一个字符不会是 0 

基数和表示数字的字符的用法和表现和toString中一样

static String toUnsignedString(long i)
静态方法
toUnsignedString(long i, int radix) 十进制的简化形式  同toUnsignedString(int, 10)
image_5bab1d94_1b69[4]

equals


Long重写了equals方法
比较的是两个Long对象中内部的 long value值
image_5bab1d94_2b9f[4]

hashCode


static int hashCode(long value)
静态方法
返回某个long 数值的hashcode
image_5bab1d94_756a[4]
int hashCode()
实例方法
获取某个Long对象的hashcode
等同于static int hashCode(long value) 调用 内部value值

image_5bab1d94_7b7[4]

getXXX系列 

获取系统属性的数值

static Long getLong(String nm, Long val)

确定具有指定名称的系统属性的整数值

第一个参数被视为系统属性的名称

通过 System.getProperty(java.lang.String) 方法可以访问系统属性

第二个参数是默认值

如果未具有指定名称的属性,或者属性的数字格式不正确,或者指定名称为空或 null

则返回一个表示第二个参数的值的 Integer 对象

image_5bab1d94_24f2[4]
static Long getLong(String nm, Long val)
static Long getLong(String nm, Long val)  的基本类型形式
image_5bab1d94_274b[4]
static Long getLong(String nm)

image_5bab1d94_4ed9[4]

其他方法

最高1  位  最低1   位
前置零个数 和 后置0个数

highestOneBit(long) / lowestOneBit(long)

numberOfLeadingZeros(long) / numberOfTrailingZeros(long)

位数
循环左移/循环右移
按位翻转 按照字节翻转


bitCount(long)  二进制补码表示形式中的 1 位的数量

rotateLeft(long, int)  / rotateRight(long, int)

reverse(long)   /  reverseBytes(long)

取整
求余

pideUnsigned(long, long)

remainderUnsigned(long, long)

与Integer 一样, Long也有提供上述几个方法

语义一致

static int signum(long i)
静态方法
返回指定 int 值的符号函数
(如果指定值为负,则返回 -1;如果指定值为零,则返回 0;如果指定的值为正,则返回 1 )
image_5bab1d95_5650[4]
static long sum(long a, long b)
静态方法
求和
image_5bab1d95_67b3[4]
static long max(long a, long b)
静态方法
最大值
image_5bab1d95_15a2[4]
static long min(long a, long b)
静态方法
最小值
image_5bab1d95_193b[4]

Long 与Integer 是数值类型中使用频率最高的两个,也是提供支持方法最多的两个

他们提供出来的方法功能也是高度的相似

Atas ialah kandungan terperinci Java数据类型Long的详细分析. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan?Bagaimanakah saya menggunakan Maven atau Gradle untuk Pengurusan Projek Java Lanjutan, Membina Automasi, dan Resolusi Ketergantungan?Mar 17, 2025 pm 05:46 PM

Artikel ini membincangkan menggunakan Maven dan Gradle untuk Pengurusan Projek Java, membina automasi, dan resolusi pergantungan, membandingkan pendekatan dan strategi pengoptimuman mereka.

Bagaimanakah saya membuat dan menggunakan perpustakaan Java Custom (fail JAR) dengan pengurusan versi dan pergantungan yang betul?Bagaimanakah saya membuat dan menggunakan perpustakaan Java Custom (fail JAR) dengan pengurusan versi dan pergantungan yang betul?Mar 17, 2025 pm 05:45 PM

Artikel ini membincangkan membuat dan menggunakan perpustakaan Java tersuai (fail balang) dengan pengurusan versi dan pergantungan yang betul, menggunakan alat seperti Maven dan Gradle.

Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu?Bagaimanakah saya melaksanakan caching pelbagai peringkat dalam aplikasi java menggunakan perpustakaan seperti kafein atau cache jambu?Mar 17, 2025 pm 05:44 PM

Artikel ini membincangkan pelaksanaan caching pelbagai peringkat di Java menggunakan kafein dan cache jambu untuk meningkatkan prestasi aplikasi. Ia meliputi persediaan, integrasi, dan faedah prestasi, bersama -sama dengan Pengurusan Dasar Konfigurasi dan Pengusiran PRA Terbaik

Bagaimanakah saya boleh menggunakan JPA (Java Constence API) untuk pemetaan objek-objek dengan ciri-ciri canggih seperti caching dan malas malas?Bagaimanakah saya boleh menggunakan JPA (Java Constence API) untuk pemetaan objek-objek dengan ciri-ciri canggih seperti caching dan malas malas?Mar 17, 2025 pm 05:43 PM

Artikel ini membincangkan menggunakan JPA untuk pemetaan objek-relasi dengan ciri-ciri canggih seperti caching dan pemuatan malas. Ia meliputi persediaan, pemetaan entiti, dan amalan terbaik untuk mengoptimumkan prestasi sambil menonjolkan potensi perangkap. [159 aksara]

Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka?Bagaimanakah mekanisme kelas muatan Java berfungsi, termasuk kelas yang berbeza dan model delegasi mereka?Mar 17, 2025 pm 05:35 PM

Kelas kelas Java melibatkan pemuatan, menghubungkan, dan memulakan kelas menggunakan sistem hierarki dengan bootstrap, lanjutan, dan pemuat kelas aplikasi. Model delegasi induk memastikan kelas teras dimuatkan dahulu, yang mempengaruhi LOA kelas tersuai

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft