java随机数与数组的使用。

时间:2023-12-16 19:12:02

java随机数与数组的使用。   

一:题目

java随机数与数组的使用。

二 代码:

 public class Students {
    int number;  // 学号
    int State ;   // 年级
    int Score ;    // 成绩
    
    
 public Students(int number, int state, int score) {
        super();
        this.number = number;
        State = state;
        Score = score;
    }

public static void main(String[] args)
 {
     Students sds[]=new Students[20];
      
     for(int i=0;i<sds.length;i++)
     {    
        
    
          sds[i]=new Students(i+1,(int)(Math.random()*3+1),(int)(Math.random()*100));
          if((int)(Math.random()*3+1)==3)
          {
          System.out.println("学号是:"+(i+1)+" ,年级:"+ 3
                  +",成绩:"+(int)(Math.random()*100));
          }
          
        
           
        
        
        
     }
       // 求number的值
     for(int i=0;i<20;i++)
     {
        //System.out.println(sds[i]);  //此时是一个空数组,所以输出的结果就是null
     }
    
     // 求随机数的用法,年级要求在1~3之间
      
     for(int i=0;i<20;i++)
     {
         // 随机数Math.random(),产生的数是在0~1之间。
        // System.out.println((int)(Math.random()*3+1));
     }
    
     //求成绩
     /*
     for(int i=0;i<20;i++)
     {
         System.out.println((int)(Math.random()*100));
     }
     */
    
    
    
    
    
 }
}

三:分析

   1.首先是考虑如何创建一个数组,创建数组可以是一个引用型数据和基本型数据类型。而这里是引用型数据类型。涉及到引用型数据类型时要考虑到构造方法。而基本型数据则不一样。

  2.就是对随机数的应用。一般会用到Math.random()

  for(int i=0;i<20;i++)
     {
         // 随机数Math.random(),产生的数是在0~1之间。
        // System.out.println((int)(Math.random()*3+1));
     }

 注意: 用到随机数Math.random时,产生的数据在0~1之间,如果先要1~3的数据需要对Math.random()进行更改。

for(int i=0;i<20;i++)

 {

 System.out.println(sds[i].number);

 }

代码这样则会保错的。错误之处如图

java随机数与数组的使用。

则会出现没有指针。

Students sds[]=new Students[20]; 是基于学生类Students 而创建的数组,不是基本的数据类型的数组。所以会报错。