java基础第二篇

时间:2022-05-18 22:14:38
java基础第二篇

3.选择结构

a.if:

格式一:

if(表达式1){

表达式1为真才执行

}

格式二:

if(表达式1){

表达式1为真才执行

}else{

表达式1位假才执行

}

格式三:判断工龄的范围,判断成绩的范围

if(表达式1){

表达式1为真才执行

}else if(表达式2){

表达式1为假并且表达式2为真 才执行

}else if(表达式3){

表达式1为假并且表达式2为假并且表达式3为真 才执行

}...

b.switch(理解,但是它不常用)

1.应用场景:判断四季(春夏秋冬),判断星期,根据用户的选择,进行对应的操作

Scanner scan=new Scanner(System.in);

int choice=scan.nextInt();

switch(choice){

case 1:

//一般在此处调用独立的方法

break;

case 2:

//一般在此处调用独立的方法

break;

....

default:

//系统没有的选项

System.out.println("你想干啥?");

}

2.case 穿透:不遇到break,不会跳出switch,将会一直执行下面的case

int m=3;

switch(m){

case 1:

System.out.println(m+1);

case 2:

System.out.println(m*2);

case 3:

System.out.println("case3");

break;

}

4.循环结构

a.单层循环:遍历

1.数组遍历

int[] arr={4,5,6};

for (int i=0;i<arr.length;i++) {

System.out.print(arr[i]+" ");

}

2.字符串遍历

String str="Hello";

第一种:

for (int i=0;i<str.length();i++) {

System.out.println(str.charAt(i));

}

第二种:

char[] charArr=str.toCharArray();//转换为字符数组再去遍历

for (int i=0;i<charArr.length;i++) {

System.out.println(charArr[i]);

}

3.集合遍历

ArrayList<String> al=new ArrayList<String>();

al.add("慕容紫英");

al.add("柳梦璃");

for(int i=0;i<al.size();i++){

String element=al.get(i);

System.out.println(element);

}

b.双层循环:二维数组遍历

int[][] arr={{666,888,1314},{999,520,521,18}};//定义一个二维数组,这个二维数组中包含2个一维数组

//第一个一维数组长度为3,第二个一维数组长度为4

/*

1.首先拿到一个维数组

2.遍历这个一维数组

*/

for(int i=0;i<arr.length;i++){//控制遍历的一维数组的个数

for(int j=0;j<arr[i].length;j++){//遍历当前一维数组中的元素

//arr[i]代表当前遍历的一维数组

System.out.print(arr[i][j]+" ");

}

System.out.println();  //内层循环走完,代表当前一维数组的元素遍历完毕,末尾加换行,输出下个一维数组的长度

}

5.键盘录入与随机数

1.键盘录入:

a.nextInt():从键盘录入一个整数

b.nextLine():从键盘录入一个字符串

c.nextDouble():从键盘录入一个小数

2.键盘录入注意

Scanner scan=new Scanner(System.in);

scan.nextInt();//当你录入3,按回车,其实录入的数据是 3\r\n

//nextInt()方法只扫描整形数据的3,不扫描\r\n

scan.nextLine();//\r\n会被nextLine()接收,而nextLine()遇到\r\n直接结束,不再让用户录入

scan.nextInt();//当你录入3,按回车,其实录入的数据是 3\r\n

//nextInt()方法只扫描整形数据的3,不扫描\r\n

scan.nextLine();//\r\n会被nextLine()扫描处理,那么下面的nextLine()就可以正常录入

scan.nextLine();

3.java.util.Random:验证码,猜数字小游戏

a.产生[m,n]的随机数:nextInt(n-m+1)+m

b.随机取出数组/集合中的元素

int[] arr={1,2,4,5,6};

Random r=new Random();

int ranIndex=r.nextInt(arr.length);//0<=产生的随机数<=arr.length-1

System.out.println(arr[ranIndex]);

ArrayList<String> al=new ArrayList<String>();

al.add("慕容紫英");

al.add("柳梦璃");

al.add("云天河");

al.add("韩菱纱");

Random r=new Random();

int ranIndex=r.nextInt(al.size());//0<=产生的随机数<=arr.length-1

System.out.println(al.get(ranIndex));