在Java开发中我们经常会用到一些关键字,关键字的定义很有意思"Java事先定义好的,具有特殊含义的单词",那么我们怎么来用好关键字呢?下面我们对一些常见的关键字进行分析和比较;
1.目录
- return
- break
- continue
- this
- super
return
return是Java编程中常用的一个关键字,但在这个关键字究竟是干什么的,有什么注意的呢,在这里详解一下,;
return有两个作用:
1.作为返回值
2.作为终止语句
Java中任何一个方法不管是否含有返回值,都是可以使用return语句,
当方法中存在返回值类型时(即返回值类型为非void),则必须带有含有返回值类型数据的return语句,返回值类型可以是基本类型,也可以是引用类型;此时return语句起到两个作用,返回返回值给方法调用者,终止语句运行到方法调用者;
当方法中不存在返回值类型时(即返回值类型为非void),则可以有return语句,也可以不要return语句,如果存在return语句那么,return语句作为终止程序运行使用;return语句有下面几个注意项,通过代码解析;
1.return语句后面紧跟其他变量或语句,编译不通过,如果return存在于大括号中,不影响大括号外的编译
2.方法可不可以不带返回值,答案是不行的,编译不通过,会提示添加返回值void
3.方法中存在return语句那么方法流向问题[return 可以作为终止语句,他会终止它自身所在的大括号中的语句],for循环中的return语句会跳出for循环,执行for循环下面的语句.
4.异常中的return
我们会发现代码运行到catch语句中return时,会先把finally中运行再return,这是异常的机制决定的,不管什么时候finally都会运行四种情况下不运行finally
break&&continue&&循环标号
在这里我们把break和continue放在一起是因为这两个关键字经常放在同一个环境使用,也就是循环语句。
break关键字它的作用在于跳出当前循环(即break所在的循环,如果存在for(){for(){break;}},那么break只是跳出内存循环,外层循环继续;),应用范围为循环语句,选择语句。
计算1到100的所有偶数的和,要求当和大于250时跳出,并输出这个和;
class SumDemoPractice{ public static void main(String[] args){ int sum = 0 , i=1; for(;i<101;i++){ if(i%2==0){ sum+=i; } //当和大于250时,break语句跳出循环, if(sum>250){ break; } } //最后一次的相加和已经大于了250,在下面的输出中会体现出来 System.out.print("从1到"+i+"的偶数相加的和为:"+sum); } }
Continue关键字作用是跳出当前循环进行下次循环,整个循环不结束
打印出1到20中的所有奇数,但是13被认为是一个不吉祥的数,不打印
class SumDemo1Practice{ public static void main(String[] args){ int sum = 0 , i = 0; while(i<=20){ i++; if(i%2==1){ if(i==13) continue; System.out.print(i+" "); } } } }
Break和continue跳转语句它的作用范围仅在当前循环,那么如果多层循环中我们想break跳出指定循环该怎么操作呢?这时就引出了标号的概念;标号是为循环起一个名字,或者叫做为循环做一个标记,可以通过break 标记达到直接跳出该标记循环的目的。下面我们举例说明;
打印一个矩形*;
class RectanglePractice{ public static void main(String[] args){ int a = 4 , b = 5 ; for(int i=1;i<=a;i++){ for(int j=1;j<=b;j++){ System.out.print("*"); } System.out.println(""); } } }
打印一个矩形*,当出现一行里超过第三个*时,打印结束;
class RectanglePractice{ public static void main(String[] args){ int a = 4 , b = 5 ; out:for(int i=1;i<=a;i++){ inner:for(int j=1;j<=b;j++){ System.out.print("*"); if(j==3){ //当j==3时,它打印的是第三颗*,此时跳出循环,但他跳出的只是内循环, //我们如何跳出外循环呢,这时就用到了标号,为循环标号,跳出标号循环 break out; } } System.out.println(""); } } }