zoukankan      html  css  js  c++  java
  • Java编程基础篇第五章

     数组概述

    概念:数组是存储同一种数据类型多个元素的集合。也可以看成是一个容器。
    数组既可以存储基本数据类型,也可以存储引用数据类型。
    应用场景:为了存储同种数据类型的多个值

    数组定义格式

    格式1:元素类型[] 数组名 = new 元素类型[元素个数或数组长度];
    例:int[] arr = new int[8];
    格式2:元素类型[] 数组名 = new 元素类型[]{元素,元素,……};
    例:int []arr = new int[]{3,5,1,7};int []arr ={3,5,7,1};

     数组的初始化
    Java中的数组必须先初始化,然后才能使用。
    所谓初始化:就是为数组中的数组元素分配内存空间,并为每个数组元素赋值。
    数组的初始化分为动态初始化和静态初始化
    动态初始化:初始化时只指定数组长度,由系统为数组分配初始值。
    格式:数据类型[] 数组名 = new 数据类型[数组的长度];
    举例:
    int[] arr = newint[3];
    解释:定义了一个int类型的数组,这个数组中可以存放3个int类型的值。
    静态初始化:初始化时指定每个数组元素的初始值,由系统决定数组长度。
    数组的初始化静态初始化及内存图
    格式:数据类型[] 数组名 = new 数据类型[]{元素1,元素2,…};
    简化格式:数据类型[] 数组名 = {元素1,元素2,…};
    举例:
    int[] arr = new int[]{3,7,5,4};
    int[] arr = {3,7,5,4};

     Java中的内存分配以及栈和堆的区别


    需要在内存中的分配空间。为了提高运算效率,就对空间进行了不同区域的划分,
    因为每一片区域都有特定的处理数据方式和内存管理方式。
    内存结构:栈、堆、方法区、本地方法区、寄存器。(java对内存的划分原因:
    每片内存处理的方式不同)
    栈内存:暂时存储。用于存储局部变量,当数据使用完,所占空间会自动释放。
    堆内存:存储数组和对象,通过new建立的实例都存放在堆内存中,任何的"
    引用数据类型"的"值"都存在堆里。。
    方法区:静态存储区、构造函数、常量池、线程池,方法字节码
    本地方法区:window系统占用 ,被定义为 native的方法。
    寄存器:存储正要准备交给CPU处理的字节码
    数组操作的两个常见小问题越界和空指针
    ArrayIndexOutOfBoundsException:数组索引越界异常
    原因:你访问了不存在的索引。
    NullPointerException:空指针异常
    原因:数组已经不在指向堆内存了。而你还用数组名去访问元素。

    数组的操作:遍历

     1 /** * 数组遍历:依次输出数组中的每一个元素。 数组的属性:arr.length 数组的长度 数组 的最大索引:arr.length - 1; */
     2  class Demo { 
     3     public static void main(String[] args) { 
     4         int[] arr = new int[] { 4, 8, 68, 42, 2, 7 }; 
     5         print(arr);
     6  }
     7     public static void print(int[] arr) {
     8      for (int i = 0; i < arr.length; i++) 
     9     {
    10      System.out.print(arr[i] + " ");
    11      } 
    12     }
    13 }
  • 相关阅读:
    JS随笔
    tp5 redis 单例模式 转载
    分享我编程工作经历及对软件开发前景的看法
    redis详解(一)-- 概述
    redis详解(二)-- 数据类型详解
    redis详解(四)-- 高可用分布式集群
    redis详解(三)
    新工科平台
    关于Nginx的负载均衡
    微信退款回调
  • 原文地址:https://www.cnblogs.com/XiDaPuBen/p/8253638.html
Copyright © 2011-2022 走看看