转载出处: http://www.iteye.com/blogs/tag/JDK

Java算法JDK 

由于Unicode兼容ASCII(0~255),因此,上面得到的Unicode就是ASCII。 
至于转换成二进制或其他进制,Java API提供了方便函数,你可以查Java的API手册。 
以字符a的ASCII为例: 

Java代码  

  1. int i = 'a';  

  2. String iBin = Integer.toBinaryString(i);//二进制  

  3. String iHex = Integer.toHexString(i);//十六进制  

  4. String iOct = Integer.toOctalString(i);//八进制  

  5. String iWoKao = Integer.toString(i,3);//三进制或任何你想要的35进制以下的进制  


DEC 

[集]java中进行二进制,八进制,十六进制,十进制间进行相互转换      
十进制转成十六进制: 
Integer.toHexString(int i) 
十进制转成八进制 
Integer.toOctalString(int i) 
十进制转成二进制 
Integer.toBinaryString(int i) 
十六进制转成十进制 
Integer.valueOf("FFFF",16).toString() 
八进制转成十进制 
Integer.valueOf("876",8).toString() 
二进制转十进制 
Integer.valueOf("0101",2).toString() 

有什么方法可以直接将2,8,16进制直接转换为10进制的吗? 
java.lang.Integer类 
parseInt(String s, int radix) 
使用第二个参数指定的基数,将字符串参数解析为有符号的整数。 
examples from jdk: 
parseInt("0", 10) returns 0 
parseInt("473", 10) returns 473 
parseInt("-0", 10) returns 0 
parseInt("-FF", 16) returns -255 
parseInt("1100110", 2) returns 102 
parseInt("2147483647", 10) returns 2147483647 
parseInt("-2147483648", 10) returns -2147483648 
parseInt("2147483648", 10) throws a NumberFormatException 
parseInt("99", throws a NumberFormatException 
parseInt("Kona", 10) throws a NumberFormatException 
parseInt("Kona", 27) returns 411787 

进制转换如何写(二,八,十六)不用算法 
Integer.toBinaryString 
Integer.toOctalString 
Integer.toHexString 

例一:

Java代码  

  1. public class Test{  

  2. public static void main(String args[]){  

  3.   

  4.    int i=100;  

  5.    String binStr=Integer.toBinaryString(i);  

  6.    String otcStr=Integer.toOctalString(i);  

  7.    String hexStr=Integer.toHexString(i);  

  8.    System.out.println(binStr);  



例二:

Java代码  

  1. public class TestStringFormat {  

  2. public static void main(String[] args) {  

  3.    if (args.length == 0) {  

  4.       System.out.println("usage: java TestStringFormat ");  

  5.       System.exit(0);  

  6.    }  

  7.   

  8.    Integer factor = Integer.valueOf(args[0]);  

  9.   

  10.    String s;  

  11.   

  12.    s = String.format("%d", factor);  

  13.    System.out.println(s);  

  14.    s = String.format("%x", factor);  

  15.    System.out.println(s);  

  16.    s = String.format("%o", factor);  

  17.    System.out.println(s);  

  18. }  

  19. }  


各种数字类型转换成字符串型: 

String s = String.valueOf( value); // 其中 value 为任意一种数字类型。 

字符串型转换成各种数字类型:

Java代码  

  1. String s = "169";  

  2. byte b = Byte.parseByte( s );  

  3. short t = Short.parseShort( s );  

  4. int i = Integer.parseInt( s );  

  5.    int i=  Integer.value("4445");

  6. long l = Long.parseLong( s );  

  7. Float f = Float.parseFloat( s );  

  8. Double d = Double.parseDouble( s );  


数字类型与数字类对象之间的转换: 

Java代码  

  1. byte b = 169;  

  2. Byte bo = new Byte( b );  

  3. b = bo.byteValue();  

  4.   

  5. short t = 169;  

  6. Short to = new Short( t );  

  7. t = to.shortValue();  

  8.   

  9. int i = 169;  

  10. b = bo.byteValue();  

  11.   

  12. short t = 169;  

  13. Short to = new Short( t );  

  14. t = to.shortValue();  

  15.   

  16. int i = 169;  

  17. Integer io = new Integer( i );  

  18. i = io.intValue();  

  19.   

  20. long l = 169;  

  21. Long lo = new Long( l );  

  22. l = lo.longValue();  

  23.   

  24. float f = 169f;  

  25. Float fo = new Float( f );  

  26. f = fo.floatValue();  

  27.   

  28. double d = 169f;  

  29. Double dObj = new Double( d );  

  30. d = dObj.doubleValue();