java学习笔记(day10)

0x00 匿名对象

匿名对象的说明

创建对象的标准格式:
类名称 对象名 = new 类名称();

匿名对象就是只有右边的对象,没有左边的名字和赋值运算符。
格式:
new 类名称();

注意事项:
匿名对象只能使用唯一的一次,下次再用,不得不再创建一个新对象。

使用建议:
如果确定有一个对象只需要使用唯一的一次,就可以用匿名对象。

匿名对象作为方法的参数

代码如下:

package day10;
import java.util.Scanner;
public class Demo01 {   
public static void main(String[] args) {
//        Scanner sc = new Scanner(System.in);
//        int num = sc.nextInt();
//        System.out.println("键盘输入的是:"+num);
//        
/*       
使用一般方法写入参数        
Scanner sc = new Scanner(System.in);        
methodParam(sc);       
*/       
// 使用匿名对象作为方法的参数       
// methodParam(new Scanner(System.in));        
//使用匿名对象作为方法的返回值       
Scanner sc = methodReturn();        
int num = sc.nextInt();        
System.out.println("输入的数字是:"+num);    
}    
public static void methodParam(Scanner sc){        
int num = sc.nextInt();        
System.out.println("输入的数字是:"+num);    
}   
public static Scanner methodReturn(){        
return new Scanner(System.in);    
}
}

0x01 Random类的基本使用

1. 概述

Random类就是生成随即数的类。

2.基本使用

类的使用也是三个步骤:

  1. 导包。
    import java.util.Random;

  2. 创建。
    Random rand = new Random();

  3. 使用。
    获取一个随机的int数字(范围是int所有范围,有正负两种):int num = r.nextInt()

3.Random生成指定范围的随机数

获取一个随机的int数字(参数代表了范围,左闭右开区间):int num = r.nextInt(3)
这行代码其实代表了随即数的取值区间为[0,3),也就是0~2。

4.练习1:根据int变量n的值,来获取随机数,范围是[1,n],可以取到1也可以去到n。

package day10;
import java.util.Random;
/*
题目:根据int变量n的值,来获取随机数,范围是[1,n],可以取到1也可以取到n。 
*/
public class Demo02 {    
public static void main(String[] args) {        
      int n = 10;        
      Random r = new Random();        
      for (int i = 0; i < 11; i++) {            
            int result = r.nextInt(10) + 1;            
            System.out.println("随机数是:" + result);        
            }    
      }
}

练习2:猜随机数小游戏(限定次数和不限制次数)

package day10;
/*
题目:做一个猜数字小游戏。 
*/
import java.util.Random;
import java.util.Scanner;
public class Demo03 {    
public static void main(String[] args) {        
      Random r = new Random();        
      int result = r.nextInt(100) + 1;        
      Scanner sc = new Scanner(System.in);        

      // 不限制次数的猜数字游戏        
      while (true){            
            System.out.println("请输入你猜测的数字:");            
            int num = sc.nextInt();            
            if (num > result){                
                  System.out.println("太大了,请重试。");            
            } else if (num < result) {                
                  System.out.println("太小了,请重试。");            
            } else {                
                  System.out.println("恭喜,猜对了。");                      
                  break;            
            }        
      }        

      // 限制次数的猜数字游戏        
      for (int i = 0; i < 11; i++) {            
            System.out.println("请输入你猜测的数字:");            
            int num = sc.nextInt();            
            if (num > result){                
                  System.out.println("太大了,请重试。你还有" + (10 - i) + "次机会。");            
            } else if (num < result) {                
                  System.out.println("太小了,请重试。你还有" + (10 - i) + "次机会。");            
            } else {                
                  System.out.println("恭喜,猜对了。");                
                  break;            
                  }        
            }    
      }
}
文章未经本人允许,禁止转载。 有技术问题,可加好友讨论。 联系方式:QQ:MjgxMjMxODAzNQ== 微信:bzNycjByLVhpYW9taW5n
原文地址:https://www.cnblogs.com/Xiaoming0/p/13775625.html