zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    1373:鱼塘钓鱼(fishing)
    1261:【例9.5】城市交通路网
    1259:【例9.3】求最长不下降序列
    1260:【例9.4】拦截导弹(Noip1999)
    1258:【例9.2】数字金字塔
    1261:【例9.5】城市交通路网
    1260:【例9.4】拦截导弹(Noip1999)
    1259:【例9.3】求最长不下降序列
    1257:Knight Moves
    [HAOI2008]硬币购物(动态规划、容斥、搜索)
  • 原文地址:https://www.cnblogs.com/Xiaoming0/p/13775625.html
Copyright © 2011-2022 走看看