java学习笔记3

来源:互联网 发布:淘宝买电动车可靠吗 编辑:程序博客网 时间:2024/06/12 03:38

1、比较运算符 运算完只有两个结果true或false,如:3>2,结果就是true。


2、逻辑运算符用来连接两个Boolean类型的表达式。结果也是Boolean类型true或false 。注意异或时的运算特点,两边相同为假,两边不同为真。

&,|还有&&(短路与),||(短路或),短路的好处就是只要判断出一个结果,后面的可能就不用运算,结果就确定了。&,|除了能连接两个Boolean表达式外,还可以进行位操作,而&&,||不能,故还是有区别。

&: 无论左边的运算结果是什么,右边都参与运算。

&&:当左边是false时,右边不参加运算。(短路效果)

|: 无论左边的运算结果是什么,右边都参与运算。

||:当左边是true时,右边不参加运算。(短路效果)



3、位运算都针对的是二进制数,所以如果不是二进制数要先转化为二进制数再进行位操作。左移<<即为就是该数据乘以2的几次方,高位移除去,低位补零。右移>>低位舍去,高位补什么要看是正数还是负数,正数补0,负数补1,也即原来高位是什么就用什么补这个空位。右移几位就是除以2的几次方。>>>无符号右移:数据进行右移时,高位出现的空位,无论原高位是什么,空位都用0补。

4、实现2个整数变量的值进行互换。(不需要第三方变量)

a = 3; b =5; a = a+b; b = a- b; a = a-b; 但不建议用这种方法,因为容易书太大溢出,损失精度。

可以用下面的方法来实现交换(面试时开能会用到下面的方法,而借助第三方变量的形式主要在开发时运用)

a = a^b; 

b = a^b;

 a =a^b;

5、三元运算符 (x>1)?100:200;若if下面没有大括号,则if只能控制下面离的最近的单条语句。

6、if(x>1);  相当于if(x>1){ ; }

7、main函数里的变量都是局部变量,但是变量都有作用的区间范围,若超出了定义变量的括号范围,这个变量已经不存在了。局部代码块的好处就是当这个变量不再使用时就及时释放掉空间。没有用就要及时消失。



if (){}else if{}是一个语句,也即只能执行一种情况。

7、switch语句是选择语句。switch(x)里面的x只能取byte,short,int char类型。而且default情况总要所有case都过一遍后,最后才会执行,靠近switch语句结束处大括号的那一个case可以不用写break,因为有大括号}也有结束的作用。符合x值的case语句只是指令开始执行的入口,必须碰到break或者},switch语句才会结束。

if和switch的区别如下所示:


8、for循环的使用格式



9、换行符\n可以在任意位置(包括在字符串中即“hello\nworld”,打印出来hello和world也是换了行的)实现换行,而println中的ln只实现在句末换行。而\t为制表符,作用就是为了使表格对齐。\t的作用如下图所示:在一句指令的末尾加   '\t'  或者 " \t"相当于把这个输出打包成一个表格,在自己的格子里都自动左对齐。


10、常见的转义符如下图:其中dos下\n就是回车,但在window下是 \r\n,若想在字符串中显示双引号“”,必须写成\"……\"的形式才能把双引号" "正常显示出来。若想在输出字符串中单纯的显示出反斜杠\而不带有别的含义,就必须写成 \\ 的形式才能显示出一个反斜杠 \ 。


11、经典图案程序打印分析:其实是两个图案拼凑出来的,一个是上三角‘--’,一个是下三角‘*’。


12、break和continue需要注意的几点:



所谓的通过标号来完成也就是给里层和外层的for循环分别起名字,里层的break加指定的名字来结束外层的循环,continue也可以和break一样后面加名字跳出指定的循环。如下图所示:


break直接跳出循环,而continue只是跳出循环中的当前一次循环,也即结束本次循环,继续下次循环。



0 0
原创粉丝点击