通过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类详解
				
        
 
            
        基础教程推荐
- springboot下使用shiro自定义filter的个人经验分享 2024-02-27
 - Java编写实现窗体程序显示日历 2023-01-02
 - 运用El表达式截取字符串/获取list的长度实例 2023-08-01
 - 使用Java和WebSocket实现网页聊天室实例代码 2024-02-25
 - JavaWeb 实现验证码功能(demo) 2024-04-14
 - 深入理解约瑟夫环的数学优化方法 2024-03-07
 - Java中EnvironmentAware 接口的作用 2023-01-23
 - 是否适合从javabean类更新数据库? 2023-11-04
 - Java+mysql实现学籍管理系统 2023-03-16
 - JSP 动态树的实现 2023-12-17
 
    	
    	
    	
    	
    	
    	
    	
    	
						
						
						
						
						
				
				
				
				