JavaSE笔记3-程序流程控制

一. 判断结构

if else结构
简写格式: 变量=(条件表达式)?表达式1:表达式2;

三元运算符:
优点:可以简化if else代码
缺点:因为是一个运算符,所以运算完必须有一个结果

class IfTest
{
	public static void main(String[] args) 
	{
		//根据数据打印相应的星期
		int num=2;
		if(num==1)
			System.out.println("Monday");
		else if(num==2)
			System.out.println("Tuesday");

		//根据数据打印相应的月份
		int month=4;
		if (month>12||month<1)
			System.out.println(month+"月份不存在");
		else if(month>=3&&month<=5)
			System.out.println(month+"春季");
		else if(month>=6&&month<=8)
			System.out.println(month+"夏季");
		else if(month>=9&&month<=11)
			System.out.println(month+"秋季");
		else 
			System.out.println(month+"冬季");
	}
}

二. 选择结构

1. switch语句特点

(1)switch语句选择的类型只有四种:byte、short、int、char
(2)case和default没有顺序,先执行第一个case,没有匹配的case执行default
(3)结束switch语句的两种情况:遇到break;执行到switch的大括号结束处
(4)如果匹配的case或default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,直到遇到break或者switch结尾结束

2. switch和if-else区别

if和switch语句很像;
如果判断的具体数值不多,而且符合byte、short、int、char四种类型,建议使用switch(效率稍高);
其他情况:对区间判断、对结果为Boolean类型判断,建议使用if(if的适用范围更广)

class switchTest
{
	public static void main(String[] args) 
	{
		int a=4,b=2;
		char ch='+';
		
		switch(ch)
		{
			case '-':
				System.out.println(a-b);
			break;
			case '+':
				System.out.println(a+b);
			break;
			case '*':
				System.out.println(a*b);
			break;
			case '/':
				System.out.println(a/b);
			break;
			default:
				System.out.println("feifa");
		}
	}
}
class SwitchTest
{
	public static void main(String[] args) 
	{
		int x=4;
		
		switch(x)
		{
			case 3:
			case 4:
			case 5:
				System.out.println(x+"春季");
			break;

			case 6:
			case 7:
			case 8:
				System.out.println(x+"夏季");
			break;

			case 9:
			case 10:
			case 11:
				System.out.println(x+"秋季");
			break;

			case 12:
			case 1:
			case 2:
				System.out.println(x+"冬季");
			break;

			default:
				System.out.println(x+"非法");

		}
	}
}

三. 循环结构

1. while结构
while(条件表达式)
{
    执行语句;
}
2. do while结构

条件无论是否满足,循环体至少被执行一次

do
{
    执行语句;
}while(条件表达式);
3. for结构

for为了循环而定义的变量在for循环结束就是在内存中释放;
while循环使用的变量在循环结束后还可以继续使用。

for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
    执行语句;
}
4. 最简单无限循环格式
while(true);
for(;;);
5. 循环嵌套

例子:九九乘法表

class  ForDemo
{
    public static void main(String[] args)
    {
        //九九乘法表
        for(int x=1;x<=9;x++)
        {
            for(int y=1;y<=x;y++)
            {
                System.out.print(y+"x"+x+"="+y*x+"\t");//使用制表符控制间距
            }
            System.out.println();
        }
    }
}

四. 其他流程控制语句

1. break

应用范围:选择结构(switch)和循环结构(for/while/do while)

用break跳出内循环

class  ForDemo
{
	public static void main(String[] args) 
	{
		for(int x=0;x<3;x++)
		{
			for(int y=0;y<4;y++)
			{
				System.out.println("x="+x);
				break;
			}
		}
	}
}

用标号,让break作用于指定的范围

class  ForDemo
{
	public static void main(String[] args) 
	{
		w:for(int x=0;x<3;x++)
		{
			q:for(int y=0;y<4;y++)
			{
				System.out.println("x="+x);
				break w;
			}
		}
	}
}
2. continue

应用范围:循环结构,结束本次循环继续下次循环

class  ForDemo
{
	public static void main(String[] args) 
	{
		for(int x=1;x<=10;x++)
		{
			if(x%2==1)
				continue;
			System.out.println("x="+x);
		}
	}
}

用标号,让continue作用于指定的范围

class  ForDemo
{
	public static void main(String[] args) 
	{
		w:for(int x=1;x<=10;x++)
		{
			for(int y=0;y<4;y++)
			{
				System.out.println("x="+x);
				continue w;
			}
		}
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值