“又是新的一周,感觉要学的东西还有好多,加油。由于第三章和第四章内容要总结的不是很多,没太多需要拿出来说的,就整合到一个帖子好了”
操作符
操组符,什么是操作符?其实就是+-*/=&^~| 等等。也有什么一元操作符,二元操作符等等,这些都比较基础,
对于赋值操作符“=”,我们知道对于基本类型的常量赋值,是直接拷贝相同的值后,赋值到目的变量。但是对于对象的赋值,传递的是对于对象的引用。这样也就说,对于基本类型的赋值,若原来的值变了,新的赋值不会变。若是原来对象变了,新的也会变(@-@)。
另外需要注意的是逻辑操作符的“短路”特性。其实这个也是比较基础的,在对于A&&B来说,如果A为false,则不会执行B。对于A||B来说,若A为ture,则不会执行B。
移位操作,我们知道有>>,<<,>>>。>>>是java比较特殊的,意思是无符号右移,即无论为正为负,高位都补0.对于非int型,如char,byte,short等进行移位,则首先他们将自动转化为int,且得到的结果也是int型。
说到转换,要注意的是在进行类型转换的“窄化转换”时,需要注意截尾与舍入问题。比如说一个float29.7转化为int,java会直接粗暴截取,结果为29.如果需要四舍五入的话需要使用math的函数。
在java中,不管在什么类型的机器,数据所占的大小都是一样的,因此java程序员不需要考虑系统移植时的数据大小分配问题。
控制执行流程
控制执行流程,其实就是if,while,for,switch等等,这块在其他的语言里也经常使用,大家也比较熟悉。其中有点细节的地方还是需要记一下。
首先是逗号操作符。在java中,只有for循环用到了逗号操作符,即在for条件定义部分使用,按照逗号操作符按照顺序执行。
java中有一个range()方法。可以输出一个指定范围内的数据。这样虽然可以提高程序的阅读性,以及更加简单。但是这个函数的效率还是比较低,不建议大量使用。
goto语句的存在一直是褒贬不一。在java中,虽然goto是关键字,但是不能使用。但是也有其他方法可以实现类似goto的功能。那就是标签机制。使用方法是"lable: "(单独占一行)。在程序的循环运行中,可以使用break和continue带上标签,就能跳到标签的地方。