Java教程

2022/4/20 JavaDay12

本文主要是介绍2022/4/20 JavaDay12,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

数组

  • 数组是相同数据类型的有序集合

  • 数组描述的是相同类型的若干个数据,按照一定的先后次序排列而成

  • 每一个数据称做一个数组元素,每个数组元素可以通过一个下标访问

 package com.sundada.array;
 ​
 public class ArrayDemo01 {
     //变量的类型 变量的名字 = 变量的值
     //数组类型
 ​
     public static void main(String[] args) {
         int[]nums;//int[]表示int类型数组,java使用这种
         //int nums2[];
         nums=new int[10];//2.创建一个数组
         //3.给数组元素
         nums[0]=1;
         nums[1]=1;
         nums[2]=1;
         nums[3]=1;
         nums[4]=1;
         nums[5]=1;
         nums[6]=1;
         nums[7]=1;
         //计算所有元素的和
         int sum=0;
         for (int i = 0; i < nums.length; i++) {
             sum=sum+nums[i];
         }
         System.out.println(sum);
 ​
     }
 }

内存分析

  1. 方法区

  1. 声明数组并不存在,创建了才存在

int[]array=null;//在栈里面储存

  1. 创建数组

array=new int [10];//创建了堆

动态初始化

 package com.sundada.array;
 ​
 public class ArrayDemo02 {
     public static void main(String[] args) {
         //静态初始化
         int[]a={1,2,3,4,5};
         System.out.println(a[4]);
         //动态初始化
         int[]b=new int[10];
         b[0]=10;
         System.out.println(b[0]);
         System.out.println(b[1]);//没有赋值则默认为0
     }
 }

数组的四个基本特点

  1. 长度是确定的,一旦创建大小不可改变

  2. 类型相同

  3. 元素可以是任何类型

  4. 数组变量属于引用类型,数组本身就是对象 保存在堆中

数组边界

 int[]a={1,2,3,4,5};
 System.out.println(a[4]);
 for (int i = 0; i < a.length; i++) {//不可以相等,[0,length-1]
     System.out.println(a[i]);
 }

数组的使用

  1. for-each循环

  2. 普通for循环

  3. 数组方法入参

  4. 数组返回值

 package com.sundada.array;
 ​
 public class ArrayDemo04 {
     public static void main(String[] args) {
         int[]arrays={1,2,3,4,5};
         //增强性for循环
 //        for (int array : arrays) {//array是里面的元素,后面的arrays是数组
 //            System.out.println(array);
 //        }
         int []reverse= reverse(arrays);
         printArray(reverse);
     }
     public static int[]reverse(int[]arrays){
         int[]result=new int[arrays.length];
         //反转的操作
         for (int i = 0,j=arrays.length-1; i < arrays.length; i++,j--) {
             result[j]=arrays[i];
         }
         return result;
     }
     //打印数组元素
     public static void printArray(int[]arrays){
         for (int i = 0; i < arrays.length; i++) {
             System.out.println(arrays[i]);
         }
     }
 ​
 }
这篇关于2022/4/20 JavaDay12的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!