Nrich's blog Nrich's blog
首页
  • Java
  • Golang
  • 深度学习
  • Git
  • Linux
  • DataStructure
  • CloudNative
  • Redis
  • MySQL
  • 路由劫持
GitHub (opens new window)

Nrich

小聪明
首页
  • Java
  • Golang
  • 深度学习
  • Git
  • Linux
  • DataStructure
  • CloudNative
  • Redis
  • MySQL
  • 路由劫持
GitHub (opens new window)
  • Java

    • 黑马Java入门基础-学习笔记

      • Java 基础语法
      • 数组
        • 1. 数组定义格式【记忆】
        • 2. 数组初始化【应用】
          • 2.1 静态初始化数组
          • 2.1.1 格式:
          • 2.2 动态初始化数组
          • 2.2.1 格式:
          • 2.2.2 动态初始化数组的元素默认值
        • 3. 数组元素访问【应用】
        • 4. Java 内存分配【理解】
          • 4.1 内存概述
          • 4.2 java中的内存分配
      • 方法
      • 面向对象基础
      • 常用API(String、ArrayList)
      • 面向对象进阶1(static、单例、代码块、继承)
      • 面向对象进阶2(包、权限修饰符、抽象类、接口)
      • 面向对象进阶3(多态、内部类、常用API)
      • 面向对象进阶4(常用日期API、正则、Arrays类、Lambda)
      • 面向对象进阶5(集合体系)
      • 面向对象进阶6(集合体系之Map)
      • 面向对象进阶-补充(可变参数)
    • 面向对象
    • 常用API
    • 并发、并行、异步、同步(暂存)
    • 《Spring Boot 进阶-郑天民》

  • GoLang

  • 开发
  • Java
  • 黑马Java入门基础-学习笔记
Nrich
2023-01-24
目录

数组

# 数组

数组变量名中存储的是数组在内存中的地址,数组是引用类型(不同于基本类型)。

提示

数组一旦定义出来,程序执行的过程中,长度、类型就固定了。

# 1. 数组定义格式【记忆】

第一种

​ 数据类型[] 数组名

​ 示例:

int[] arr;        
double[] arr;      
char[] arr;
1
2
3

第二种

​ 数据类型 数组名[]

​ 示例:

int arr[];
double arr[];
char arr[];
1
2
3

# 2. 数组初始化【应用】

# 2.1 静态初始化数组

定义数组的时候直接给数组赋值。

# 2.1.1 格式:

  • 完整版格式
数据类型[] 数组名 = new 数据类型[]{元素1,元素2 ,元素3… };
int[] ages = new int[]{12, 24, 36}
1
2
  • 简化版格式
数据类型[] 数组名 = { 元素1,元素2 ,元素3,… };
int[] ages = {12, 24, 36};
1
2

# 2.2 动态初始化数组

定义数组的时候只确定元素的类型和数组的长度,之后再存入具体数据。

# 2.2.1 格式:

数据类型[] 数组名 = new 数据类型[长度];
int[] arr = new int[3];
1
2

# 2.2.2 动态初始化数组的元素默认值

image-20230124205129930

两种数组初始化的特点和场景区别

  • 当前已经知道存入的元素值,用静态初始化。
  • 当前还不清楚要存入哪些数据,用动态初始化。

# 3. 数组元素访问【应用】

  • 数组的长度:数组名称.length

  • 获取数组的最大索引:数组名称.length - 1

    ⚠️ 此方法获取数组的最大索引,需要元素个数大于0的前提。

  • 遍历数组元素时,注意判断是否为null,或是否长度为0。

    int[] nums = null;   // 数组为 null
    int[] nums2 = {};    // 数组长度为 0
    
    public static int getMax(int[] arr) {
        if (arr != null && arr.length > 0) {
            // 方法的逻辑
        } else {
            // 数组为空或长度为0的处理
        }
    }
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10

# 4. Java 内存分配【理解】

# 4.1 内存概述

​ 内存是计算机中的重要原件,临时存储区域,作用是运行程序。

​ 我们编写的程序是存放在硬盘中的,在硬盘中的程序是不会运行的。

​ 必须放进内存中才能运行,运行完毕后会清空内存。

​ Java虚拟机要运行程序,必须要对内存进行空间的分配和管理。

# 4.2 java中的内存分配

  • 目前我们只需要记住两个内存,分别是:栈内存和堆内存
区域名称 作用
寄存器 给CPU使用,和我们开发无关。
本地方法栈 JVM在使用操作系统功能的时候使用,和我们开发无关。
方法区 存储可以运行的class文件。
堆内存 存储对象或者数组,new来创建的,都存储在堆内存。
方法栈 方法运行时使用的内存,比如main方法运行,进入方法栈中执行。
image-20230124210302958
编辑 (opens new window)
上次更新: 2023/01/24, 15:21:13
Java 基础语法
方法

← Java 基础语法 方法→

最近更新
01
YAML、Pod、Job、CronJob、ConfigMap、Secret
06-06
02
Kubernetes 的安装与基本架构
06-04
03
初识容器
05-30
更多文章>
Theme by Vdoing | Copyright © 2022-2023 Nrich | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式