how2j.cn


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


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



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



步骤 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 Or  姿势不对,事倍功半! 点击查看做练习的正确姿势
首先创建一个长度是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浏览器 如果装有迅雷,播放视频呈现直接下载状态,请调整 迅雷系统设置-基本设置-启动-监视全部浏览器 (去掉这个选项)


答案-数组最小值
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公众号,关注后实时获知最新的教程和优惠活动,谢谢。


问答区域    
2019-11-14 改良简化版
有个小儿醒目




更改为循环赋值
public class Arrays {
    public static void main(String[] args) {
        int[] a = new int[5];//创建一个大小为5的数组,并用数组变量a来指向它
        int min = 100;

        for (int i = 0; i < 5; i++)
            a[i] = (int) (Math.random() * 100);//循环赋值
        System.out.println("数组中的各个随机数是:");

        for (int j = 0; j < a.length; j++) {
            System.out.println(a[j]);
            if (a[j] < min) {
                min = a[j];
            }
        }
        System.out.println("数组中最小的一个值为: " + min);
    }

}

							





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





2019-11-12 答题
jefxff




答题
package chapter09;

import java.util.Random;

public class ArrayTest {
    // 冒泡排序
    static void buildTemSortArray(int[] a){
        for (int i = 0; i < a.length-1; i++){
            for (int j = 0; j < a.length-1-i; j++){
                if (a[j] > a[j+1]){
                    int temp = a[j+1];
                    a[j+1] = a[j];
                    a[j] = temp;
                }
            }
        }
        System.out.println("Min: " + a[0] + "  Max: " + a[a.length-1]);
       // 输出已排序的临时数组
        for (int i = 0; i < a.length; i++ ){
            System.out.print(a[i] + ", ");
        }
    }

    public static void main(String[] args) {
       // 创建数组
        int[] a = new int[10];
       // 数组赋值
        for (int i = 0; i < a.length; i++){
            Random j = new Random();
            a[i] = j.nextInt(100);
        }
        // 输出数组元素
        for (int i = 0; i < a.length; i++ ){
            System.out.print(a[i] + ", ");
        }
        System.out.println();
        ArrayTest.buildTemSortArray(a);
    }
}

							


1 个答案

java-zj
答案时间:2019-11-14
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("本练习的目的是,找出最小的一个值: "); } }



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





2019-11-11 作业
2019-11-09 答案
2019-11-09 作业
2019-11-09 可以啦吗
2019-11-09 交作业
2019-11-07 111
2019-11-01 交作业
2019-10-31 敲键盘
2019-10-28 交作业
2019-10-28 交作业
2019-10-24 交作业
2019-10-23 交作业
2019-10-23 交作业---Hugo
2019-10-22 数组max
2019-10-13 最小值
2019-10-10 交作业
2019-10-07 作业
2019-10-03 站长,这里数组遍历的时候,应该a.length-1吧。a.length出现越界异常了
2019-10-01 博:交作业
2019-09-30 交作业
2019-09-29 JAVA 基础-数组-创建数组
2019-09-28 交作业
2019-09-26 交作业
2019-09-26 交作业
2019-09-21 作业
2019-09-21 大小值
2019-09-17 作业
2019-09-16 交作业
2019-09-10 简单粗暴方式,数据多了不实用
2019-09-06 作业
2019-09-06 来了老弟
2019-09-05 作业
2019-09-05 交作业
2019-09-04 作业
2019-09-03 作业
2019-09-02 作业
2019-08-30 交作业
2019-08-29 交作业
2019-08-27 数组最小值
2019-08-22 寻找数组最小元素作业
2019-08-21 作业
2019-08-21 作业
2019-08-20 交作业
2019-08-20 AD交作业【找出最小数】
2019-08-17 练习-数组最小值
2019-08-13 数组最小值
2019-08-11 作业
2019-08-08 关于求数组最小值有疑问
2019-08-07 作业
2019-08-06 交作业
2019-07-31 一个循环就可以搞定呀
2019-07-29 交作业
2019-07-28 交作业
2019-07-27 交作业
2019-07-27 交作业
2019-07-26 作业
2019-07-24 作业:用三元运算来比较大小。不过这种方式比较繁琐。如果多的话,估计要敲死人。
2019-07-23 简单就好
2019-07-23 交作业
2019-07-22 交作业
2019-07-21 交作业.
2019-07-20 提交作业
2019-07-20 提交作业
2019-07-20 交作业
2019-07-16 交作业
2019-07-14 交作业
2019-07-12 取最小值
2019-07-10 作业
2019-07-09 交作业-Z
2019-07-09 交作业咯
2019-07-09 作业
2019-07-09 作业
2019-07-07 作业简化
2019-07-05 交作业咯
2019-06-17 交作业了嗷
2019-06-14 交作业
2019-06-13 交作业-liu
2019-06-12 交作业
2019-06-11 分享一个随机二维数组的排序,一维数组个数随机,每个一维数组的长度和元素都随机
2019-06-11 交作业-数值最小值
2019-06-10 交作业
2019-06-08 交作业
2019-06-05 求指教
2019-05-25 作业
2019-05-24 个人答案
2019-05-20 交作业交作业
2019-05-19 交作业
2019-05-18 交作业
2019-05-17 作业打卡
2019-05-10 交作业!
2019-05-10 作业打卡
2019-05-01 交作业啦
2019-04-29 交作业
2019-04-28 ZZ交作业 创建数组