数组复习

今天遇到一道题求许多个数的平均值,按照之前的方法先定义许多个数,然后再求平均值,这样感觉很麻烦。这里就引入一种集合来解决这个麻烦——数组。

数组:用于储存多个相同类型数据的集合。

 上图中介绍了数组的要素,注意下标是从零开始的,下面来看一下怎么使用数组。

同基本数据类型一样,需要先定义数组,然后再初始化数组,最后使用数组。

/*
 * 数组
 */
public class IntArray {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//数组定义  数组类型[]数组名;
		int[] array;     //int array[];  这种定义方式不常用
		//动态初始化数组
		int[] intArray=new int[3];   //[]里面表示要存放数据的个数
		//赋值
		intArray[0]=1;
		intArray[1]=2;
		intArray[2]=3;
		//静态初始化数组
		int[] intArray1={1,2,3,4};   //创建数组的同时为每个元素赋值
		int len=intArray1.length;  //求数组长度
		System.out.println(len);

        int[] arr = new int[]{1,2,3};
	}
}

我们创建了数组,并且把数据存入到了数组中,接下来我们看一下怎么获取数组中的数据以及数组的应用。

/*
 * 遍历数组以及数组的应用
 * 因为数组中每个元素对应一个索引值且它们是有序的
 * 所以我们可以通过for循环来遍历数组
 */
public class GetArray {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		//遍历数组
		int[] intArray={1,2,3,4};
		int len=intArray.length;
		System.out.println("遍历数组");
		for(int i=0;i<len;i++){
			System.out.print(intArray[i]+" ");
		}
		System.out.println();
		//逆序打印数组      从最后一个元素开始遍历
		System.out.println("逆序打印数组");
		for(int i=len-1;i>=0;i--){
			System.out.print(intArray[i]+" ");
		}
		//逆置数组   逆置和逆序打印不一样。
		//逆置是使用一个方法将第一个元素和最后一个元素交换,以此交换。
		System.out.println();
		System.out.println("逆置数组");
		for(int start=0,end=len-1;start<=end;start++,end--){
			int temp=intArray[start];
			intArray[start]=intArray[end];
			intArray[end]=temp;
		}
		for(int i=0;i<len;i++){
			System.out.print(intArray[i]+" ");
		}
		//求几个同学的平均值
		System.out.println();
		double[]score={90,96,95,86,82,88,96};
		int length=score.length;
		double sum=0;
		for(int i=0;i<length;i++){
			sum=sum+score[i];
		}
		System.out.println("学生平均成绩为"+sum/length);
	}
}

 

数组中常见错误(一维数组)

1.int[] arr= new int(3);

2.int[] arr = new int[];

3.int[] arr = new int[3]{1,2,3}

4.int[] arr;   arr={1,2,3}   //不能这样使用  应该  arr = new int[3];

数组的长度不能改变:为什么?

因为数组再内存空间中的结构是一块连续的内存空间

二维数组的声明---包含:规则二维数组,不规则二维数组   (不管是哪种,初始化时第一个值必须确定)

联想学习:

1.javascript中的数组:js中的数组长度不固定,数据类型没有要求,长度是最后一个有值的

2.List集合  实现类 arraylist,linkedlist arraylist底层是数组实现,默认长度是10,第一次扩容是1.5倍,第二次是15的50%;linkedlist底层是链表实现

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值