慢慢学习,然后惊呆所有人(数组)

Posted 韶光不负

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了慢慢学习,然后惊呆所有人(数组)相关的知识,希望对你有一定的参考价值。

在学习Java的过程中,小编认为数组是非常有用的,所以小编下面就来看看数组的学习,废话不多说,上干货!

什么叫数组?

一系列数据总体的组合

如何定义数组?

数据类型  [ ]  数组名称  =  new  数据类型  [数组的大小]

//数组声明方式
int arr[] = new int[4];
int []arr1 = new int[4];
//初始化数组
int [] arr2 = new int[]{1,2,3,4,5,6,7,8};
//方便写法
int [] arr3 = {1,2,3,5,2,4,3,4,2};
public class Text {
	public static void main(String[] args){
		//定义一个数组
		//开辟一个大小为10的数组,类型是整数
		int [] name = new int[4];
		//给数组赋值,从0开始,最大为是数组-1,当超出会显示数组下标越界
		name[0]=30;
		name[2]=150;
		name[3]=33;
		//name[4]=0;当超出会显示数组下标越界
		//访问数组中的值,从0开始
		System.out.println(name[0]);
		System.out.println(name[1]); 
		//如果类型为int没有给值为0,布尔类型为None
		System.out.println(name[2]);
		System.out.println(name[3]);
		//查看数组的大小
		System.out.println(name.length);
	}
}

改进循环遍历

import java.util.Scanner;
public class Text {
	public static void main(String[] args){
		//定义一个数组
        //方式2
        //类型 名称[]  = new 类型[大小];
		//开辟一个大小为10的数组,类型是整数
		int [] name = new int[4];
		//以遍历发式,添加数组内容
		Scanner sc = new Scanner(System.in);
		for (int i = 0;i < name.length;i++){
			System.out.println( "请输入"+(i+1)+"成绩:");
			//数组赋值
			name[i]=sc.nextInt();
		}
		for(int i=0;i<name.length;i++){
			System.out.println(name[i]);
		}
		//查看数组的大小
		
	}
}

数组特点

1,数组是内存中一串连续的空间

2,数组只能存储一种数据类型

3,在Java中必须定义大小,不能随便修改

下标越界的错误

在我们小白中非常常见(所以要多多注意)

小练习

给定一个大小为10的数组,控制台上输入值,求平均值,总值。

import java.util.Scanner;
public class Text {
	public static void main(String[] args){
		//定义一个数组
		//开辟一个大小为10的数组,类型是dounle
		double [] arr = new double[10];
		//以遍历发式,添加数组内容
		Scanner sc = new Scanner(System.in);
		for (int i = 0;i < arr.length;i++){
			System.out.println( "请输入第"+(i+1)+"数组的值:");
			//数组赋值
			arr[i]=sc.nextInt();
		}
		double x = sum(arr);
		double y = avg(arr);
		System.out.println("数组的总和为:"+x);
		System.out.println("数组的平均值为:"+y);
	}
	public static double sum(double []arr){
		double sum = 0;
		for(int i = 0;i<arr.length;i++){	
			sum +=arr[i]; 
		}
		return sum;
	}
	public static double avg(double []arr){
		double sum = 0;
		for(int i = 0;i<arr.length;i++){
			sum +=arr[i]; 
		}
		double avg = sum/arr.length;
		return avg;
	}
}

出现问题(只能输入整数,不能是小数)

改进方法(将arr[i]=sc.nextInt();改为arr[i]=sc.nextDouble();)

import java.util.Scanner;
public class Text {
	public static void main(String[] args){
		//定义一个数组
		//开辟一个大小为10的数组,类型是dounle
		double [] arr = new double[10];
		//以遍历发式,添加数组内容
		Scanner sc = new Scanner(System.in);
		for (int i = 0;i < arr.length;i++){
			System.out.println( "请输入第"+(i+1)+"数组的值:");
			//数组赋值
			arr[i]=sc.nextDouble();
		}
		double x = sum(arr);
		double y = avg(arr);
		System.out.println("数组的总和为:"+x);
		System.out.println("数组的平均值为:"+y);
	}
	public static double sum(double []arr){
		double sum = 0;
		for(int i = 0;i<arr.length;i++){	
			sum +=arr[i]; 
		}
		return sum;
	}
	public static double avg(double []arr){
		double sum = 0;
		for(int i = 0;i<arr.length;i++){
			sum +=arr[i]; 
		}
		double avg = sum/arr.length;
		return avg;
	}
}

现象:

以上是关于慢慢学习,然后惊呆所有人(数组)的主要内容,如果未能解决你的问题,请参考以下文章

慢慢学习,然后惊呆所有人(五,函数,附加小练习)

慢慢学习,然后惊呆所有人(六 , 面向对象,二,构造函数)

慢慢学习,然后惊呆所有人(七 IDEA的介绍与安装(Java集成开发工具,超详细!)

慢慢学习,然后惊呆所有人(八,异常)

慢慢学习,然后惊呆所有人(六 面向对象)

慢慢学习,然后惊呆所有人(五 函数的重载)