how2j.cn


工具版本兼容问题
数组是一个固定长度的,包含了相同类型数据的 容器


本视频是解读性视频,所以希望您已经看过了本知识点的内容,并且编写了相应的代码之后,带着疑问来观看,这样收获才多。 不建议一开始就观看视频



8分35秒
本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器



步骤 1 : 声明数组   
步骤 2 : 创建数组   
步骤 3 : 访问数组   
步骤 4 : 数组长度   
步骤 5 : 练习-数组最小值   
步骤 6 : 答案-数组最小值   

int[] a; 声明了一个数组变量。
[]表示该变量是一个数组
int 表示数组里的每一个元素都是一个整数
a 是变量名
但是,仅仅是这一句声明,不会创建数组

有时候也会写成int a[]; 没有任何区别,就是你看哪种顺眼的问题
public class HelloWorld { public static void main(String[] args) { // 声明一个数组 int[] a; } }
public class HelloWorld {
	public static void main(String[] args) {
		// 声明一个数组
		int[] a;
	}
}
创建数组的时候,要指明数组的长度。
new int[5]
引用概念:
如果变量代表一个数组,比如a,我们把a叫做引用
与基本类型不同
int c = 5; 这叫给c赋值为5
声明一个引用 int[] a;
a = new int[5];
让a这个引用,指向数组
创建数组
public class HelloWorld { public static void main(String[] args) { //声明一个引用 int[] a; //创建一个长度是5的数组,并且使用引用a指向该数组 a = new int[5]; int[] b = new int[5]; //声明的同时,指向一个数组 } }
public class HelloWorld {
	public static void main(String[] args) {
		//声明一个引用
		int[] a; 
		//创建一个长度是5的数组,并且使用引用a指向该数组
		a = new int[5];
		
		int[] b = new int[5]; //声明的同时,指向一个数组
		
	}
}
数组下标基0
下标0,代表数组里的第一个数
访问数组
public class HelloWorld { public static void main(String[] args) { int[] a; a = new int[5]; a[0]= 1; //下标0,代表数组里的第一个数 a[1]= 2; a[2]= 3; a[3]= 4; a[4]= 5; } }
public class HelloWorld {
	public static void main(String[] args) {
		int[] a; 
		a = new int[5];
		
		a[0]= 1;  //下标0,代表数组里的第一个数
		a[1]= 2;
		a[2]= 3;
		a[3]= 4;
		a[4]= 5;
	}
}
.length属性用于访问一个数组的长度
数组访问下标范围是0到长度-1
一旦超过这个范围,就会产生数组下标越界异常
数组长度
public class HelloWorld { public static void main(String[] args) { int[] a; a = new int[5]; System.out.println(a.length); //打印数组的长度 a[4]=100; //下标4,实质上是“第5个”,即最后一个 a[5]=101; //下标5,实质上是“第6个”,超出范围 ,产生数组下标越界异常 } }
public class HelloWorld {
	public static void main(String[] args) {
		int[] a; 
		a = new int[5];
		
		System.out.println(a.length); //打印数组的长度
		
		a[4]=100; //下标4,实质上是“第5个”,即最后一个 
		a[5]=101; //下标5,实质上是“第6个”,超出范围 ,产生数组下标越界异常
		
	}
}
步骤 5 :

练习-数组最小值

edit  姿势不对,事倍功半! 点击查看做练习的正确姿势
首先创建一个长度是5的数组
然后给数组的每一位赋予随机整数
通过for循环,遍历数组,找出最小的一个值出来

0-100的 随机整数的获取办法有多种,下面是参考办法之一:

(int) (Math.random() * 100)

Math.random() 会得到一个0-1之间的随机浮点数,然后乘以100,并强转为整型即可。
public class HelloWorld { public static void main(String[] args) { int[] a = new int[5]; a[0] = (int) (Math.random() * 100); a[1] = (int) (Math.random() * 100); a[2] = (int) (Math.random() * 100); a[3] = (int) (Math.random() * 100); a[4] = (int) (Math.random() * 100); System.out.println("数组中的各个随机数是:"); for (int i = 0; i < a.length; i++) System.out.println(a[i]); System.out.println("本练习的目的是,找出最小的一个值: "); } }
public class HelloWorld {
	public static void main(String[] args) {
		int[] a = new int[5];
		a[0] = (int) (Math.random() * 100);
		a[1] = (int) (Math.random() * 100);
		a[2] = (int) (Math.random() * 100);
		a[3] = (int) (Math.random() * 100);
		a[4] = (int) (Math.random() * 100);
		
		System.out.println("数组中的各个随机数是:");
		for (int i = 0; i < a.length; i++) 
			System.out.println(a[i]);
		
		System.out.println("本练习的目的是,找出最小的一个值: ");
	}
}
步骤 6 :

答案-数组最小值

edit
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
在查看答案前,尽量先自己完成,碰到问题再来查看答案,收获会更多
查看本答案会花费3个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
查看本答案会花费3个积分,您目前总共有点积分。查看相同答案不会花费额外积分。 积分增加办法 或者一次性购买JAVA 基础总计0个答案 (总共需要0积分)
账号未激活 账号未激活,功能受限。 请点击激活
本视频是解读性视频,所以希望您已经看过了本答案的内容,带着疑问来观看,这样收获才多。 不建议一开始就观看视频

3分49秒 本视频采用html5方式播放,如无法正常播放,请将浏览器升级至最新版本,推荐火狐,chrome,360浏览器。 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)。 chrome 的 视频下载插件会影响播放,如 IDM 等,请关闭或者切换其他浏览器


答案-数组最小值
public class HelloWorld { public static void main(String[] args) { int[] a = new int[5]; a[0] = (int) (Math.random() * 100); a[1] = (int) (Math.random() * 100); a[2] = (int) (Math.random() * 100); a[3] = (int) (Math.random() * 100); a[4] = (int) (Math.random() * 100); System.out.println("数组中的各个随机数是:"); for (int i = 0; i < a.length; i++) System.out.print(a[i] + " "); System.out.println(); int min = 100; for (int i = 0; i < a.length; i++) { if( a[i] < min ) min = a[i]; } System.out.println("找出来的最小数值是:" +min); } }


HOW2J公众号,关注后实时获知最新的教程和优惠活动,谢谢。


问答区域    
2021-07-04 无从下手的话就添加一个最小的初始值,有了最小初始值这把大剑,一刀一个小朋友
白日梦家




小习题:获取随机5个100以内的整数并找出最小值
public class Test {
    public void GetArrayAndCount(){
        int[] a ;
        a = new int[5];
        for (int i = 0;i < a.length;i++){
            a[i] = (int)(Math.random() * 100);
            System.out.print(a[i] + " ");
        }

        int min = 100;
        for (int i = 0;i < a.length ;i++){
            if (a[i] < min){
                min = a[i];
            }
        }
        System.out.println("最小值为" + min);
    }

    public static void main(String[] args) {
        Test test = new Test();
        test.GetArrayAndCount();
    }
}

							


17 个答案

YzzY22411
答案时间:2021-09-12
瘋狂的豬腰子
答案时间:2021-08-21
保持良好的编程习惯,主函数保持简洁

保持微笑
答案时间:2021-08-14
设定好一个很大的最小值,然后采用for循环生成数组中的值,比较最小值跟数组中的值大小

fszs
答案时间:2021-08-13
2021.8.13

z2910488937
答案时间:2021-08-08
李庚希
答案时间:2021-08-03
package test; public class Test16 { public static void main(String[] args) { // TODO Auto-generated method stub int []a=new int[5]; int min=0; for(int i=0;i<a.length;i++) { a[i]=(int)(Math.random()*100); if(a[i]>min) min=a[i]; System.out.println(a[i]); } System.out.println(min); } }

2316320815
答案时间:2021-07-31
public static void main(String[] args) { int a[]=new int[5]; a[0]=(int)(Math.random()*100); a[1]=(int)(Math.random()*100); a[2]=(int)(Math.random()*100); a[3]=(int)(Math.random()*100); a[4]=(int)(Math.random()*100); int mxn=a[0]; int min=a[0]; for (int i=0;i<a.length;i++){ System.out.print(a[i]+"\t"); } System.out.println(); for (int i=0;i<a.length;i++){ if (a[i]>mxn){ mxn=a[i]; } if (a[i]<min){ min=a[i]; } } System.out.println(min); System.out.println(mxn); }

tjy0429tjy
答案时间:2021-07-26
public class Arrays01 { public static void main(String[] args) { int[] a=new int[4]; a[0]=3; a[1]=0; a[3]=7; a[2]=5; //第一个循环控制n-1趟排序 for(int i=0;i<a.length-1;i++) { //第二个循环控制每次要比较的元素个数n-1 for(int j=0;j<a.length-i-1;j++) { if(a[j]>a[j+1]) { int flag=a[j]; a[j]=a[j+1]; a[j+1]=flag; } } } for( int i=0;i<a.length;i++){ System.out.println(a[i]); } System.out.println("最小值是:"+a[0]); System.out.println("数组长度是:"+a.length); } }

湘南靓仔
答案时间:2021-07-23
一条双拼小咸鱼
答案时间:2021-07-20
Terry11
答案时间:2021-07-18
KEY的航行日记
答案时间:2021-07-15
public class min { public static void main(String[] args) { int[] a = new int[5]; for (int i = 0; i < a.length; i++) { a[i] = (int) (Math.random() * 100); } int temp = a[1]; for (int i = 0; i < a.length; i++) { if(temp > a[i]) temp = a[i]; } System.out.println("最小值为:" + temp); } }

zxcsw
答案时间:2021-07-11
首先创建一个长度是5的数组 然后给数组的每一位赋予随机整数 通过for循环,遍历数组,找出最小的一个值出来

zxcsw
答案时间:2021-07-10
猫王
答案时间:2021-07-10
public void method2() { int[] a = new int[5]; a[0] = (int) (Math.random() * 100); a[1] = (int) (Math.random() * 100); a[2] = (int) (Math.random() * 100); a[3] = (int) (Math.random() * 100); a[4] = (int) (Math.random() * 100); System.out.println("数组中的各个随机数是:"); for (int i = 0; i < a.length; i++) System.out.println(a[i]); System.out.println("本练习的目的是,找出最小的一个值: "); int min = a[0];int ok; for (int j=1;j<=4;j++) { if(a[j]<min) { ok=a[j]; a[j]=min; min=ok; } } System.out.println(min); }

星空9975
答案时间:2021-07-08
Candela
答案时间:2021-07-08



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2021-05-11 我的答案
刚刚




我的
package 数组;

public class first {
	public static void main(String[] args) {
		
		int[] arr1=new int[5];
		for(int i=0;i<arr1.length;i++){
			arr1[i] =(int)(Math.random()*100);
			System.out.print(arr1[i]+"  ");
		}
		System.out.println();
		int min = arr1[0];
		for(int j = 0;j<arr1.length;j++){
			
			if (min>arr1[j]){
				min=arr1[j];
			}
				
		}
		System.out.println(min);
	
	}

}

							


23 个答案

20041226
答案时间:2021-09-22
练习答案

scdrhyh
答案时间:2021-09-12

15769217231wbd
答案时间:2021-09-04
package xian; public class text03 { public static void main(String[] args) { int a[] = new int[5]; a[0] = (int) (Math.random() * 100); a[1] = (int) (Math.random() * 100); a[2] = (int) (Math.random() * 100); a[3] = (int) (Math.random() * 100); a[4] = (int) (Math.random() * 100); int MIN = a[0]; for (int i = 0; i < a.length; i++) { if (MIN > a[i]) { MIN = a[i]; } System.out.println("数组中的随机数是:" + a[i]); } System.out.println("最小数是:" + MIN); } }

永不停歇
答案时间:2021-08-25
package 数组最小值问题; public class smallest { public static void main(String[] args) { int[] a = new int[5]; a[0] = (int)(Math.random()*100); a[1] = (int)(Math.random()*100); a[2] = (int)(Math.random()*100); a[3] = (int)(Math.random()*100); a[4] = (int)(Math.random()*100); for (int i = 0; i < a.length; i++) { System.out.println("该数组为:"+a[i]); } for(int i=0;i<a.length-1;i++) { for(int j=0;j<a.length-1;j++) { if(a[j+1]<a[j]) { int temp = a[j]; a[j] = a[j+1]; a[j+1] = temp; } } } System.out.println("数组排序后为:"+a[0]+","+a[1]+","+a[2]+","+a[3]+","+a[4]); System.out.println("数组中最小值为:"+a[0]); } }

永不停歇
答案时间:2021-08-25
package 数组最小值问题; public class smallest { public static void main(String[] args) { int[] a = new int[5]; a[0] = (int)(Math.random()*100); a[1] = (int)(Math.random()*100); a[2] = (int)(Math.random()*100); a[3] = (int)(Math.random()*100); a[4] = (int)(Math.random()*100); for(int i=0;i<=100;i++) { for(int j=0;j<=i-1;j++) { if(a[i]<a[j]) { int temp = a[j]; a[i] = a[j]; a[i] = temp; } } break; } System.out.println("数组中最小值为:"+a[0]); } }

Zcoolboy
答案时间:2021-08-09
wawbysys0617
答案时间:2021-07-31
第一步 创建数组 第二步 随机数赋值 第三步 冒泡排序,升序排列 第四步 输出数组,最小值为a[0]

湘南靓仔
答案时间:2021-07-23
Eating_King
答案时间:2021-07-16
package HelloWorld; public class ArraryMin { public static void main(String[] args) { int [] a=new int [5]; for(int i=0;i<5;i++) { a[i]=(int)(Math.random()*100); System.out.println(a[i]); } } }

解憂
答案时间:2021-07-13
public class ArrayDemo { public static void main(String[] args) { int[] temp = new int[5]; int min = 100; for(int i = 0; i < temp.length; i++) { temp[i] = (int) (Math.random() * 100); System.out.println("获取的随机整数为:" + temp[i]); if(temp[i] < min) { min = temp[i]; } } System.out.println("最小的一个值为:" + min); } }

爱如少年_
答案时间:2021-07-09
public class ShuZu { public static void main(String[] args) { int[] arr = new int[]{24, 41, 22, 19, 55}; int b = 100; System.out.println("数组中各个值是"); for (int i = 0; i < arr.length; i++) { System.out.println(arr[i]); if(b>arr[i]) { b=arr[i]; } } System.out.println("最小的值是"+b); }}

光年
答案时间:2021-06-29
郭垣榈川
答案时间:2021-06-29
elon8668
答案时间:2021-06-28
程序员蔡徐坤
答案时间:2021-06-26
K_G
答案时间:2021-06-19
Ljk11225
答案时间:2021-06-16
int[] arr = new int[5]; arr[0] = (int) (Math.random() * 100); arr[1] = (int) (Math.random() * 100); arr[2] = (int) (Math.random() * 100); arr[3] = (int) (Math.random() * 100); arr[4] = (int) (Math.random() * 100); int temp = arr[0]; for (int i = 0; i < arr.length; i++) { System.out.println(arr[i]); } for (int i = 0; i < arr.length; i++) { if (temp < arr[i]){ temp = arr[i]; } } System.out.println(temp); }

用户名
答案时间:2021-06-07
唐飞
答案时间:2021-06-05
package cn.itcast.day08.demo01; public class Demo01Random { public static void main(String[] args) { int[] a=new int [5]; a[0]=(int)(Math.random()*100); a[1]=(int)(Math.random()*100); a[2]=(int)(Math.random()*100); a[3]=(int)(Math.random()*100); a[4]=(int)(Math.random()*100); System.out.println("第一个随机数是:"+a[0]); System.out.println("第二个随机数是:"+a[1]); System.out.println("第三个随机数是:"+a[2]); System.out.println("第四个随机数是:"+a[3]); System.out.println("第五个随机数是:"+a[4]); int temp=a[0]; int c; for (int i = 0; i < 5; i++) { // temp=temp>=a[i]?a[i]:temp; if (a[i]<=temp){ c=a[i];temp=c;a[i]=temp; } } System.out.println("最小的数是"+temp); } }

口-口
答案时间:2021-05-25
htjvq
答案时间:2021-05-25
大屁孩不放屁
答案时间:2021-05-22
111

无限苦肉盖神
答案时间:2021-05-16



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到





2021-05-11 java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5数组越界
2021-05-10 上面两个代码
2021-05-08 定义两个二维数组,用随机数赋值,并输出数组元素值 。


提问太多,页面渲染太慢,为了加快渲染速度,本页最多只显示几条提问。还有 140 条以前的提问,请 点击查看

提问之前请登陆
提问已经提交成功,正在审核。 请于 我的提问 处查看提问记录,谢谢
关于 JAVA 基础-数组-创建数组 的提问

尽量提供截图代码异常信息,有助于分析和解决问题。 也可进本站QQ群交流: 496725845
提问尽量提供完整的代码,环境描述,越是有利于问题的重现,您的问题越能更快得到解答。
对教程中代码有疑问,请提供是哪个步骤,哪一行有疑问,这样便于快速定位问题,提高问题得到解答的速度
在已经存在的几千个提问里,有相当大的比例,是因为使用了和站长不同版本的开发环境导致的,比如 jdk, eclpise, idea, mysql,tomcat 等等软件的版本不一致。
请使用和站长一样的版本,可以节约自己大量的学习时间。 站长把教学中用的软件版本整理了,都统一放在了这里, 方便大家下载: https://how2j.cn/k/helloworld/helloworld-version/1718.html

上传截图