• 13_数组


    数组

    概念:一组连续的存储空间,存储多个相同数据类型的值

    特点

    1. 类型相同

    2. 长度固定

    • 数组中的每个数据格被称为“数组元素”
    • 对每个元素进行赋值或取值的操作被称为“元素的访问”
    • 访问元素时,需要使用“下标”(从0开始,依次+1,自动生成)

    访问的语法

    赋值:数组名[下标] = 值;//a[0] = 10;

    取值:数组名[下标];//a[0];

    数组的遍历:

    从头至尾,逐一对数组的每个元素进行访问

    题目一:创建长度为5的数组并遍历

    public class TestCreateArray{
    	
    	public static void main(String[] args){
    		
    		int[] a = new int[5];//在内存中创建长度为5的整数数组
    		
    		a[0] = 1;
    		a[1] = 2;
    		a[2] = 3;
    		a[3] = 4;
    		a[4] = 5;
    		
    		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]);
    		
    		for(int i = 0; i < a.length; i++){
    			System.out.println(a[i]);
    		}
    		
    	}
    }
    

    数组默认值:

    • 整数:0
    • 小数:0.0
    • 字符:u0000
    • 布尔:false
    • 其他:null

    题目二:数组默认值

    public class TestDefaultValue{
    	
    	public static void main(String[] args){
    		
    		int[] a = new int[5];
    		
    		for(int i = 0; i < a.length; i++){
    			System.out.println(a[i]);
    		}
    		
    		double[] b = new double[5];
    		
    		for(int i = 0; i < b.length; i++){
    			System.out.println(b[i]);
    		}
    		
    		String[] strs = new String[4];
    		
    		for(int i = 0; i < strs.length; i++){
    			System.out.println(strs[i]);
    		}
    	}
    }
    

    数组创建语法:

    1. 先声明、再分配空间:
    • 数据类型[] 数组名;
    • 数组名 = new 数组类型[长度];
    1. 声明并分配空间:
    • 数据类型[] 数组名 = new 数组类型[长度];
    1. 声明并赋值(繁):
    • 数据类型[] 数组名 = new 数据类型[]{value1, value2, value3, ...}
    1. 声明并赋值(简):
    • 数据类型[] 数组名 = {value1, value2, value3, ...}//显示初始化,不可换行

    题目三:创建数组的方式

    public class TestCreates{
    	
    	public static void main(String[] args){
    		
    		//1.先声明、再分配空间
    		int[] array1;
    		
    		array1 = new int[4];
    		
    		System.out.println(array1[0]);
    		
    		//2.声明并分配空间
    		int[] array2 = new int[4];
    		
    		System.out.println(array2[0]);
    		
    		//3.声明并赋值(繁)
    		int[] array3 = new int[]{1, 2, 3};
    		
    		for(int i = 0; i < array3.length; i++){
    			System.out.println(array3[i]);
    		}
    		
    		//4.声明并赋值(简)
    		
    		int[] array4 = {1, 2, 3, 4};//不支持换行书写
    		
    		for(int i = 0; i < array4.length; i++){
    			System.out.println(array4[i]);
    		}
    	}
    }
    

    题目四:求数组中元素的平均数

    public class TestGetAvg{
    	
    	public static void main(String[] args){
    		
    		int[] numbers = new int[]{55,66,77,88,99};
    		
    		int sum = 0;
    		
    		for(int i = 0; i < numbers.length; i++){
    			sum += numbers[i];
    		}
    		double avg = sum / numbers.length;
    		
    		System.out.println("平均数为:" + avg);
    	}
    }
    

    题目五:查找数组元素

    import java.util.Scanner;
    
    public class TestSearch{
    	
    	public static void main(String[] args){
    		
    		Scanner input = new Scanner(System.in);
    		
    		System.out.println("请输入一个整数:");
    		
    		int n = input.nextInt();
    		
    		int[] numbers = new int[]{1,2,3,4,5,6,7};
    		
    		int index = -1;
    		
    		for(int i = 0; i < numbers.length; i++){
    			if(numbers[i] == n){
    				index = i;
    				break;
    			}
    		}
    		
    		System.out.println(index);
    	}
    }
    

    题目六:数组的排序

    JDK排序:java.util.Arrays.sort(数组名);//JDK提供(升序)

    import java.util.Arrays;
    
    public class TestSort{
    	
    	public static void main(String[] args){
    		
    		int[] nums = new int[]{4,1,3,2,5};
    		
    		//借助JDK提供的数组工具,进行排序(升序)
    		Arrays.sort(nums);
    		
    		//第一次遍历(升序)
    		for(int i = 0; i < nums.length; i++){
    			System.out.println(nums[i]);
    		}
    		
    		//降序:需要手工的方式完成元素的倒置 1 2 3 4 5
    		
    		for(int i = 0; i < nums.length / 2; i++){
    			int temp = nums[i]; 
    			
    			nums[i] = nums[nums.length - 1 - i];
    			
    			nums[nums.length - 1 -i] = temp;
    			
    		}
    		//第二次遍历(降序)
    		for(int i = 0; i < nums.length; i++){
    			System.out.println(nums[i]);
    		}
    	}
    }
    
  • 相关阅读:
    pip 使用代理
    npm i -S -D -g 区别
    javascript JSON. 转换 注意事项
    hexo 博客
    kotlin 注意的地方
    VMware-workstation-full-10.0.1-1379776 CN
    分析公司shareaholic报告:Chrome浏览器使用量居首
    搜狗高速浏览器4.2正式版发布
    中行用户购买KIS2014 68元/3年,时间:2013.10.18-2013.11.18
    1元抢卡巴KAV_不限量疯抢即日起至2013.10.31截止
  • 原文地址:https://www.cnblogs.com/MRASdoubleZ/p/14362619.html
Copyright © 2020-2023  润新知