Java基础学习笔记(三)

Java基础学习笔记(三)

Java的基本语法

(一)选择结构(switch语句)

Java除了提供第一种选择结构if语句外,还提供了switch语句。
格式如下:

	switch(表达式) {
		case 值1:
			语句体1;
			break;
		case 值2:
			语句体2;
			break;
		...
		default:
			语句体n+1;
			break;
	}
	/*
		其中,switch是关键字,声明这是switch语句;
		表达式:可以是byte,short,int,char,在jdk5以后可以是枚举,jdk7以后可以是字符串;
		case:后面的值就是要和表达式进行比较的值;
		break:表示程序到这里中断,跳出switch语句;
		default:如果所有的情况都不匹配,就执行这里,相当于if语句中的else;
	*/

switch语句执行流程:
执行流程:
A:首先计算表达式的值。
B:和每一个case进行匹配,如果有就执行对应的语句体,看到break就结束。
C:如果没有匹配,就执行default的语句体n+1。

注意事项:
A:case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
B:default可以省略吗?
可以省略,但是不建议,因为它的作用是对不正确的情况给出提示。
特殊情况:
case就可以把值固定。
C:break可以省略吗?
可以省略,但是结果可能不是我们想要的。
会出现一个现象:case穿透。
最终我们建议不要省略
D:default一定要在最后吗?
不是,可以在任意位置。但是建议在最后。
E:switch语句的结束条件
a:遇到break就结束了
b:执行到末尾就结束了

接下来通过几个案例来演示switch语句用法:

public class MySwitchDemo {

	public static void main(String[] args) {
		/*
		 	案例1:做一个键盘录入1-7,然后输出对应的星期,用switch做
		 */
		 //首先控制台打出1句话提示输入
		System.out.println("请输入一个1-7之间的数字:");
		//然后创建键盘录入对象并导包
		Scanner sc = new Scanner(System.in);
		
		//然后定义一个int类型变量接收键盘录入的数字
		int enterNum = sc.nextInt();
		
		//接下来用switch语句判断数字是几,然后输出对应得星期
		switch(enterNum) {
		case 1:
			System.out.println("星期一");
			break;
		case 2:
			System.out.println("星期二");
			break;
		case 3:
			System.out.println("星期三");
			break;
		case 4:
			System.out.println("星期四");
			break;
		case 5:
			System.out.println("星期五");
			break;
		case 6:
			System.out.println("星期六");
			break;
		case 7:
			System.out.println("星期日");
			break;
		//如果前面的都沒有,就说明输入的数字不在1-7之间
		default:
			System.out.println("你输入的数字有误!");
			break;
		}		
	}
}

注意,上面的代码中在每一个case值后面的语句体被执行后一定要break跳出switch语句,否则就可能发生case穿透,即代码又继续向下执行,最后出现一些意外的输出结果。

if语句和switch语句各自的场景
A:if
针对boolean类型的判断
针对一个范围的判断
针对几个常量的判断
B:switch
针对几个常量的判断

(二)循环结构(for语句)

Java的循环结构有3种语句,先来看第一种也是最常用的语句,for循环。
格式:

	for(初始化语句;判断条件语句;控制条件语句){
		循环体语句;
	}
	执行流程:
		a:执行初始化语句
		b:执行判断条件语句
			如果这里是true,就继续
			如果这里是false,循环就结束
		c:执行循环体语句
		d:执行控制条件语句
		e:回到b
	注意事项
		a:判断条件语句无论简单还是复杂,结果是boolean类型
		b:循环体语句如果是一条,可以省略大括号,但是不建议
		c:有分号就没有左大括号,有左大括号就没有分号

接下来来几个for循环语句练习:

		//输出10次HelloWorld
		for(int x = 0;x < 10;x++) {
			//其中x是初始化变量,x<10是判断条件语句,x++是控制语句
			System.out.println("HelloWorld");
		}
		//求1-100的和
		int sum = 0;	//定义sum变量存储结果
		for(int x = 1;x <= 100;x++) {
			sum += x;
		}
		System.out.println(sum);		//结果是5050
		// 再来个两层for循环输出五层的三角形
		for (int x = 0; x < 5; x++) {
			// 第一层循环控制层数,第二层循环控制每层的个数
			for (int y = 0; y <= x; y++) {
				//这里为了输出在一行上使用了print方法
				System.out.print("*" + "\t");
			}
			//每次将每行上的所有星号输出完毕后换行,直接空输出println就行
			System.out.println();
		}
		/*
		输出结果:
			*	
			*	*	
			*	*	*	
			*	*	*	*	
			*	*	*	*	*
		*/
(三)循环结构(while语句)
	基本格式
			while(判断条件语句) {
				循环体语句;
			}
			
			扩展格式:
			初始化语句;
			while(判断条件语句){
				循环体语句;
				控制条件语句;
			}

for和while的区别
 a:使用上的区别
  for语句的那个控制条件变量,在循环结束后不能在使用了。
  而while的可以继续使用。
 b:理解上的区别
  for适合于一个范围的判断
  while适合次数不明确的

范例:

		// while语句循环输出10次HelloWorld
		int x = 0;
		while (x < 10) {
			System.out.println("HelloWorld");
			x++;
		}
(四)循环结构(do…while语句)
	基本格式:
		do {
			循环体语句;
		}while(判断条件语句);
			
		扩展格式:
		初始化语句;
		do {
			循环体语句;
			控制条件语句;
		}while(判断条件语句);

三种循环的区别
  a:do…while循环至少执行一次循环体
  b:for和while必须先判断条件是否是true,然后后才能决定是否执行循环体

循环使用的注意事项(死循环)
A:一定要注意修改控制条件,否则容易出现死循环。
B:最简单的死循环格式
 a:while(true){…}
 b:for(;; ){}

(五)控制跳转语句
(1)break:中断的意思
	A:用在循环和switch语句中,离开此应用场景无意义。
	B:作用
		a:跳出单层循环
		b:跳出多层循环,需要标签语句的配合
(2)continue:继续
	A:用在循环中,离开此应用场景无意义。
	B:作用
		a:跳出单层循环的一次,可以继续下一次
(3)return:返回
	A:用于结束方法的。
	B:一旦遇到return,方法就不会在继续往后执行。
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值