黑马程序员技术交流社区
标题:
关于代码编写的小疑问
[打印本页]
作者:
郭利超
时间:
2013-3-16 16:09
标题:
关于代码编写的小疑问
本帖最后由 ♂超√/kun 于 2013-3-16 16:28 编辑
<P> //优化后程序 十进制转换 二进制 八进制 十六进制
class Cainiao03
{
public static void main(String[] args)
{
tobin(6);
toba(60);
tohex(60);</P>
<P> }
//十进制-->二进制
public static void tobin(int num)
{
trans(num,1,1);
}
//十进制 转 8进制
public static void toba(int num)
{
trans(num,7,3);
}
//十进制 转16进制
public static void tohex(int num)
{
trans(num,15,4);
}
public static void trans(int num , int base , int offset)
// &上的基数 位移几位
{
if(num==0)
{
System.out.println(0);
return ;
}
char[] chs = {'0','1','2','3',
'4','5','6','7',
'8','9','A','B',
'C','D','E','F'};
char[] arr = new char[32];
int pos = arr.length;
while(num!=0)
{
int temp = num & base;
arr[--pos] = chs[temp];
num = num >>> offset;
}
for(int x=pos; x<arr.length; x++)
{
System.out.print(arr[x]);
}
System.out.print('\n');
}
}</P>
复制代码
问题是 为什么要定义 char类型 别的行不行 最后一句代码 System.out.print('\n'); 起到了什么作用?
总结 因为字符所以用CHAR 是吧! 没有别的可以替代了! \n 是打印完换行
作者:
施祖喜
时间:
2013-3-16 16:17
System.out.print('\n');
起到了换行的作用。。 字符用char定义
作者:
爪哇攻城狮
时间:
2013-3-16 16:21
定义的char型数组、
老师这里是用的叫“查表法”吧。
单个的0123456789ABCDEF 字符 。用char定义。
System.out.print('\n');
复制代码
“换行”的作用。
“\n”
“\r\n”
都是换行
作者:
何仕映
时间:
2013-3-16 16:24
1、你好。在你的这个程序中,把数转换成其他进制的数,是通过查表的方式进行的。把要转换的数的每一位与进制数相与,将所得的结果再到先前定义的表中去查找,将对应的字符在存进定义好的数组里。等全部转化以后,再把这个数组里的字符输出,完成了对应的转化。既然每次取出来的都是一个字符,肯定要定义成字符变量啊。
2、 System.out.print('\n');这一句的功能是换行。\n是转义字符,是换行。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2