java读入十六进制 请问java中有没有直接读入16进制的方法;比如c中就有一个很简单的库函数scanf("%x",&a);像a这个十六进制数,java中也有类似的方法吗,还是必须按照字符串读入,然后自己处理成int?有知情的高手透露下,谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我所知道的还是要先拿到字符串,不过有现成的函数可以parse 16进制:int value = Integer.parseInt("FF",16); 网上挺多的下面这个觉得不错public static void main(String[] args) { Scanner s = new Scanner(System.in); String i; while ((i = s.next()) != "0"){ System.out.println(decode(i)); } } public static String decode(String bytes) { ByteArrayOutputStream baos=new ByteArrayOutputStream(bytes.length()/2); String hexString= "0123456789ABCDEF"; for(int i=0;i <bytes.length();i+=2) baos.write((hexString.indexOf(bytes.charAt(i)) <<4 |hexString.indexOf(bytes.charAt(i+1)))); return new String(baos.toByteArray()); } 我所知道的好像也没有,一般是先输入得到字符串,然后再转换成16进制,Integer里面有对种进制数的转换 关于数组的一道SCJP考题。。。 如何模拟多客户并发间隔 Java中如何监控被调用的程序 写了一个Rondom随机产生不重复数 又来一道面试题 怎么设置一个java服务程序当机器重新启动的时候,它也自动运行起来? JAVA的客户端真的没前途了?发言者有分。 各位 你们操作记录集的时候是用ResultSet来返回还是用其他方法? 关于PreparedStatement在事件处理中的疑问????(新手的Jdbc数据库编程) System.out.println((char)165573); 一个关于多线程与按钮的问题 请教各位大侠swing方面的问题
int value = Integer.parseInt("FF",16);
下面这个觉得不错
public static void main(String[] args) { Scanner s = new Scanner(System.in);
String i;
while ((i = s.next()) != "0"){
System.out.println(decode(i));
}
}
public static String decode(String bytes)
{
ByteArrayOutputStream baos=new ByteArrayOutputStream(bytes.length()/2);
String hexString= "0123456789ABCDEF";
for(int i=0;i <bytes.length();i+=2)
baos.write((hexString.indexOf(bytes.charAt(i)) <<4 |hexString.indexOf(bytes.charAt(i+1))));
return new String(baos.toByteArray());
}