JAVA从入门到放弃(2)从面向过程转到面向对象

J

其实题目并没有什么卵用,这篇笔记中我想总结一下JAVA的非面向对象部分的内容,前面那篇笔记大体上说明了JAVA与C语言在整体上的不同,这里将讨论上篇中忽略的细节问题

首先还是要说一下JAVA的操作符,JAVA操作符分为一元运算符,二元运算符,三元运算符,这和大多数编程语言类似。操作符作用于操作数使其生成一个新的值,但有些操作符可能会改变操作数本身,这样的影响被称之为副作用,我们有的时候需要利用操作符生成新的值,而有的时候则要利用操作符的副作用

先来列举一下JAVA的运算符(+ – * / = ++ — > < >= <= && || ! ?: == != += -= *= /=)这些用法都和C类似就不罗嗦了,其中+既可以用来做数字的加法,也可以用来连接两个字符串

下面主要想说一下JAVA中的类型转换,在JAVA中变量会自动由低级变量转化为高级变量,如果需要往低级变量转化则需要进行强制变量转换,同样的如果将浮点数转化为整形会触发一个截尾。所谓的截尾就是把小数点后的内容全部舍弃,如果想要四舍五入就要使用java.lang.Math包里的round方法,同时JAVA里并没有sizeof,因为JAVA不需要考虑移植性问题,因此就舍弃了sizeof运算符。哦对至于如何强制类型转换,这个和C语言一样

在while if for等需要逻辑表达式的地方与C语言也略有不同,在C语言中逻辑表达式用0表示假非0表示真。但在java里并不是这样,因为变量不能自动从高类型转到低类型,因此逻辑表达式只能接受boolean值,即true false。

然后我们再讨论一下JAVA中的return,return在JAVA中有两个用途,一个是返回什么值,另一个用途是终止当前的方法,不过在void方法里截尾没有return语句,编译器会在结尾加上一个隐式的return,这里的return只表示结束当前方法

break和continue的用法和C语言相同,这里我们要讨论一个特别惹人嫌的关键词goto

(正儿八经的另起一行)

虽然goto在C语言和JAVA里都是一个保留字,但在JAVA里却不是个关键字,因此JAVA中没有goto,卧槽,那还讨论了毛线,没有goto不代表没有可以代替goto,在JAVA中break和continue可以替代goto,听起来很乱。goto是需要一个label,这里在break和continue后面加上label,break和continue就有了goto的功能

这里引入一段代码来演示break和continue,这里的break和continue的作用就不过多介绍了,continue label1执行的时候同时中断了内部迭代以及外部迭代,直接转到label1处,随后实际上是继续进行迭代过程,但是却从外部迭代开始。break label1执行的时候也会中断所有迭代,并回到label1处,但并不重新进入迭代,特就是说完全终止了两个迭代。

上面就深入探讨了类似goto的break和continue,按照惯例,还是能不用就不用

About the author

NOBUG.IN

Add comment

By NOBUG.IN

Your sidebar area is currently empty. Hurry up and add some widgets.