Java基础二:流程控制

本文详细介绍了Java中的流程控制,包括用户交互Scanner类的使用,顺序结构的概念,选择结构(if单双多选及嵌套if,switch多选择结构),循环结构(while, do...while, for及增强型for循环),以及控制流程的break, continue和goto关键字的应用。" 120513921,8655615,深度学习模型量化策略:MinMax、KLD、ADMM、EQ解析,"['深度学习', '算法', '人工智能', '模型量化']
摘要由CSDN通过智能技术生成
一.用户交互Scanner

我们可以通过Scanner类来获取用户的输入,引入java.util.Scanner
1.基本语法

Scanner scanner=new Scanner(System.in);
//判断用户有没有输入字符串
if(scanner.hasNext()){
//使用next方法接收
String str=scanner.next();
}
scanner.close();//用完关掉,否则占用资源

通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext()与hasNextLine()判断是否还有输入的数据。
2.next()和nextLine()的区别:
next():
a.一定要读取到有效字符后才可以结束输入
b.对输入的有效字符之前遇到的空白,next()方法会自动将其去掉
c.只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符
d.next()不能得到带有空格的字符串
nextLine():
a.以Enter为结束符,也就是说nextLine()方法返回的是输入回车之前的所有字符。
b.可以获得空白
3.Scanner其他用法

获取整数

if(scanner.hasNextInt()){
i=scaaner.nextInt();
}
二.顺序结构

1.定义
java的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句地执行。顺序结构是最简单的算法结构。
语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,他是任何一个算法都离不开的一种基本算法结构。
在这里插入图片描述

三.选择结构

1.if单选择结构

if(布尔表达式){
  //如果布尔表达式为true将执行的语句
}

2.if双选择结构

if(布尔表达式){
  //如果布尔表达式为true将执行的语句
}else{
	//如果布尔表达式为true将执行的语句
}

3.if多选择结构

if(布尔表达式1){
  //如果布尔表达式1为true将执行的语句
}else if(布尔表达式2){
  //如果布尔表达式2为true将执行的语句
}else if(布尔表达式3){
  //如果布尔表达式3为true将执行的语句
}else{
	//如果以上布尔表达式都不为true将执行的语句
}

4.嵌套的if结构 注意:else总是与他同级的最近的一个if匹配

if(布尔表达式1){
	if(布尔表达式2){
 	 	//如果布尔表达式2为true将执行的语句
	}else{
		//如果布尔表达式为true将执行的语句
	}
}else{
	if(布尔表达式3){
  		//如果布尔表达式3为true将执行的语句
	}else{
		//如果布尔表达式为true将执行的语句
	}

}

5.switch多选择结构
switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。
expression的值类型:
1, int 2,char 3,byte 4,short 5,枚举 6, String

switch(expression){
	case value1:
	//语句
	break;
	case value2:
	//语句
	break;
	... ...
	default://可选
	//语句
}
四.循环结构

1.while循环

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

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

2.do…while循环
先循环再进行判断

do{
	//代码语句
}while(布尔表达式)

3.for循环

for(int i=0;布尔表达式;i++){
    //代码语句
}

4.在java5中引入了一种主要用于数组的增强型for循环

for(声明语句:表达式){
	//代码句子
}
int nums[]=new int[]{1,2,3,4,5,6};
for(int i:nums){
	system.out.print(i);
}
五.break&continue&goto

break:跳出当前循环,switch中也可以使用
continue:终止某次循环进行下一次循环判定
goto:

outter:for(int i=101;i<150;i++){
	for(int j=2;j<i/2;j++){
		if(i%j==0){
			continue outer;
		}
	}
	System.out.print(i+"");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值