Java8 基础数据类型包装类-Long
基础
//final修饰不可更改,每次赋值都是新建类(其中-128~127是通过LongCache数组获取的不是新建的,所以可以使用==比较,但其他数据是通过new创建的,不能使用==直接比较大小,因为是不同的类,地址不同,需用equals)
public final class Long extends Number implements Comparable<Long> {}
- 1
- 2
常量
//-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)方法
私有静态内部类
//初始化是-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
按无符号数值转特定进制的字符串,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) {}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
字符串转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 int intValue() {}
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 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) {}
无符号数运算
//将dividend和divisor转成无符号整数相除取整
public static long divideUnsigned(long dividend, long divisor) {}
//将dividend和divisor转成无符号整数相除取余
public static long remainderUnsigned(long dividend, long divisor) {}
位运算
同Integer
Java8 基础数据类型包装类-Long的更多相关文章
- java基础数据类型包装类
*/ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...
- JAVA基础--常用类 String,StringBuffer, 基础数据类型包装类, Math类, Enum类
字符串相关类: String, StringBuffer String类为不可变的字符序列 String s1="hello"; String s2="hello&quo ...
- 面试题:基础数据类型 包装类 int Integer
因为在学习集合时知道集合里存放的对象都是Object类型,取出的时候需要强制类型转换为目标类型(使用泛型集合不需要),如int a = (Integer)arrayList.get(0):然后我们就会 ...
- 黑马程序员——JAVA基础之基本数据类型包装类和1.5JDK新特性装箱
------- android培训.java培训.期待与您交流! ---------- 基本数据类型包装类: byte Byte short Short int Integer char Charac ...
- Java基础---String类和基本数据类型包装类
第一讲 String类 一.概述 String是字符串的类类型,用于描述字符串事物.字符串是一个特殊的对象.特殊之处就在于: Stings= new String();和Str ...
- 黑马程序员----java基础:String与StringBuffer及基本数据类型包装类
------- android培训.java培训.期待与您交流! ---------- java中一些基础类比如String.StringBuffer和基本数据类型包装类都是非常常见且使用非常频繁的类 ...
- [五]基础数据类型之Short详解
Short 基本数据类型short 的包装类 Short 类型的对象包含一个 short 类型的字段 原文地址:[五]基础数据类型之Short详解 属性简介 值为 215-1 ...
- Java - 关于基础数据类型的形参和返回值
1. 当基础数据类型被当作形参时,最好使用其包装类,因为这样可方便调用者传参(基础数据类型亦或是其包装类都可) 2. 当基础数据类型被当作返回值时,最好使用原型,因为这样可以方便调用者接收返回值( ...
- java基础-数据类型之殇
一 前言 Java的数据类型分为2种,分别是基本数据类型和引用数据类型:java的数据类型是强数据类型,意味着每声明一个变量,其必定有与之对应的数据类型:面试常问的java8大基本数据类型其实是基本数 ...
随机推荐
- windows sh.exe 中文乱码
idea 需要重启 export LANG=zh_CN.utf-8 alias ls='ls --show-control-chars --color=auto'
- 去参加了十四届D2前端大会~
朋友喊我去一起去d2,原来一直在加班,没有想去的动力,后来业务上线,幸运的入手了别人转的一张票(也不便宜啊)- 讲了五个挑战 端侧渲染体系的重塑,从PC时代到无线时代,再到未来的IOT时代,在渲染方面 ...
- Vue.js2.5+cube-ui重构饿了么App*下载
第1章 课程导学 第2章 项目准备工作 第3章 头部组件开发 第4章 Tab 组件开发 第5章 商品页面开发 第6章 商品详情页开发 第7章 评价和商家页面开发 第8章 create-api 原理分析 ...
- vscode前端插件(我的标配)
前言 今天给我的vscode编辑汉化了一下)我也不知道为什么要汉化一下... 但是汉化后 我的vue文件木有高亮了,2333(只好一顿操作 再安装插件 还要去百度找 自己留存) 汉化后 是所有的插件都 ...
- 反向传播BP算法
前向传播模型 一般我们使用的公式是: \[ a=\frac{1}{1+\exp \left(-\left(w^{T} x+b\right)\right)} = \frac{1}{1+\exp \lef ...
- 自己搭建gitlab服务,组员不能上传代码
原因是因为 没有拉分支 直接在master 上开撸代码 ,master 分支 默认是受保护的,具体操作如下
- NLP自然语言处理
转:https://blog.csdn.net/qq_17677907/article/details/86448214 1.有哪些文本表示模型,它们各有什么优缺点? 文本表示模型是研究如何表示文 ...
- 【mybatis源码学习】mybatis的反射模块
一.重要的类和接口 org.apache.ibatis.reflection.MetaClass//对于javaBean的calss类进行反射操作的代理类(获取属性的类型,获取属性的get,set方法 ...
- ingress nginx https配置
3.https配置第一步:制作自签证书 [root@master demo]# openssl genrsa -out tls.key 2048 [root@master demo]# openssl ...
- windows开机自动执行bat脚本
一.以windows下备份sql数据库为例,开机自动执行.bat脚本 1.新建dump.bat文件,文件中的代码如下: set YYYYmmdd=%date:~0,4%%date:~5,2%%date ...