学习java—第三天学习笔记

219 阅读3分钟

2019.7.19 NIIT第三天

自言自语:种一棵树最好的时间是十年前,或者现在

一、3种控制语句

  1. 顺序控制语句
  2. 选择控制语句
//1	if(关系表达式){
		语句体
	}

//2	if(关系表达式){
		语句体
	}else(
		语句体
	)

//3	if(关系表达式){
		语句体
	}else if(关系表达式2){
		语句体	
	}

۞ switch表达式的取值没有long,double,float

۞ JDK7以后表达式可以用String

	switch(表达式){
		canse 值1:
			语句体1;
			break;
		canse 值1:
			语句体1;
			break;
		default:语句体1;break;
	}
  1. 循环控制语句
//1	for(初始化语句;判断条件语句;控制条件语句){
		循环体语句;
	}
//2	while(判断循环条件){
		循环体语句;
		控制条件语句;
	}
//3	do{
		循环体语句;
		控制条件语句
	}while(判断循环条件);

三者的区别:

  • do-while至少执行一次循环体 用于初始化工作
  • for和while只有条件成立的时候才执行
  • for在循环结束后增量释放,while循环结束后增量不释放

二、控制跳转语句break

  • 在选择结构switch在循环语句中break默认跳过当前层的循环一般跳出单层循环

  • 跳出外层循环的标值 (标志名:)通过break 标志名;跳多层循环

	outer:
	for(int i=0;i<10;i++){
		for(int j=1;j<=9;j++){
			System.out.println("i*j="+ij+"\t");
		}
		System.out.println();
		if(i==2){
			break outer;
		}
	}

三、控制跳转语句continue

跳过当前循环执行该循环的下一次循环

	public class Continue01{
		public static void main(String[] args) {
			outer:
			for(int i=0;i<10;i++){
				for(int j=1;j<=9;j++){
					if(i==2){
					continue outer;
			   	}
			    	System.out.println("i*j="+i*j+"\t");
				}
				System.out.println();
			}
		}
	}

四、Random随机数类

  • 使用方法

1、java.util.Random

2、新建随机对象

3、使用nextInt()会产生0(包含)~指定值(不包含)

[0,100)产生0~100(不包含)的随机数

猜数字小游戏

	import java.util.Random;
	import java.util.Scanner;
	
	public class Radnom02{
		public static void main(String[] args) {
			Random r=new Random();
			Scanner sr=new Scanner(System.in);
			System.out.println("input Number");
			boolean flag=true;
			int b=r.nextInt(100)+1;
			while(flag){
				int a=sr.nextInt();
				if(a>b){
					System.out.println("大于");
				}else if(a<b){
					System.out.println("小于");
				}else{
					System.out.println("OK");
					flag=false;
				}
			}
		}
	}

五、数组

存储同一类型多个元素的容器既可以存基本类型也可以存引用类型

1、数据类型[] 数组名 2、数据类型 数组名[]

ps: 1、数组定义了但没有赋值,不能使用,直接打印会编译错误

数组的初始化方式

1、静态初始化

  • 在定义时直接给数组赋值 2、动态初始化
  • 定义数组
  • 给数组设置元素个数
  • 给数组赋值

区别;静态在初始化的时候就进行赋值

۞ 数组下标从0开始

六、内存分析

  • 栈 存放局部变量 容量小 速度快
  • 堆 存放引用类型中的具体数据 容量大 速度慢

七、一维数组

一维数组定义:数据类型[] 数组名 一维数组便遍历

八、二维数组

理解为一个表格 二维数组定义:数据类型[][] 数组名 二维数组便遍历 利用增强型for循环foreach进行字符串数组遍历

	for(String[] a:arr){
		for(String b:a){
			语句;
		}
	}

数组操作可能会出现的问题

  1. 访问的元素超出数组范围(下标越界)
  2. 空指针异常,数组元素未初始化,数组元素为空进行访问

排序操作

可以利用API中数组方法进行排序:Arrays.sort(int[]);