1.简述Scanner类及Random类的功能和使用方式?
首先数据类型分为 基本数据类型 和 引用数据类型;
a 引用数据类型的定义格式
数据类型 变量名 = new 数据类型();
b引用数据类型的使用方式
每种引用数据类型都有其功能,我们可以调用该类型实例的功能。
变量名.方法名();
Scanner类
Scanner类是引用数据类型的一种,我们可以使用该类来完成用户键盘录入,获取到录入的数据。
使用步骤:
(1)导包:import java.util.Scanner;
(2)创建对象实例:Scanner sc = new Scanner(System.in);
(3)调用方法:
int i = sc.nextInt(); 用来接收控制台录入的数字
String s = sc.next(); 用来接收控制台录入的字符串
案例代码:
1 import java.util.Scanner;//导包 2 public class ScannerDemo01 { 3 public static void main(String[] args) { 4 //创建Scanner引用类型的变量 5 Scanner sc = new Scanner(System.in); 6 //获取数字 7 System.out.println("请输入一个数字"); 8 int n = sc.nextInt(); 9 System.out.println("n的值为" + n); 10 //获取字符串 11 System.out.println("请输入一个字符串"); 12 String str = sc.next(); 13 System.out.println("str的值为" + str); 14 } 15 }
Random类
它可以产生多种数据类型的随机数,在这里我们主要介绍生成整数与小数的方式。
使用步骤:
public int nextInt(int maxValue) 产生[0,maxValue)范围的随机整数,包含0,不包含maxValue;
public double nextDouble() 产生[0,1)范围的随机小数,包含0.0,不包含1.0
(1)导包:import java.util. Random
;
(2)创建对象实例:Random 变量名 = new Random();
(3)调用方法:
案例代码:
1 import java.util.Random;//导包 2 public class RandomDemo { 3 public static void main(String[] args) { 4 // 创建Random类的实例 5 Random r = new Random(); 6 // 得到0-100范围内的随机整数,将产生的随机整数赋值给i变量 7 int i = r.nextInt(100); 8 //得到0.0-1.0范围内的随机小数,将产生的随机小数赋值给d变量 9 double d = r.nextDouble(); 10 System.out.println(i); 11 System.out.println(d); 12 }
2.if 语句
Java 中的if语句 与js 中的差不多
格式:
(1)if(条件语句){执行语句}//条件为true,执行花括号中语句
(2) if(条件语句){
执行语句1;
}else{
执行语句2;
}
条件为true执行语句1,条件为false执行语句2
(3) if…else if…else语句
if (判断条件1) {
执行语句1
} else if (判断条件2) {
执行语句2
}
...
else if (判断条件n) {
执行语句n
} else {
执行语句n+1
}
当判断条件1为true时,if后面{}中的执行语句1会执行。
当判断条件1为false时,会继续执行判断条件2,如果为true则执行语句2,
以此类推,如果所有的判断条件都为false,则意味着所有条件均未满足,else后面{}中的执行语句n+1会执行
3.for循环、while循环、do-while 循环的格式是什么?简述执行流程及注意事项?
(1)while循环
while(循环条件){
执行语句
………
}
//当循环条件为true时,循环体就会执行。
循环体执行完毕时会继续判断循环条件,
如条件仍为true则会继续执行,直到循环条件为false时,整个循环过程才会结束。
(2)for 循环
for(初始化表达式; 循环条件; 操作表达式){
执行语句
………
}
执行顺序 : 1初始值 2 判断条件 3 符合条件进入循环体 4 改变状态(初始值改变) 5直到不符合判断条件跳出循环;
(3)do while
do {
执行语句
………
} while(循环条件);
关键字do后面{}中的执行语句是循环体
do…while循环语句将循环条件放在了循环体的后面
这也就意味着,循环体会无条件执行一次,然后再根据循环条件来决定是否继续执行
4.简述break、continue及循环标号的作用
(1)break语句作用 跳出所在的循环体
(2)continue语句用在循环语句中,它的作用是终止本次循环,执行下一次循环。
(3)标记
当break语句出现在嵌套循环中的内层循环时,它只能跳出内层循环,如果想使用break语句跳出外层循环则需要对外层循环添加标记。
示例代码:
1 public class BreakDemo02 { 2 public static void main(String[] args) { 3 int i, j; // 定义两个循环变量 4 aaa: for (i = 1; i <= 9; i++) { // 外层循环 5 for (j = 1; j <= i; j++) { // 内层循环 6 if (i > 4) { // 判断i的值是否大于4 7 break aaa; // 跳出外层循环 8 } 9 System.out.print("*"); // 打印* 10 } 11 System.out.print(" "); // 换行 12 } 13 } 14 }
5.选择结构 switch
格式:
switch (表达式){
case 目标值1:
执行语句1
break;
case 目标值2:
执行语句2
break;
......
case 目标值n:
执行语句n
break;
default:
执行语句n+1
break;
}
注意
语句执行机制和js的switch 一样,区别是表达式的值
在Java switch语句中的表达式只能是byte、short、char、int类型的值,
如果传入其它类型的值,程序会报错。
但上述说法并不严谨,实际上在JDK5.0中引入的新特性enum枚举也可以作为switch语句表达式的值,
在JDK7.0中也引入了新特性,switch语句可以接收一个String类型的值。