Java基础(四)

Random(随机数)

作用产生一个随机数

1.导包
import java.util.Random;
2.创建对象
Random r=new Random();
3.获取随机数
int number=r.nextInt(10);
产生的数据在0-10之间,包括0,不包括10;
练习:如何获取1-100之间的随机数

Random r=new Random();
		int num=r.nextInt(100)+1;
		System.out.println(num);

练习2:猜数字小游戏案例,系统产生一个1-100之间的随机数,猜出这个数据是多少

Scanner sc=new Scanner(System.in);
		Random r= new Random();
		System.out.println("请输入你猜的数据");
		int guess=sc.nextInt();
		int num=r.nextInt(100)+1;
		if(guess>num) {
			System.out.println("你输入的数据较大");
		}
		else if(guess<num) {
			System.out.println("你输入的数据较小");
			
			
		}else {
			System.out.println("你输入的数据为"+guess+"与随机生成的数据"+num+"相等");
		}

数组

数组是存储多个元素的容器
多个变量的类型要一致
定义格式1.数据类型[] 数组名;(推荐)
2. 数据类型 数组名 [];

数组初始化:
为数组开辟内存空间,并未数组中的每个元素赋予初值
a.动态初始化 只给出长度,由系统给出初始化值
数据类型 [] 数组名= new 数据类型 [数组长度];
b.静 态初始化 给出初始化值,由系统决定长度
数据类型[] 数组名 =new 数据类型[]{元素1,元素2…};
简化写法: int [] arr={1,3,2};
通过数组名和编号的配合使用我们就可以获取指定编号的元素值
编号方法:索引
Java内存分配
栈 存储局部变量<使用完毕立即回收>
堆 存储new出来的东西(实体,对象)<每个对象都有地址值
每一个对象的数据都有默认值 byte short int long 0
float double 0.0
char ‘\u0000’
boolean false
使用完毕后,会在垃圾回收器空闲的时候回收>
方法区
本地方法区(和系统相关)
寄存器(给cpu使用)
练习1:定义一个数组,输出数组名及元素。然后给数组中的元素赋值,再次输出数组名及元素

int []arr=new int [3];
		System.out.println(arr);
		System.out.println(arr[0]);
		System.out.println(arr[1]);
		System.out.println(arr[2]);
		System.out.println("------------------------------------");
		 arr[0]=100;
		 arr[1]=1000;
		 arr[2]=111;
		 System.out.println(arr);
		 System.out.println(arr[0]);
		 System.out.println(arr[1]);
		 System.out.println(arr[2]);
		

练习2:定义两个数组,分别输出数组名及元素,然后分别给数组中的元素赋值,分别再次输出数组名及元素

int []arr=new int[3];
		int []arr1=new int[4];
		System.out.println(arr);
		System.out.println(arr[0]);
		System.out.println(arr[1]);
		System.out.println(arr[2]);
		System.out.println("+++++++++++++++++++++++++++++++++++++++++++++++");
		System.out.println(arr1);
		System.out.println(arr1[0]);
		System.out.println(arr1[1]);
		System.out.println(arr1[2]);
		System.out.println(arr1[3]);
		arr[1]=100;
		arr[0]=66;
		arr1[0]=99;
		arr1[2]=88;
		System.out.println(arr);
		System.out.println(arr[0]);
		System.out.println(arr[1]);
		System.out.println(arr[2]);
		System.out.println("+++++++++++++++++++++++++++++++++++++++++++++++");
		System.out.println(arr1);
		System.out.println(arr1[0]);
		System.out.println(arr1[1]);
		System.out.println(arr1[2]);
		System.out.println(arr1[3]);
		

练习3:定义两个数组,先定义第一个数组,赋值,在输出,然后定义两个数组的时候把第一个数组的地址赋值给第二个数组。然后给第二个数组赋值,再次输出两个数组的名及元素
int [] arr2 =arr

int[]arr=new int[3];
		arr[0]=10;
		arr[2]=11;
		System.out.println(arr);
		System.out.println(arr[0]);
		System.out.println(arr[1]);
		System.out.println(arr[2]);
		System.out.println("-----------------------------------------------");
		int []arr1=arr;
		arr1[0]=1111;
		arr1[1]=2222;
		arr1[2]=8888;
		System.out.println(arr);
		System.out.println(arr[0]);
		System.out.println(arr[1]);
		System.out.println(arr[2]);
		System.out.println(arr1);
		System.out.println(arr1[0]);
		System.out.println(arr1[1]);
		System.out.println(arr1[2]);

数组操作过程中的常见小问题
1.数组索引越界
ArrayIndexOutOfBoundsException
访问到了数组中不存在的索引时发生
2.空指针异常
NullPointerException
数组引用没有指向对象,却在操作对象中的元素时
练习1:数组遍历(依次输出数组中的每一个元素)
获取数值长度:数值名.length
练习2:数组获取最值(获取数组中的最大值最小值)
二维数组一维数组的数组
定义格式
1.数据类型[][] 数组名;(推荐)
2.数据类型 数组名[] [];
3.数据类型[] 数组名[];
初始化
动态初始化
数据类型[][] 数组名=new 数据类型[m][n];
m表示的是二位数组中一维数组的个数
n表示的是一维数组中的元素个数
静态初始化
数据类型[][] 数组名 =new 数据类型[][]{{元素…},{元素…},{}…};
练习:二维数组的遍历

	int[][]arr=new int[][] {{1,2,3},{4,5,6},{7,8,9}};
		for(int i=0;i<3;i++) {
			for(int j=0;j<3;j++) {
				System.out.print(arr[i][j]+"         ");
			}
		
	}

带ln输出换行
不带ln不换行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值