Java数组

基本数据类型

  • 整型(Integral Types):byte、short、int、long
  • 浮点型(Floating Point Types):float、double
  • 字符型(Character Types):char
  • 布尔型(Boolean Types):boolean
  • 空值类型(Void Type):void基本数据类型在内存中占用的空间大小是固定的,不能被改变。

引用数据类型

  • 类、数组、接口、枚举、注解、记录

一维数组中数据类型默认值

  • 整型(int)数组的默认值为0
  • 浮点型(float)数组的默认值为0.0
  • 字符型(char)数组的默认值为空字符('\u0000')

\u0000是一个Unicode转义字符,代表空字符。在Unicode编码中,\u0000的十进制表示为0,也被称作空字符或NULL字符。它在编程中通常用于表示一个无效或空的值。

  • 布尔型(boolean)数组的默认值为false(false是因为false在计算机中默认对应0,true对应1)
  • 双精度浮点型(double)数组的默认值为0.0

二维数组中数据类型默认值

数组的使用步骤

一维数组

复制代码
       // 一维数组
//      动态数组  定义,初始化
        int[] prices = new int[5];
//        静态数组
//      int[] prices = new int[] {1,2,3}
//        调用
        prices[0] = 1;
        prices[1] = 1;
        prices[2] = 8;
        prices[3] = 10;
        prices[4] = 5;
//        遍历数组
        for(int i = 0; i < prices.length;i++){
         System.out.println(prices[i]);
        }
一维数组内存解析

数组变量放在栈中,数组值放在堆中

不同数据类型数组

相同数据类型数组

二维数组

复制代码
//        二维数组
//        定义和初始化
//        动态数组
        int[][] arr = new  int[3][4];
//        静态数组
//       int[][] arr = new  int[][]{{1,2,3},{2,3},{9,8}};
//       调用
//       打印数组长度
        arr[1][2]=1;
        System.out.println(arr[0]);//打印其地址
        System.out.println(arr[1][2]);

        int[][] arr1 = new int[][]{{1,2},{2,3},{9,8}};
// 遍历数组
        int i,j;
        for(i = 0; i < arr1.length; i++ ){
            for (j = 0; j < arr1[i].length; j++ ){
                System.out.println(arr1[i][j]+"\t");
            }
            System.out.println(); // 在每行的结束添加一个新行,使得输出更清晰
        }

二维数组赋值方式

  1. 逐个元素赋值:

    int[][] arr = new int[3][4];
    arr[0][0] = 1;
    arr[0][1] = 2;
    arr[0][2] = 3;
    arr[0][3] = 4;
    arr[1][0] = 5;
    arr[1][1] = 6;
    arr[1][2] = 7;
    arr[1][3] = 8;
    arr[2][0] = 9;
    arr[2][1] = 10;
    arr[2][2] = 11;
    arr[2][3] = 12;

  2. 使用循环赋值:

    int[][] arr = new int[3][4];
    for (int i = 0; i < arr.length; i++) {
    for (int j = 0; j < arr[i].length; j++) {
    arr[i][j] = i * j; // 或者其他您需要的赋值方式
    }
    }

  3. 使用数组字面量赋值:

    int[][] arr = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}};

二维数组内存解析

数组常见算法

数值型数组特征值统计

平均值、最大值、最小值、总和等

数组元素的反转

数组对称位置的元素互换。

数组的扩容与缩容
数组的元素查找

待学 对应视频70


上面所有方法都可以用Arrays工具类实现

Arrays工具类的使用

复制代码
    public static void main(String[] args) {
        int[] arr1 = new  int[]{12,23,24,9};
        int[] arr2 = new  int[]{12,23,24,9};
//  调用Arrays中的equals方法
        boolean isEquals = Arrays.equals(arr1,arr2);

        System.out.println(isEquals);
//    调用toString方法,打印数组元素
        System.out.println(Arrays.toString(arr1));

结语

我是南城余!欢迎关注我的博客!一同成长!

一名从事运维开发的worker,记录分享学习。

专注于AI,运维开发,windows Linux 系统领域的分享!

相关推荐
万邦科技Lafite9 小时前
京东按图搜索京东商品(拍立淘) API (.jd.item_search_img)快速抓取数据
开发语言·前端·数据库·python·电商开放平台·京东开放平台
Giser探索家9 小时前
无人机桥梁巡检:以“空天地”智慧之力守护交通生命线
大数据·人工智能·算法·安全·架构·无人机
默 语10 小时前
MySQL中的数据去重,该用DISTINCT还是GROUP BY?
java·数据库·mysql·distinct·group by·1024程序员节·数据去重
Never_Satisfied11 小时前
在JavaScript / Node.js / 抖音小游戏中,使用tt.request通信
开发语言·javascript·node.js
爱吃小胖橘11 小时前
Unity资源加载模块全解析
开发语言·unity·c#·游戏引擎
oDeviloo12 小时前
新版IntelliJ IDEA个性化设置兼容老版习惯
java·ide·intellij-idea
一只小透明啊啊啊啊12 小时前
Java Web 开发的核心组件:Servlet, JSP,Filter,Listener
java·前端·servlet
budingxiaomoli12 小时前
算法--滑动窗口(二)
算法
ID_1800790547313 小时前
淘宝实时拍立淘按图搜索数据|商品详情|数据分析提取教程
算法·数据分析·图搜索算法
l1t13 小时前
Lua与LuaJIT的安装与使用
算法·junit·单元测试·lua·luajit