Java流程控制

1. if..else语句

基本语法:

		if(布尔表达式)
		{
			程序代码
		}
		else
		{
			程序代码
		}

注意:布尔表达式不能为数字类型,和C/C++不同,如if(0) 或if(1)是非法的

import java.util.Scanner;
public class isLeapYear
{
	/**
	 * 判断是否为闰年
	 */
	public boolean isLeap(int year)
	{
		boolean istrue;
		if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0))
			istrue = true;
		else
			istrue = false;

		return istrue;
	}

	public static void main(String[] args)
	{
		System.out.println("Please enter your year:");
		Scanner sc = new Scanner(System.in);
		int year = sc.nextInt();
		isLeapYear a = new isLeapYear();
		System.out.println(a.isLeap(year));

	}

}


2.switch语句

基本语法:

switch(expr)
{
case value1:
	statements;
	break;
case value2:
	statements;
	break;
default:
	statements;
	break;
}
注意:

(1)expr表达式类型必须是可以自动转换为int的基本类型,所以合法类型只能是byte、short、char、int

(2)valueN 除了必须是上述合法类型外还必须只能是常量且各个case子句中的valueN表达式值不同

(3)在switch语句中最多只能有一个default子句,当expr表达式值不与任何case子句匹配时,程序执行default子句,如果没有default子句程序直接退出switch语句

 (4)在决定流程分支的条件表达式的类型与int类型兼容,则使用switch语句更简洁,可读性更强,而if..else语句功能比switch语句功能更强大,能灵活控制各种复杂流程分支

                int input=0;
		switch(input)
		{
		case 0:
			System.out.println("input值等于0");
			//注意当前没有break;
		case 1:
			System.out.println("input值等于1");
			break;//执行到这里才退出	
		default:
			System.out.println("input值没有匹配的");
		}


3. while语句

基本语法:

while(循环条件)//当循环条件的布尔表达式的值为true时重复执行循环否则终止循环
{
程序代码
}


注意:

(1)循环条件包含多条语句,必须将其放在大括号内,若只有一条则不必

(2)while语句循环一开始就计算循环条件表达式,若开始值false则1次也不执行

(3)循环体可以为空,语法上是合法的

(4)确保提供终止循环条件,避免死循环

		//初始化
		int a=1;
		int b=2;
		System.out.println("while不需要加大括号");
		while(a<b)//不需要加大括号
		{
			System.out.println(a);
			a++;
		}
		
		//初始化
	    a=1;
	    b=2;
		System.out.println("while需要加大括号");
		while((a<2 && b>0))//加大括号
		{
			System.out.println(a+"  "+b);
			a++;
			b--;
		}
		
		//初始化
	    a=1;
	    b=2;
		System.out.println("while死循环");
		while(a<b)
		{
			System.out.println(a+"  "+b);
			a++;//注释掉这句会死循环
		}

		//循环体为空
		System.out.println("while循环体为空");
		while(++a<b);//注意这里的;号
		System.out.println(a+"  "+b);

4.do..while语句

基本语法:

do
{
程序代码
}while(循环条件)
注意:循环条件先执行再判断,任何情况下至少执行一次,即使条件开始就为false

		// 初始化
		int a = 1;
		int b = 2;

		do
		{
			System.out.println(a);
		} while (b < a);

5. for语句

基本语法:

		for(初始化部分;循环条件;迭代部分)
        {
            循环体
        }
执行顺序,初始化部分->判断循环条件->执行循环体->迭代部分

如果循环条件的布尔表达式值为false则退出for语句,否则依照上述执行顺序,如

		for (int a = 0, b = 0; a < 2; b = ++a, System.out.println("b "+ b))
			System.out.println("a " + a);


JDK1.5以后加入了foreach语句其格式如下:

	for(元素类型 元素变量:遍历对象)
	{
	     引用了变量的java语句;
	}
注意:foreach不是关键字,而是将这种特殊的for语句格式称之为“foreach”语句
		String arr[] = {"hello","world","我是=  =!"}; 
		for (String x : arr) 
		System.out.println(x); 

6. 流程跳转语句

break:从switch语句、循环语句的代码块退出

		int a = 1;
		while (true)
		{

			if (a > 5)
				break;// 退出循环

			System.out.println(a);
			a++;

		}

continue:跳过本次循环,执行下一次循环

		int a = 1;
		while (true)
		{

			if (a > 5)
				break;// 退出循环

			if (3 == a)
			{
				a++;
				continue;//跳出本次循环
			}

			System.out.println(a);
			a++;

		}

return:退出本方法,跳到上层调用方法,如果本方法的返回类型不是void就需要提供返回值
	public int method(int x)
	{
		if(x>0)return 1;
		if(x==0)return 0;
		return -1;
	}


参考文献:

                   Java从入门到精通  高宏静

                   Java面向对象编程  孙卫琴


【顶级EI完整复现】【DRCC】考虑N-1准则的分布鲁棒机会约束低碳经济调度(Matlab代码实现)内容概要:本文介绍了名为《【顶级EI完整复现】【DRCC】考虑N-1准则的分布鲁棒机会约束低碳经济调度(Matlab代码实现)》的技术资源,聚焦于电力系统中低碳经济调度问题,结合N-1安全准则与分布鲁棒机会约束(DRCC)方法,提升调度模型在不确定性环境下的鲁棒性和可行性。该资源提供了完整的Matlab代码实现,涵盖建模、优化求解及仿真分析全过程,适用于复杂电力系统调度场景的科研复现与算法验证。文中还列举了大量相关领域的研究主题与代码资源,涉及智能优化算法、机器学习、电力系统管理、路径规划等多个方向,展示了广泛的科研应用支持能力。; 适合人群:具备一定电力系统、优化理论和Matlab编程基础的研究生、科研人员及从事能源调度、智能电网相关工作的工程师。; 使用场景及目标:①复现水平期刊(如EI/SCI)关于低碳经济调度的研究成果;②深入理解N-1安全约束与分布鲁棒优化在电力调度中的建模方法;③开展含新能源接入的电力系统不确定性优化研究;④为科研项目、论文撰写或工程应用提供可运行的算法原型和技术支撑。; 阅读建议:建议读者结合文档提供的网盘资源,下载完整代码与案例数据,按照目录顺序逐步学习,并重点理解DRCC建模思想与Matlab/YALMIP/CPLEX等工具的集成使用方式,同时可参考文中列出的同类研究方向拓展研究思路。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值