管理员
|
楼主#
更多
发布于:2012-09-08 08:08
![](http://www.atcpu.com/themes/extres/ithread/images/3A.gif) | | ![](http://www.atcpu.com/themes/extres/ithread/images/3C.gif) | ![](http://www.atcpu.com/themes/extres/ithread/images/3.gif) | 下面一个转换的综合例子,仔细体会一下: 复制代码public class E { public static void main(String args[]) { double n,sum=0,item=0; boolean computable=true; for(int i=0;i<args.length;i++) { try{ item=Double.parseDouble(args ); sum=sum+item; } catch(NumberFormatException e) { System.out.println("您键入了非数字字符:"+e); computable=false; } } if(computable) { n=sum/args.length; System.out.println("平均数:"+n); } int number=123456; String binaryString=Long.toBinaryString(number); System.out.println(number+"的二进制表示:"+binaryString); System.out.println(number+"的十六进制表示:"+Long.toString(number,16)); String str="1110110"; int p=0,m=0; for(int i=str.length()-1;i>=0;i--) { char c=str.charAt(i); int a=Integer.parseInt(""+c); p=p+(int)(a*Math.pow(2,m)); m++; } System.out.println(str+"的十进制表示:"+p); } }
分析:应用程序中的main方法中的参数args能接受从键盘输入的字符串.首先编译源文件: 编译通过后,输入java E 12 15 16 36 回车 这时,程序中的args[0],args[1],args[2],args[3]分别得到字符串12,15,16和36.在程序中再将这些字符串转换为数值进行计算,得到所需的结果. 上述例子输出结果为: 平均数:19.75 123456的二进制表示:11110001001000000 123456的十六进制表示:1e240 1110110的十进制表示:118
| | ![](http://www.atcpu.com/themes/extres/ithread/images/3G.gif) | | ![](http://www.atcpu.com/themes/extres/ithread/images/3I.gif) |
|