java流程控制

一、Scanner对象

语法:
Scanner s = new Scanner(System.in)

Scanner 扫描仪 用于接收键盘输入的数据
hasNext()与hasNextLine()方法用于判断有没有输入字符串
next()与nextLine()方法用于获取输入的字符串
close()方法用于关闭扫描仪

next()
  • 一定要读取到有效字符后才可以结束输入。
  • 对输入有效字符之前遇到的空白,next()方法会自动将其去掉。
  • 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。
  • next()不能得到带有空格的字符串.
nextLine()
  • 以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。
  • 可以获得空白。

二、顺序结构

从上到下的顺序进行执行,它是任何一种算法都离不开的基本算法结构。

三、选择结构

  • if 单选择结构
语法:
if(布尔表达式){
//如果布尔表达式为true将执行的语句
}
equals();用于判断字符串是否相等
  • if双选择结构
语法:
if(布尔表达式){
	//如果布尔表达式的值为true,则执行这个代码块
}else{
	//如果布尔表达式的值为false,则执行这个代码块
}
  • if 多选择结构
if(布尔表达式1{
//表达式1
}else if(布尔表达式2){
//表达式2
}else if(布尔表达式3){
//表达式3
}
  • 嵌套的if结构
if(布尔表达式1){
	//表达式1
	if(布尔表达式2{
		//表达式2
	}
}
  • switch多选择结构
    switch 语句中的变量类型可以是:
    1. byte、short、int、或者char
    2. 从java SE7开始switch支持字符串String类型了,同时case 标签必须为字符串常量或字面量
switch (expression){
	case value:
		//语句
		break;
	case value:
		//语句
		break;
	default:
		//语句
}

四、循环结构

  • while循环
while(布尔表达式){
	//循环内容
}

只要布尔表达式为true,循环就会一直执行下去。

  • do·····while循环
do{
	//代码语句
	}while(布尔表达式);

while和do····while的区别
1、while先判断后执行,do…while是先执行后判断。
2、do…while总是保证循环体会被至少执行一次。

  • for 循环
for(初始化;布尔表达式;更新){
	//代码语句
}

最先执行初始化步骤,可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。然后,检查布尔表达式的值,如果为true,循环体被执行。如果为false,循环体终止,开始执行循环体后面的语句。执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)。再次检测布尔表达式,循环执行上面的过程。

九九乘法表
//先打印第一列
//把固定的1再用一个循环包起来
//去掉重复项i<=j
//调整样式
forint j=1;j<=9;j++{
	for(int i=1;i<=j;i++){//i<=j 去除重复项
		System.out.print(j+"*"+i+"="+(j+i)+"\t");
	}
	System.out.println();
}
  • 增强for循环
for(声明语句:表达式){
	//代码语句
}
------------------
int[] numbers={10,20,30,40,50,60,70,80};//定义一个数组
//遍历数组
for(int x:numbers){
	System.out.println(x);
}

1、声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配,其作用域限定在循环语句块,其值与此时的数组元素的值相等。
2、表达式:表达式是要访问数组名,或者是返回值为数组的方法

五、break/continue

  • break
    在任何循环语句的主体部分,均可用break控制循环的流程,break用于强行退出循环,不执行循环中的剩余的语句。(break语句也在switch语句中使用)
  • continue
    语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判断。

六、练习打印三角形

public static void main(String[] args){
	//打印三角形 5行
	for(int i=1; i<=5; i++){
		for(int j=5; j>=i;j--){
			System.out.print(" ");
		}
		for(int j=1; j<=i; j++){
			System.out.print("*");
		}
		for(int j=1; j<i; j++){
			System.out.print("*");
		}
		System.out.println();
	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

思问心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值