栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java基础(4)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java基础(4)

文章目录
      • 顺序控制
      • 分支控制
        • 单分支
        • 双分支
        • 多分支
        • 嵌套分支
      • switch
        • switch和if的比较
      • for循环控制
      • while
      • do...while循环控制
      • 多重循环控制
      • break
      • continue
      • return
      • 化繁为简,先死后活

顺序控制

程序从上到下逐行地执行,中间没有任何判断和跳转。

分支控制

让程序有选择地执行

单分支
if(条件表达式){
   	执行代码块;
}

说明:如果{}中只有一条语句,则可以不用{},建议加上{}

双分支
if(条件表达式){
		执行代码块1;
}
else{
		执行代码块2;
}
多分支
if(条件表达式1){
		执行代码块1;
}
else if(条件表达式2){
		执行代码块2;
}
……
else{
		执行代码块n;
}

多分支可以没有else,如果所有的条件表达式都不成立,则一个执行入口都没有(2)如果有else,所有的条件表达式都不成立,则默认执行代码块n。

嵌套分支

在一个分支结构中又完整的嵌套了另一个完整的分支结构,里面的分支的结构称为内层分支外面的分支称为外层分支,规范:不要超过3层,可读性不好。

if(){
   	if(){
   		//if-else……
   	} else{
   		//if-else
		}
}

注意:scanner.next()接收的是字符串,如果想要从键盘接收字符,则需要从字符串中取出第一个字符:scanner.next().charAt(0)。

switch
switch(表达式){
        case 常量1:  //当……
        语句块1;
        break;
        case 常量2:  //当……
        语句块2;
        break;
        ……
        case 常量n:  //当……
        语句块n;
        break;
        default:
        default语句块;
        break;
}
  1. switch关键字,表示switch分支
  2. 表达式对应一个值
  3. case 常量1:当表达式的值等于常量1,就执行语句块1
  4. break:表示退出switch
  5. 如果和case 常量1匹配,就执行语句块1,如果没有匹配,就继续匹配case 常量2
  6. 如果一个都没有匹配上,执行default

如果在执行完语句后没有break语句,则直接会执行下一个语句,而不进行判定,直到遇到break语句。

注意点

  • 表达式数据类型,应和case后的常量类型一致,或者是可以自动转换成可以相互比较的类型,比如输入的是字符,而常量是int
  • switch(表达式)中表达式的返回值必须是(byte,char,int,枚举enum,String,short)
  • case子句中的值必须是常量或者常量表达式而不是变量
  • default子句是可选的,当没有匹配到case时,执行default
  • break语句用来在执行一个case分支后,使程序跳出switch语句块,如果没有写break,程序会顺序执行到switch结尾,除非遇到break,这叫穿透。
switch(month){
				case 3:
				case 4:
				case 5:
					System.out.println("春季");
					break;
				case 6:
				case 7:
				case 8:
					System.out.println("夏季");
					break;
switch和if的比较
  • 如果判断的具体数值不多,而且符号byte、short、int、char、enum、String这六种类型,虽然两个语句都可以使用,建议使用switch语句。
  • 其他情况,对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广。
for循环控制
for(循环变量初始化;循环条件;循环变量迭代){
    循环操作(语句);
}

描述

  1. for 关键字,表示循环控制
  2. for 有四要素:(1)循环变量初始化;(2)循环条件;(3)循环操作;(4)循环变量迭代
  3. 循环操作,这里可以有多条语句,也就是我们要循环执行的代码
  4. 如果 循环操作(语句)只有一条语句,可以省略{},建议不要省略

循环条件初始化------>循环条件------->循环操作-------->循环变量迭代------->循环条件------->循环操作------->……

注意

  • 循环条件是返回一个布尔值的表达式;
  • for(;循环判断条件;)中初始化和变量迭代可以写到其他地方,但两边的分号不能省略;for(;;)无限循环,死循环
  • 循环初始值可以有多条初始化语句,但要求类型一样,并且中间用逗号隔开,循环变量迭代也可以有多条变量迭代语句,中间用逗号隔开;
  • 使用内存分析法
int mul = 5;
		int start = 0;
		for(int i = start,j = mul - start;i <= mul;i++,j = mul-i){
				System.out.println(i + " " + "+" + " " + j + " " + "=" + " " + mul);
		}

多语句初始化时只写一次int

while
while(循环条件){
    循环体(语句);
    循环变量迭代;
}
  • 循环条件是返回一个布尔值的表达式
  • while循环是先判断再执行语句
do…while循环控制
循环变量初始化;
do{
    循环体(语句);
    循环变量迭代;
}while(循环条件);
  • do while是关键字
  • 也有循环四要素,只是位置不一样
  • 先执行再判断,也就是说,至少执行一次;
  • 最后有一个分号;
  • 循环条件是返回一个布尔值的表达式;
多重循环控制

将一个循环放在另外一个循环体内,就形成嵌套循环,do…while循环、while循环、for循环均可作为外层循环和内层循环,建议一般使用两层,不要超过3次。

实质上,嵌套循环就是把内层循环当作外层循环的循环体,当只有内层循环的循环条件为false时,才会完全跳出内层循环,才可以结束外层的当次循环,开始下一次的循环。

设外层循环次数为m次,内层为n次,则内层循环体实际上需要执行m*n次。

break

break语句用于终止某个语句块的执行,一般使用在switch或者循环中。

  • break语句出现在多层嵌套的语句块中,可以通过标签指明要终止的是哪一层语句块。

标签的使用

label1:{
label2:     {
label3:          {
    					break label2;
                 }
            }
}
  1. break语句可以指定退出哪层
  2. label1是标签,名字由程序员指定
  3. break后指定到哪个label就退出到哪里
  4. 在实际开发中,尽量不要使用标签
  5. 如果没有指定break,默认退出最近的循环体。
continue

continue语句用于结束本次循环,继续执行下一次循环;

continue语句出现在多层嵌套的循环语句体中时,可以通过标签指明要跳过的是哪一层循环,这个和前面的标签的使用的规则一样。

return

return使用在方法时,表示跳出所在的方法,如果在main表示退出程序。

化繁为简,先死后活

字符串内容是否相等用String类中的equals方法比较,name.equals(“比较内容”),也可以"比较内容".equals(name),比较推荐后者,可以避免空指针的情况。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/397337.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号