• java 数组及方法


    数组

    定义:数组指的是一个容器,可以用来存储同种类型的多条数据
    格式 : 数据类型【】 数组名

    数组的静态初始化

    初始话\化 : 就是在内存中,为数组容器开辟空间,并将数据存入容器的过程

    完美格式: 数据类型【】 数组名 = new 数据类型[]{数组元素}
    简化格式: 数据类型 【】 数组名 = 【数组元素】

    注意事项:

    定义个了一个数组,直接通过打印,是无法打印出数组的,他往往会打印出一段地址值
    实例代码如下:

    package com.util.day01;
    
    public class HelloWorld {
        //mian主体入口
        public static void main(String[] args) {
            int[] arr = {1, 2, 3, 4, 5};
            System.out.println(arr);
    
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    运行结果如下:
    在这里插入图片描述

    地址值简易解读:

    用结果(”[I@1540e19d“)这个来解读吧
    第一个 ”【“表示集合的意思
    ”I“表示的是数据类型
    ”@“是地址值的固定字符
    ”@“后面才是真正的地址值

    数组的动态初始化

    动态初始化: 初始化的时候只指定数组的状态,然后由系统来分配数组中的初始值
    格式:数据类型【】数组名 = new 数据类型[数组的长度];

    java 内存分配(简单了解)

    1.栈: 方法运行时使用的内存
    2.堆 : 储存对象或者数组等通过new创建出来的复杂数据类型

    方法:

    定义: 是程序中最小的执行单元
    用处 : 减少重复的代码
    好处 : 1.提高代码的可维护性
    2.可以提高代码的复用性

    package com.util.day01;
    
    public class HelloWorld {
        //mian主体入口
        public static void main(String[] args) {
            playGame();
    
        }
        public static  void playGame(){
            System.out.println("准备选英雄");
            System.out.println("准备开始");
            System.out.println("对线");
            System.out.println("叫队友");
            System.out.println("骂队友");
            System.out.println("送人头");
            System.out.println("这把游戏GG");
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    注意事项

    方法
    1.方法不调用就不会执行
    2.方法与方法之间不存在嵌套
    3.方法的编写与执行顺序没有关系

    方法重载

    定义:在同一个类中,定义了多个同名的方法,这些方法具有同种的功能,每个方法具有不同的参数类型或者参数个数,这些同名的方法就构成了重载关系
    简单记忆:同一个类中,方法名相同,参数不同的方法

    package com.util.day01;
    
    public class HelloWorld {
        //mian主体入口
        public static void main(String[] args) {
            double aa = 12;
            fn(aa);
        }
        public static void fn (int a ){
            System.out.println("我是int"+a);
        }
        public static void fn(double a){
            System.out.println("我是double"+a);
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    内存原理:

    传递基本数据类型时,传递的是真实的数据,形参改变,不影响实际参数的值

    package com.util.day01;
    
    public class HelloWorld {
        //mian主体入口
        public static void main(String[] args) {
           int aa = 100;
            System.out.println("还没开始执行方法前"+aa);//100
            sum(aa);
            System.out.println("执行完方法后"+aa);//100
        }
        public static void sum(int a){
            a =200;
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    传递引用数据类型的时候,传递的是地址值,形参发生改变,影响实际参数的值

    package com.util.day01;
    
    public class HelloWorld {
        //mian主体入口
        public static void main(String[] args) {
           int [] arr ={0,1,2,3};
            System.out.println("没执行方法前"+arr[0]);//0
            sum(arr);
            System.out.println("执行完方法后"+arr[0]);//200
    
        }
        public static void sum(int[] a){
            a[0] =200;
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
  • 相关阅读:
    皮皮仔!在 vscode 里操作数据库~
    EasyGBS如何解决对讲功能使用异常?
    智能安防系统-视频监控系统
    CF - D1/2. Burenka and Traditions (DP,异或,思维)
    惊了!10万字的Spark全文!
    鸿蒙Harmony应用开发—ArkTS声明式开发(通用属性:尺寸设置)
    域名解析信息易语言代码
    PlantUML绘制活动图
    常用的Layout布局元素(重点)
    【分布式事务】深入探索 Seata 的四种分布式事务解决方案的原理,优缺点以及在微服务中的实现
  • 原文地址:https://blog.csdn.net/weixin_51666715/article/details/126841146