java 0x开头字符串_java中16进制字符串转化为int或者Long[0x开头]

这里以转化成Long为例子,16进制字符串可以是0x开头,也可以不是0x开头,如果是0x开头,可以使用String类中的substring(int

beginIndex) 方法进行截取。

这里的转化主要用的Long类的parseLong方法,查询一下api,parseLong有两个方法,一个参数的和两个参数的,分别如下:

static long parseLong(String s)

将 string 参数分析为有符号十进制 long。

static long parseLong(String s, int radix)

将 string 参数分析为有符号的 long,基数由第二个参数指定。

这里我们使用2个参数的方法,代码如下

package test;

public class Test {

public static void main(String[] args) {

String s = "0xa";

Long l = Long.parseLong(s.substring(2), 16);

System.out.println(l);

System.out.println(Long.toString(l, 16));

}

}

补充:Long类有3个toString方法,分别如下

String toString()

返回表示 Long 值的 String 对象。

static String toString(long i)

返回表示指定 long 的 String 对象。

static String toString(long i, int radix)

返回在使用第二个参数指定的基数时第一个参数的字符串表示形式。

上面的System.out.println(l);使用的是默认的toString()方法


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部