java基础-3 Scanner、Random、流程控制语句

目录

1 引用数据类型

1.1 Scanner类

2 流程控制语句

2.1 选择结构 if

2.2 循环语句 while,for,do...while

2.3 无限循环

2.4 循环嵌套

2.5 跳转语句(break、continue)

2.6 猜数字案例


1 引用数据类型

1.1 Scanner类

 

  • 引用数据类型的使用

格式:

数据类型 变量名 = new 数据类型( );

每种引用数据类型都有其功能,我们可以调用该类型实例的功能

变量名.方法名( );

 

  • Scanner使用步骤:

导包import java.util.Scanner;

创建对象实例Scanner sc = new Scanner(System.in);

调用方法:

int i = sc.nextInt(); 用来接收控制台录入的数字

String s = sc.next(); 用来接收控制台录入的字符串

import java.util.Scanner;

public class ScannerDemo01 {
	public static void main(String[] args) {
		// 创建Scanner引用类型的变量
		Scanner sc = new Scanner(System.in);
		// 获取数字
		System.out.println("请输入一个数字");
		int n = sc.nextInt();
		System.out.println("n的值为" + n);
		// 获取字符串
		System.out.println("请输入一个字符串");
		String str = sc.next();
		System.out.println("str的值为" + str);
	}
}

 

  • Random使用步骤

导包:所属包java.util.Random  

创建实例格式:Random 变量名 = new Random();

方法简介:

public int nextInt(int maxValue) 产生[0,maxValue)范围的随机整数,包含0,不包含maxValue;

public double nextDouble()   产生[0,1)范围的随机小数,包含0.0,不包含1.0。

import java.util.Random;

public class RandomDemo {
	public static void main(String[] args) {
		// 创建Random类的实例
		Random r = new Random();
		// 得到0-100范围内的随机整数,将产生的随机整数赋值给i变量
		int i = r.nextInt(100);
		// 得到0.0-1.0范围内的随机小数,将产生的随机小数赋值给d变量
		double d = r.nextDouble();
		System.out.println(i);
		System.out.println(d);
	}
}

2 流程控制语句

2.1 选择结构 if

格式1:

if (条件语句){
      执行语句;
      ……
}

格式2:
if (判断条件){
       执行语句1
       ……
}else{
       执行语句2
        ……
}
格式3:
if (判断条件1) {
        执行语句1
} else if (判断条件2) {
        执行语句2
}
...
else if (判断条件n) {
       执行语句n
} else {
       执行语句n+1
}


选择结构:if语句与三元运算转换

int x = 0;
int y = 1;
int max;
if (x > y) {
        max = x;
} else {
        max = y;
}
相当于:
int max = x > y ? x : y;

2.2 循环语句 while,for,do...while

while:

while(循环条件){

    执行语句

    ………

}

for:

for(初始化表达式; 循环条件; 操作表达式){

    执行语句

    ………

}

 

for(① ; ② ; ③){

}

执行步骤:

第一步,执行①

第二步,执行②,如果判断结果为true,执行第三步,如果判断结果为false,执行第五步

第三步,执行④

第四步,执行③,然后重复执行第二步

第五步,退出循环

do...while:

do {

    执行语句

    ………

} while(循环条件);

 

do…while循环语句循环体会无条件执行一次,再根据循环条件来决定是否继续执行。

2.3 无限循环

while(true){ }for(;;){ }

2.4 循环嵌套

格式:

for(初始化表达式; 循环条件; 操作表达式) {

      ………

      for(初始化表达式; 循环条件; 操作表达式) {

           执行语句

           ………

      }

      ………

}

public class ForForDemo {

	public static void main(String[] args) {
		int i, j; // 定义两个循环变量
		for (i = 1; i <= 9; i++) { // 外层循环
			for (j = 1; j <= i; j++) { // 内层循环
				System.out.print("*"); // 打印*
			}
			System.out.print("\n"); // 换行
		}
	}
}

结果:


2.5 跳转语句(break、continue)

break:在switch条件语句循环语句中都可以使用break语句。当它出现在switch条件语句中时,作用是终止某个case并跳出switch结构。当它出现在循环语句中,作用是跳出循环语句,执行后面的代码。

//eg1:
public class BreakDemo {
	public static void main(String[] args) {
		int x = 1; // 定义变量x,初始值为1
		while (x <= 4) { // 循环条件
			System.out.println("x = " + x);
			// 条件成立,打印x的值
			if (x == 3) {
				break;
			}
			x++; // x进行自增
		}
	}
}
//eg2:
public class BreakDemo02 {
	public static void main(String[] args) {
		int i, j; // 定义两个循环变量
		a: for (i = 1; i <= 9; i++) { // 外层循环
			for (j = 1; j <= i; j++) { // 内层循环
				if (i > 4) { // 判断i的值是否大于4
					break a; // 跳出外层循环
				}
				System.out.print("*"); // 打印*
			}
			System.out.print("\n"); // 换行
		}
	}
}

continue:终止本次循环,执行下一次循环

public class ContinueDemo {
	public static void main(String[] args) {
		int sum = 0; // 定义变量sum,用于记住和
		for (int i = 1; i <= 100; i++) {
			if (i % 2 == 0) { // i是一个偶数,不累加
				continue; // 结束本次循环
			}
			sum += i; // 实现sum和i的累加
		}
		System.out.println("sum = " + sum);
	}
}
// 上述代码中,使用for循环让变量i的值在1~100之间循环,在循环过程中,当i的值为偶数时,将执行continue语句结束本次循环,
// 进入下一次循环。当i的值为奇数时,sum和i进行累加,最终得到1~100之间所有奇数的和,打印“sum= 2500”。
	public static void main(String[] args) {
		int sum = 0; // 定义变量sum,用于记住和
		for (int i = 1; i <= 100; i++) {
			if (i % 2 == 0) { // i是一个偶数,不累加
				continue; // 结束本次循环
			}
			sum += i; // 实现sum和i的累加
		}
		System.out.println("sum = " + sum);
	}
}
// 上述代码中,使用for循环让变量i的值在1~100之间循环,在循环过程中,当i的值为偶数时,将执行continue语句结束本次循环,
// 进入下一次循环。当i的值为奇数时,sum和i进行累加,最终得到1~100之间所有奇数的和,打印“sum= 2500”。

2.6 猜数字案例

public class GuessNumber {
	public static void main(String[] args) {
		// 1.通过Random类中方法nextInt(),生成一个1-100之间的随机数
		int randomNumber = new Random().nextInt(100);
		System.out.println("随机数已生成!");
		// 2.输入猜的数字
		System.out.println("----请输入您猜的数字:----");
		Scanner sc = new Scanner(System.in);
		int enterNumber = sc.nextInt();
		// 3.通过while循环,进行猜数字对错判断
		// 猜对,跳出循环,游戏结束
		while (enterNumber != randomNumber) {
			// 猜错了,根据结果,给出提示,接着猜数字,游戏继续
			if (enterNumber > randomNumber) {
				// 如果猜大了,打印sorry,您猜大了!继续下一次循环
				System.out.println("sorry,您猜大了!继续下一次循环");
			} else {
				// 如果猜小了,打印sorry,您猜小了!继续下一次循环
				System.out.println("sorry,您猜小了!继续下一次循环");
			}
			// 输入猜的数字
			System.out.println("----请输入您猜的数字:----");
			enterNumber = sc.nextInt();
		}
		System.out.println("恭喜您,答对了!");
	}
}
	public static void main(String[] args) {
		// 1.通过Random类中方法nextInt(),生成一个1-100之间的随机数
		int randomNumber = new Random().nextInt(100);
		System.out.println("随机数已生成!");
		// 2.输入猜的数字
		System.out.println("----请输入您猜的数字:----");
		Scanner sc = new Scanner(System.in);
		int enterNumber = sc.nextInt();
		// 3.通过while循环,进行猜数字对错判断
		// 猜对,跳出循环,游戏结束
		while (enterNumber != randomNumber) {
			// 猜错了,根据结果,给出提示,接着猜数字,游戏继续
			if (enterNumber > randomNumber) {
				// 如果猜大了,打印sorry,您猜大了!继续下一次循环
				System.out.println("sorry,您猜大了!继续下一次循环");
			} else {
				// 如果猜小了,打印sorry,您猜小了!继续下一次循环
				System.out.println("sorry,您猜小了!继续下一次循环");
			}
			// 输入猜的数字
			System.out.println("----请输入您猜的数字:----");
			enterNumber = sc.nextInt();
		}
		System.out.println("恭喜您,答对了!");
	}
}

 

 

 

 

 

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值