随机数和数组
来源:互联网 发布:网络歌曲想问问你慢四 编辑:程序博客网 时间:2024/06/03 18:08
基础学习第四天了,今天的核心内容
1,随机数Random
2,数组
3,二维数组
一:随机数Random
概述
用于产生一个随机数使用步骤(和Scanner类似)
使用方法
导包
import java.util.Random;
创建对象
Random r = new Random();
获取随机数
int number = r.nextInt(10);
产生的数据在0到10之间,包括0,不包括10。
括号里面的10是可以变化的,如果是100,就是0-100之间的数据
例题
获取0-10之间的随机数
public class Text01Random {
public static void main(String[] args) {
// 创建对象
Random r = new Random();
for (int x = 0; x < 10; x++) {
// 获取随机数
int number = r.nextInt(10);
// 输出随机数
System.out.println("number:" + number);
}
System.out.println("--------------------");
// 如何获取到一个1-100之间的随机数呢?
int i = r.nextInt(100) + 1;
System.out.println("i:" + i);
}
}
需要大家注意一点,Random和Scanner一起在代码中出现时候要注意一个BUG,就是要分清是否讲两个语法都在代码中定义过变量,如果需要手动录入一个数字进行代码编辑时候,如果 没有对输入的数字提前进行打印提示,那么在全屏下运行该代码,会找不到控制台,所以要提前在eclipse里打开控制台,这样带代码RUN以后直接输入一个数字即可
用一个例子给大家分一下这个代码吧课上学的例题
publicclassDemo02Random {
publicstaticvoidmain(String[ ] args) {
// 系统产生一个随机数1-100之间的。
Random r=new Random();
intnumber =r.nextInt(100)+ 1;
while(true){
// 键盘录入我们要猜的数据
Scanner sc=new Scanner(System.in);
System.out.println("请输入你要猜的数字(1-100):");
intguessNumber =sc.nextInt();
// 比较这两个数据(用if语句)
if(guessNumber >number){
System.out.println("你猜的数据" +guessNumber+ "大了");
} elseif (guessNumber<number) {
System.out.println("你猜的数据" +guessNumber+ "小了");
} else{
System.out.println("恭喜你,猜中了");
break;
}
}
}
}
这里面的BUG再后续习题课时候分清讲解给大家,目前大家只要看到两个语法的用法就OK,保证以后打代码不会有乱套和BUG出现就好.
数组
那么数组到底是什么呢?有什么特点呢?两句话形容:
数组是存储多个变量(元素)的东西(容器)
这多个变量的数据类型要一致
数组的格式
格式1:数据类型[] 数组名;
格式2:数据类型数组名[];
初始化
Java中的数组必须先初始化,然后才能使用。
所谓初始化:就是为数组中的数组元素分配内存空间,并为每个数组元素赋值。
数组的初始化方式
动态初始化:初始化时只指定数组长度,由系统为数组分配初始值。
静态初始化:初始化时指定每个数组元素的初始值,由系统决定数组长度。
如果想访问数组内的元素,那么不能直接访问,需要通过栈内的数组地址,然后通过地址找到堆内的相关数组元素,
而数组内的元素都是有代号的,这个代号我们叫做索引,在索引使用中常常出现两种BUG,这两种BUG是
1 数组索引越界异常ArrayIndexOfBoundsException
访问到了数组中的不存在的索引时发生。
2空指针异常NullPointerException
数组引用没有指向对象,却在操作对象中的元素时。
为什么要记住这些小问题呢?
因为写程序不仅仅是把代码写出来,还包括出现问题后要能够及时的把问题解决。
而排错也应该是我们的基本功。所以,我们也应该记住一些常见的问题,以及出错原因和解决方案。
下面通过数组我们求一下下面数字的最大值
public classDemo08ArrayTest {
publicstaticvoidmain(String[] args) {
//定义数组
int[]arr = {12,98,45,73,60};
//定义参照物
intmax =arr[0];
//遍历数组,获取除了0以外的所有元素,进行比较
for(intx=1; x<arr.length;x++) {
if(arr[x] >max) {
max= arr[x];
}
}
System.out.println("数组中的最大值是:"+max);
}
}
这里将数组定义成一个静态数组,如果用之前的for循环也可以找到该题目答案,但是如果用数组去循环判断语法简单,代码也清晰.建议使用
感冒交叉感染了大家也要注意防止感冒啊,好难受,小白今天早点休息了,已经将今天的核心知识点就在这里阐述给大家了,希望其他小白也在看视频或者授课之后可以一起讨论.
- 随机数和数组
- PHP 数组操作 和 随机数
- C# 随机数 数组定义和初始化
- 随机数和伪随机数
- 随机数和伪随机数
- 随机数和随机数种子
- js的随机数函数和数组乱序函数
- 数组应用实例(生成并打印随机数和统计随机数的分布)
- RandArr 随机数填充数组
- 固定数组随机数
- 数组、时间、随机数
- php取数组随机数
- 面试:数组:产生随机数
- 固定数组随机数
- 随机数、随机下标数组
- java随机数Random, 数组
- 给数组赋随机数
- 随机数:真随机数和伪随机数
- 解决Matlab(R2016a) Sheffield GATBX遗传工具箱的一些问题
- Windows硬链接 软链接 符号链接 快捷方式
- STM32小白进阶之路----按键的模块化,低延时,高灵敏
- Android 使用开源库StickyGridHeaders来实现带sections和headers的GridView显示本地图片效果
- C++中的指针和引用
- 随机数和数组
- Spring(二)之配置
- MySQL宽字节注入漏洞分析
- linux下 消息中间件ActiveMQ整合spring笔记二 发消息
- Android 使用ContentProvider扫描手机中的图片,仿微信显示本地图片效果
- Spring(三)之自动装配、表达式
- 内部类
- Android 使用NineOldAndroids实现绚丽的ListView左右滑动删除Item效果
- VS2010打开2013项目