java知识简介--数组

2019-04-13

数组简介

 一、一维数组

  1、数组:用来存储一种数据类型的多个数据的集合

  2、格式:数据类型  [ ]    数组名  =  new 数据类型[ 数组长度]   --声明一个数组并进行初始化(动态)

        数据类型  [ ]    数组名  =     {元素1,元素3,元素3}

  3、初始化:就是为数组很脏的数据元素分配内存空间,并为每个数据元素赋值

     静态初始化:初始化时指定每个数组元素的初始值,并由系统决定数组的长度;

     动态初始化:初始化时只指定数组长度,由系统为数组分配初始值;

 二、二维数组

  1、格式:数据类型 [ ] [ ] 数组名  =   new 数据类型[ 数组长度][数组长度] 

        数据类型 [ ] [ ] 数组名  =  {{元素1,元素2}{元素a,元素b}}

 三、数组问题

   1、越界:ArraryIndexOutOfHoundsException:数组越界异常,访问了不存在的索引;

   2、空指针:NullPointException:空指针异常:数组不在指向堆内存,继续使用访问报错;

 四、数组遍历:

   1、依次输出数组中的元素

   2、一维数组遍历实现

    

   3、二维数组遍历实现

    

 五、获取最值

   1、获取最大值实现方式

    

 2、获取数组中最小值实现

    

   六、数组的逆序实现

     

     

 1 package com.java.practice;
 2 
 3 public class FunctionTest8 {
 4     public static void main(String [] args) {
 5         int [] arr = {2,3,4,5,6};
 6         getReverse(arr);
 7         getArr(arr);
 8     }
 9     
10     //数组逆序
11     public static void getReverse( int [] arr) {
12         //将最后的数值与最前面的数值进行调换,循环的次数等于数组长度的1/2
13         for(int i = 0;i<arr.length/2;i++) {
14             int t = arr[i];
15             arr[i]=arr[arr.length-1-i];
16             arr[arr.length-1-i]=t;
17         }
18     }
19     
20     //遍历数组
21     public static void getArr(int [] arr) {
22         for(int i = 0 ; i < arr.length ; i++) {
23             System.out.print(arr[i]);
24             System.out.print(' ');
25         }
26     }
27 }

Java中内存分配

  1、Java程序在运行时,需要在内存中分配空间,为了提高运算效率,有对空间进行不同区域划分,每一片区域都有特定的处理数据的方式和内存管理方式。

    栈:存储局部变量;

    堆:存储new出来的;

    方法区;

    本地方法区(和系统相关)

    寄存器(CPU使用)