通过JDK源码角度分析Long类详解
通过JDK源码角度分析Long类详解
介绍Long类
Long类是java.lang包下的一个类,它是用来表示64位长整型数字的。在实际开发中,经常使用Long类来处理需要存储大整数的应用场景。
Long类的声明
public final class Long extends Number implements Comparable<Long> {
//...
}
从上面的代码中可以看出,Long类是继承Number类的,并实现了Comparable接口。
Long类的属性
属性名称 | 类型 | 描述 |
---|---|---|
MIN_VALUE | long | 常量,Long类型最小值 |
MAX_VALUE | long | 常量,Long类型最大值 |
TYPE | Class |
常量,Long类的Class对象 |
Long类的方法
方法名称 | 返回值 | 描述 |
---|---|---|
bitCount() | int | 返回该长整型值在二进制下的1的个数 |
byteValue() | byte | 将长整型的值转换成byte值 |
compare(long x, long y) | int | 比较x和y的大小,如果x>y,返回1,如果x<y,返回-1,如果x==y,返回0 |
compareUnsigned(long x, long y) | int | 当作为无符号整数比较时,比较x和y的大小 |
decode(String nm) | Long | 将String类型的参数解析为Long类型的值 |
doubleValue() | double | 将Long类型转换为double类型 |
equals(Object obj) | boolean | 比较Long对象是否相等 |
floatValue() | float | 将Long类型转换为float类型 |
hashCode() | int | 返回Long对象的哈希码值 |
intValue() | int | 将Long类型转换为int类型 |
longValue() | long | 返回Long类型的值 |
parseLong(String s) | long | 将String类型的参数解析为长整型的值 |
reverse(long i) | long | 将该长整型值的二进制位进行反转 |
reverseBytes(long i) | long | 将该长整型值的字节序进行反转 |
shortValue() | short | 将该长整型值转换成short类型 |
signum(long i) | int | 返回该长整型的符号 |
通过示例说明Long类的使用
下面我们通过两个示例展示Long类的应用。
示例1:将Long类型的数字转为二进制字符串
long num = 123456L;
String binaryStr =Long.toBinaryString(num);
System.out.println(binaryStr);
在这个示例中,我们定义了一个long类型的变量num,将其赋值为123456。之后,我们通过Long类的toBinaryString方法,将num转换为二进制字符串,并将其打印出来。使用这个方法可以很方便的将数字进行二进制化处理。
示例2:将二进制字符串转为Long类型的数字
String binaryStr = "0011100010010000001";
long num = Long.parseLong(binaryStr, 2);
System.out.println(num);
在这个示例中,我们定义了一个String类型的变量binaryStr,将其赋值为0011100010010000001(也就是123456的二进制字符串),之后,我们通过Long类的parseLong方法,将binaryStr转换为long类型的数字,并将其打印出来。使用这个方法可以很方便的将二进制字符串转化为数字。
总结
本篇文章从JDK源码角度详细讲解了Long类的使用,包括了Long类的声明、属性、方法以及通过两个示例来说明Long类的实际应用。掌握了Long类的使用,可以更好的进行大整数的处理。
本文标题为:通过JDK源码角度分析Long类详解
基础教程推荐
- Java 语言守护线程 Daemon Thread使用示例详解 2023-06-17
- zookeeper集群搭建超详细过程 2023-01-29
- java – 无法使用wget在CentOS机器上安装oracle jdk 2023-11-10
- SpringBoot2底层注解@Configuration配置类详解 2022-11-20
- Spring+Vue整合UEditor富文本实现图片附件上传的方法 2024-03-19
- java – MySQL群集中的XA事务支持? 2023-11-09
- Spring AOP代理详细介绍 2023-08-01
- jsp中变量及方法的声明与使用 2023-08-03
- Java中String类常用类型实例总结 2023-08-07
- 基于SqlSessionFactory的openSession方法使用 2023-08-08