Java基础之流程控制语句篇

一、前言

博主学习Java有段时间了,年后就要步入职业生涯,想着对这段时间学习到的知识点做些总结,梳理下各个知识点,以此献给喜欢Java的小伙伴。

二、流程控制语句

最基础的用法,博主在这里就不一一演示了,这里博主想分享一些自己踩过的坑,与大家共勉
1.条件语句

  • if-else
  • switch
public static void main(String[] args) {
		boolean state=false;
		int i=2;
		if((++i)>2 && (state=true)) 
			i++;
		if((++i)>4 || (state=false)) 	
			i++;
		System.out.println(i);
	}
	输出结果:6
package test;
public class A {
	public static void main(String[] args) {
		boolean flag = true;

		if (flag = false) {
			System.out.println("hello");
		} else {
			System.out.println("ni hao");
		}
	}
}
  输出结果:   ni hao
public static void main(String[] args) {
		int i=1;
		
		switch (i) {
		case 0:
			i=i+1;
			break;
		case 1:
			i=i+1;
		case 2:
			i=i+1;
			break;
		default:
			break;
		}
		System.out.println(i);
	}		
	输出结果: 3

总结:对于if语句,千万要看清楚括号里面是赋值运算还是逻辑判断,对于switch语句,看清楚语句后面是否跟有break,没有的话,它会继续向下执行。

2.循环语句

  • while
  • do-while
  • for
冒泡排序:
public static void main(String[] args) {
		
		int[] arr= {12,23,99,52,64,89,3};
		for (int i = 0; i < arr.length-1; i++) {
			for (int j = 0; j < arr.length-1-i; j++) {
				if(arr[j]>arr[j+1]) {
					int tmp=arr[j];
					arr[j]=arr[j+1];
					arr[j+1]=tmp;
				}
			}
		}
		System.out.println(Arrays.toString(arr));
	}
	for(;;)这样的格式其实是正确的,只不过是无限循环,你需要手动跳出。		

总结:while与do while最明显的差别就是do while是先执行后判断,至于用哪个,你要根据具体需求来判断。
3.跳转语句

  • break
  • continue
break:跳出当前循环语句
continue:终止本次循环,继续下次循环
博主想在这里分享一个跳出到指定循环位置到方法,就是用标签法:

public static void main(String[] args) {
		int a=0;
		
		loop:
		for (int i = 0; i <10; i++) {
			for (int j = 0; j < 10; j++) {
				a++;
				break loop;
			}
		}
		System.out.println(a);
	}
	结果:  1		
public static void main(String[] args) {
		int a=0;
		
		loop:
		for (int i = 0; i <10; i++) {
			for (int j = 0; j < 10; j++) {
				a++;
				continue loop;
			}
		}
		System.out.println(a);
	}		
	输出结果: 10

4.其它语句

  • return
    目前博主用到这个关键字的作用只有两个:
    1.用户返回代码块执行后的结果
    2.用于流程控制,结束方法(其实这条跟第一条有点类似,只不过博主喜欢按功能将它划分)
用于返回程序执行结果:
public int getResult() {
		
		int i=1;
		return i;
	}
	返回结果:1
用于结束方法:
public static void getResult() {
		int a=0;
		while(true) {
			a++;
			if(a==10) {
				System.out.println(a);
				return;
			}
		}
	}
	输出结果:10
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值