java-2021-01-26

1、将十进制转换成二进制,如果通过java编写语句进行转换的话,方法如下:

2、为什么负数的最高位都是1?因为求取一个数的负数时是需要取反再加1的,显然,对这个约束都有一定的了解,但重要的应该是这个约束所得到的一些结论,譬如位宽为8的时候,任意一个二进制数值0b 0000 1111,它经过取反以后就得到0b 1111 0000,那么它的负数就是再加一个1,即0b 1111 0001,其它数的求出来的负数也依次类推。

3、在java中,小数默认为double,所以如果定义了一个float类型的变量,但是没有加上类型指示标志,即float x = 2.3,就会出现“损失精度”的错误警告,正确写法应该为float x = 2.3f。

4、对负数取模运算,譬如-1%5,结果为-1,如果再换一下,即1%-5,结果是1。

5、字符串与字符串(或不同数据)之间使用了加号时,加号的含义不再是运算而是连接,譬如"str"+"ing",结果就是变成一个字符串"string",如果再变换一下,例如"5+5="+5+5,结果会是什么呢?如果一开始理不清楚,那么就先将字符串"5+5="缩略成"*",原题变成"*"+5+5,然后再遵循从左往右结合的顺序,那就是先得到"*5"+5,这时再算下一步,那么结果就是"*55",然后再把*替换回来,因此最终结果就是"5+5=55",如果再再变化一下,"5+5="+(5+5),这个的结果应该易看出来,先应该是"5+5="+10,然后最终结果就是"5+5=10",那么如果在使用字符串拼接就可以方便地在一条语句中打印多个值,例如有a、b两个变量,但是只用一条打印语句,为了两个变量的值都能分别显示(不是说不能用空格取代等其它办法,只是为了增加直观性),那么就可以写成a+","+b这种形式,如果是只有一个变量值a,那就直接写成"a="+a即可。

6、System.out.println()与System.out.print()这两者的区别在于前者会在打印内容的末尾自动加上换行,表现形式上可易看出,前者相比后者多了ln。

7、一个char类型为两字节,而一个汉字也是两字节,所以写成char x = '博',这种情况下char类型是能存得下的。

posted @ 2021-02-18 20:24  migui  阅读(56)  评论(0编辑  收藏  举报