JAVA编程零基础学习(四:JAVA语法基础二)

JAVA语法基础二

一:流程结构

流程结构分为三种:顺序结构,循环结构,分支结构

1:顺序结构

按照代码先后顺序由上而下执行。如下,按照顺序先执行打印1,后执行打印2

public static void main(String[] args){
	System.out.println(1);
	System.out.println(2);
}

2:循环结构

循环结构的概念:重复执行某部分代码块。分为for循环,do while循环,while循环 ,有以下部分组成

1.初始化部分;2.循环条件部分;3.循环体部分;4.迭代部分(对初始化信息的更新)

流程判断:判断初始化部分是否满足循环条件,若满足则执行循环体,然后更新迭代部分条件,再次判

断迭代后的初始化信息是否满足循环条件(满足则重复执行,不满足循环停止)。

2.1:for循环

for(初始化条件;循环条件;迭代部分){
循环体
}

	public static void main(String[] args){

   /**
	*   声明变量i=0;当i<20的情况下进入循环,每次循环后i自加1,判断i是否小于20,
	*	小于20再次进入循环(重复如此),否则循环停止
	* 	int i=0; 是初始化部分; i<20是循环条件;i++是迭代部分;for内部的是循环体
	*/

		for(int i=0;i<20;i++){
			System.out.println(i);
		}
	}
2.2:while循环

初始化条件; while(循环条件){ 循环体/迭代部分; }

  int m=0;//初始化条件
  while(m<10){//循环条件
  		System.out.print(m);//循环体
  		m++;//迭代部分
  }
2.3:do while 循环

初始化部分; do{循环体部分/迭代部分}while(循环条件){}

  int m=0;//初始化
  do{
  	System.out.println(m);//循环体
  	m++;//迭代部分
  } while(m<20){//循环条件
  	System.out.println(m);
  }

while 和do while的区别:

while是先判断是否满足循环条件再执行循环体;最少执行0次;

do while是先执行循环体再判断是否满足循环条件;最少执行1次。

3:分支结构

分支结构的概念:判断是否满足某种条件,满足进入对应分支,不满足进入另一分之的一种结构。

3.1:if分支结构

语法如下:

if(条件表达式){ 分支一 } :若满足条件则进入分之一
if(条件表达式){ 分支一 }else{分支二} :若满足条件则进入分之一反之进入分之二
if(条件表达式1){ 分支一 }else if(条件表达式2){分支二}else{分支三} :若满足条件1进入分之一;若在不满足条件1的情况下且满足条件2则进入表达式2;若同时不满足条件1和条件2则进入分支3.

public static void main(String[] args){
	int ks=18;
	
	//不加else的情况
	if(ks==18){
		System.out.println("ks等于18");
	};
	
	//加单个else的情况
	if(ks==18){
			System.out.println("ks满足等于18");
	}else{
		System.out.println("ks不满足等于18");	
	}
	
	//加多个else的情况 (实际是多个else if条件)
	if(ks==18){
			System.out.println("ks满足等于18");
	}else if(ks==19){
		System.out.println("ks满足等于19");	
	}else if(ks==20){
		System.out.println("ks满足等于20");	
	}else{
		System.out.println("ks不满足任何以上情况");	
	}

}
3.2:switch case分支结构

当switch里的判断条件满足一种case情况的时候,执行语句块,跳出switch

switch(判断条件){ case 1: 语句块; break;case 2: 语句块; break;default:break }

	int m=15;
	switch(m){
		case 1:
		System.out.println(1);
		break;
		case 15:
		System.out.println(15);
		break;
		default:
		break;
	}
	//打印结果 :15

其中值得注意的是:
1:switch(表达式)中表达式的值必须是下述类型之一:byte,short,char,int(Integer),枚举 ,String 。

2:break表示执行完满足条件的case分支后,程序跳出switch语句块;如果没有break,程序会顺序执行

到switch结尾。

4:break和continue关键字

break和continue都有停止循环的作用,通常用在循环语句中,或者用在switch case流程控制中。二者的不同

break:终止循环体,跳出循环外

continue:停止本次循环,继续下次循环

public static void main(String[] args){

		for(int m=0;m<20;m++){
			if(m=3){
			//当m=3的时候会终止循环,跳出循环体,因此该循环只执行了三次,m值为0,1,2
				break;
			}
			System.out.println(m);
		}
		
		for(int m=0;m<20;m++){
			if(m=3){
				//当m=3的时候会停止本次循环,开始下次循环,因此当m=3时,循环体未执行,后续循环正常执行
					break;
				}
				System.out.println(m);
		}

	
}

二:数组

2.1 :数组的概念:

数组是一种线性数据结构,是一个使用连续的内存空间存放相同的数据类型的集合容器。

数组内的数据是连续的,且数据是同一种数据类型。

数组创建后有初始值:数字类型为0,布尔类型为false,引用类型为null。

数组声明时必须指定数组的长度,且长度不可更新,数组长度(数组名.length)

数组分为一维数组和二维数组

2.2:数组的声明

2.2.1:一维数组

一维数组(左侧的数据类型和右侧保持一致):

1:数据类型 [] 变量名(表示该数组的名称)=new 数据类型 [长度];
2:数据类型 [] 变量名 = new 数据类型 [] {元素0,元素1,元素2,元素3。。。。。。};
3:数据类型 [] 变量名 = {元素0,元素1,元素2,元素3。。。。。。};

数据类型既可以是基本数据类型(int,long,double,char等等);也可以是引用数据类型(String,Integer,类等到)。

假设有五个同学的成绩分为为80,90,95,74,100,我们可以这么表示

public stativ void main(String[] args){
	int one=74
	int two=80;
	int three =90;
	int four=95;
	int five=100;
	
}

但是我们发现,他们五个人的成绩都是用同一个类型表示,还要声明五个变量,会不会觉得麻烦呢?
那么我们就可以利用数组表示这五位同学的成绩

public stativ void main(String[] args){
	
		int [] scores=new int[5];
		int[0] =74
		int[1] =80;
		int[2]  =90;
		int[3] =95;
		int[4] =100;
		或者
		int [] scores={74,80,90,95,100};
		或者
		int [] scores=new int [] {74,80,90,95,100};
		
	}

五个同学的成绩统一放在scores这个数组里,这个数组就表示他们五位的成绩。

上面的int[0]表示数组的第一个元素,这个0是数组的下标,数组下标是从0开始的,下标0就是表示数组的第一个元素,依次递推

下标N表示数据的第N+1个元素。

数组的长度决定元素个数:数组的元素个数不能大于数组的长度,否则会报数组下标越界异常。

2.2.2:二维数组

二维数组概念:
由多个一维数组构成的数组。

数组类型[][] 数组名 = new 数组类型[一维数组的个数][每一个一维数组的元素个数];

二维数组的元素是一维数组,一维数组的元素是基本数据和引用数据。

//表示创建一个由三个长度为2的一维数组组成的二维数组。
int[]  [] numberArray=new int[3][2];
//表示二维数组的第一个一维数组的第一个元素赋值
int[0][0]=5
//表示给二维数组的第三个元素(一维数组)的第二个元素赋值
int[2][1]=3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

博客胡

你的鼓励是我最大的动力

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

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

打赏作者

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

抵扣说明:

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

余额充值