Java中将整数值转换为十六进制的最佳代码
我需要将整数值转换为十六进制。
我已经完成了一些逻辑性的工作,但我想要优化的解决方案。
编辑:抱歉,我忘记发布我不允许使用任何内置函数。
I need to convert integer value into hexadecimal.
I have done with some logical, but I want the optimized solutions.
EDIT : Sorry I forgot to post that I am not allowed to use any in-built functions.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
简单:
基本上,它的作用是创建一个新字符串,然后调用 Integer 类中名为 toHexString 的方法,该方法需要一个 int arg。
因此,将您想要更改的 int 传递到此方法中,您将得到一个带有 int 的十六进制版本的字符串。
您可以将十六进制值放入 int 类型中,但据我所知,当您进行十六进制转换时,无法从 int 类型转换为另一种 int 类型。
请记住,您返回的值是字符串,因此您不能修改该值,否则您将收到数字格式异常。
Easy:
Basically what this does is creating a new string, and then calling a method from the Integer class called toHexString which needs an int arg.
So pass the int you wanna change into this method and you'll get a String with the hexadecimal version of your int back.
You can put hexadecimal values in int types, but you cannot convert from int type to another int type, as far as i know, when you are doing hexadecimal conversions.
Remember that the value you get back is a String, so you cannot modify the value, otherwise you'll get an number format exception.
假设您出于某种原因不想使用内置的 toHexString,这里有一种非常有效的方法:
Assuming you don't want to use the built in toHexString for some reason, here's one pretty efficient way to do it:
那么接下来看看 Integer.toHexString(int) 的实现。以下代码摘自java标准库中的
Integer
类。输出:
4d
Well then have a look at the implementation of
Integer.toHexString(int)
. The following code is extracted from theInteger
class in the java standard library.Output:
4d
检查这个
Check this