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);

 }

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

则会出现没有指针。

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

java随机数与数组的使用。的更多相关文章

  1. Java 随机数

    本章先讲解Java随机数的几种产生方式,然后通过示例对其进行演示. 广义上讲,Java中的随机数的有三种产生方式:(01). 通过System.currentTimeMillis()来获取一个当前时间 ...

  2. Java随机数

    本章先讲解Java随机数的几种产生方式,然后通过示例对其进行演示. 广义上讲,Java中的随机数的有三种产生方式:(01). 通过System.currentTimeMillis()来获取一个当前时间 ...

  3. java学习笔记 --- 数组

    一.Java的内存分配   A:栈内存: 存储局部变量,只要是在方法中定义的变量都是局部变量.一旦变量的生命周期结束该变量就被释放.   B:堆内存: 存储所有new出来的,及实体(对象),每一个实体 ...

  4. java 随机数高效生成

    分享牛,分享牛原创.近期去面试经常被问到java如何生产随机数,以及生成很大的字符串保证不能重复,还要考虑性能,之前本人面试别人的时候,可能不会问这个问题.既然这个java随机数问题经常被问到,那咱们 ...

  5. (转)Java随机数

    1 随机数的三种产生方式 本章先讲解Java随机数的几种产生方式,然后通过示例对其进行演示. 广义上讲,Java中的随机数的有三种产生方式: (01). 通过System.currentTimeMil ...

  6. JAVA学习笔记--数组初始化

    JAVA中,数组只是相同类型的.用一个标识符名称封装到一起的一个对象序列或基本类型数据序列.数组通过方括号下标操作符[]来定义和使用,要定义一个数组只需在类型名后面加上一个方括号即可,如: int[] ...

  7. Java反射遍历数组

    日志中有时候需要查看数组中的值,但是重载很多的打印函数,觉得很别扭.所以想通过反射,获取数组中的值,打印出来.Java提供了数组反射操作的类,之前没有关注过,提供的方法简单易用. public sta ...

  8. 慕课网-安卓工程师初养成-6-3 如何使用 Java 中的数组

    来源:http://www.imooc.com/code/1525 Java 中操作数组只需要四个步骤: 1. 声明数组 语法:  或者  其中,数组名可以是任意合法的变量名,如: 2. 分配空间 简 ...

  9. Java中的数组操作进阶

    package com.mi.array; import java.util.Arrays; /** * System.arraycopy(i, 0, j, 0, i.length);这种复制会覆盖目 ...

随机推荐

  1. 网络编程(学习整理)---1--(Tcp)实现简单的控制台聊天室

    1.简单的聊天室(控制台): 功能实现: 客户端和服务端的信息交流: 2.牵扯到的知识点: 这个我大概说一下,详细后面见代码! 1) 网络通讯的三要素 1. IP 2. 端口号. 3. 协议   2) ...

  2. 使用jQuery实现跨域提交表单数据

    我们在WEB开发中有时会遇到这种情况,比如要从A网站收集用户信息,提交给B网站处理,这个时候就会涉及到跨域提交数据的问题.本文将给您介绍如何使用jQuery来实现异步跨域提交表单数据.   在jQue ...

  3. App Store生存指南

    资格获取   如果已经有App Store开发帐号请跳过此节.   App Store的资格获取其实一直以来都不算难,和其它事情一样,需要的只是耐心.现在苹果对申请者的文书手续要求已经比几年前简化多了 ...

  4. bzoj1038: [ZJOI2008]瞭望塔

    Description 致力于建设全国示范和谐小村庄的H村村长dadzhi,决定在村中建立一个瞭望塔,以此加强村中的治安.我们将H村抽象为一维的轮廓.如下图所示 我们可以用一条山的上方轮廓折线(x1, ...

  5. wlan的QOS配置

    WLAN QoS配置 1.1  WLAN QoS简介 802.11网络提供了基于竞争的无线接入服务,但是不同的应用需求对于网络的要求是不同的,而原始的网络不能为不同的应用提供不同质量的接入服务,所以已 ...

  6. 运用MyEclipse插件(link方式注意点)

    Windows7 中 MyEclipse 安装位置下,有以下两个目录: MyEclipse 10 Common 注意点一 Common 下的子目录是 plugins 和 features : 而在 M ...

  7. BZOJ 1016 最小生成树计数

    Description 现在给出了一个简单无向加权图.你不满足于求出这个图的最小生成树,而希望知道这个图中有多少个不同的最小生成树.(如果两颗最小生成树中至少有一条边不同,则这两个最小生成树就是不同的 ...

  8. ibatis动态语句加and 和不加and

    <select id="queryGoodsGroupCodeName" parameterClass="String" resultClass=&quo ...

  9. ASP.NET最常用的页面生命周期事件

    PreInit:在页生命周期的早期阶段可以访问的事件.在PreInit事件后,将加载个性化信息和页主题. Init:在所有的控件都已初始化,且已应用所有外观设置后引发.使用该事件来读取或初始化控件属性 ...

  10. 由 char()函数返回的 ASCII字符集中的功能/控制字符

    如果在excel下的单元格写入公式:=“国际经济与贸易”&CHAR(10)&"401班"&CHAR(10)&"A组".则出现: ...