为了账号安全,请及时绑定邮箱和手机立即绑定

getBytes()方法是把字符串转成二进制吗?

如果是的话,

下一步的Integer.toHexString()不是把十进制转成十六进制吗?为什么这里能把二进制转成十六进制?

正在回答

3 回答

getBytes()方法是将一个字符串转化为一个字节数组byte[]的方法,使用的是默认的UTF-8编码表进行转换的。byte是数据类型,不是进制类型,没有说是二进制。java的byte是-128~127区间,所以说转换成十六进制没毛病。

1 回复 有任何疑惑可以回复我~
#1

壮丹田 提问者

非常感谢!
2016-12-05 回复 有任何疑惑可以回复我~
#2

律生息

纠正大神一个小错误,老师原话是默认gbk,,,
2017-01-30 回复 有任何疑惑可以回复我~
#3

东北虎Boy

getBytes()默认不是“UTF-8”?jdk中是这样说的Encodes this String into a sequence of bytes using the platform's default charset。
2017-08-06 回复 有任何疑惑可以回复我~

get bytes();方法,是将字符串转化为字节(数组)


nteger.toHexString(); //是把字节转换成了int,以十六进制的方式显示


0 回复 有任何疑惑可以回复我~

get bytes();方法,是将字符串转化为字节(数组)

例如:

String s = "IO输入输出流";

byte[] bytes1 = s.getBytes(); //这里转换成字节序列用的是项目默认的编码

。。。。。。

下一步的Integer.toHexString(); //是把字节转换成了int,以十六进制的方式显示

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

getBytes()方法是把字符串转成二进制吗?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信