java 基础(数组开始)

39 阅读1分钟

java 基础

1.数组

1.初始化 :就是在内存中,为数组开辟空间 并将数据存入到容器的过程 2.完整格式 数据类型 [] 数组名 =new 数据类型[]{元素1,元素2,......} int[] array=new int[]{1,23,4}; 简写格式 数据类型 [] 数组名 ={元素1,元素2,元素3,......} int[] array={1,23,4}; System.out.println(array);//[I@1b6d3586 (地址值) 3.元素的访问 数组名[索引] 索引从0开始的 array[0] // 1

  1. 数组的遍历

     int[] arr={11,22,33,44,55};
            // arr.length  数组的长度
            for(int i=0;i<arr.length;i++){
                System.out.print(arr[i]+" ");
            }
    

5.数组的复制

需求 有一个数组 需要将这个数组中的一些数值 复制到另一个数组中

public class fuZhi{
    public static void  main(String[] args){
        //定义一个初始数组
        int[] arr={1,2,3,4,5,6,7,8};
        int[] copys=copy(arr,3,6);
        for(int copy:copys){
            System.out.print(copy+" ") ;  // 4 5 6
        }
    } 
    public static int[] copy(int[] arr,int from,int to){
        // 构造一个新的数组
        int[] newarr=new int[to-from];
        // 索引 伪造索引
        int index=0;
        for(int i=from;i<to;i++){
            newarr[index]=arr[i];
            index++;
        }
        return newarr;
    }
}

2.方法

1.定义 方法是程序中的最小的执行单元

2.方法的重载 同名不同参数 (必须在同一个类中)

public class fanFa {
​
        public static byte kais1(byte a1){
            return a1;
        }
        public static byte kais1(byte a1,byte a2){
            return (byte) (a1+a2);
        }
​
        public static int kas1(int a){
            return a;
        }
        public static int kas1(int a,int b){
            return a+b;
        }
​
        public static  short kkk(int a){
​
            return (short) a;
        }
        public static short kkk(int a,int b){
            return (short) (a+b);
        }
​
}

3.方法的内存

  • 基本内存原理

image.png

image.png

栈 先进后出

image.png

  • 方法传递基本数据类型 和引用数据类型
  1. 基本数据类型 整型 浮动点数 布尔 字符

    变量中存储的是真实的数据

image.png

  1. 引用数据类型(只要new 出来的都是引用数据类型)

    变量中存储的是地址

    引用 使用了其他空间中的数据

image.png

  1. 总结

    基本数据类型 : 数据值 是存储在自己的空间中

    特点 赋值给其他变量 也是赋的真实的值

    引用数据类型 数据值 是存储在其他空间中 自己空间中存储的是地址值

    特点 赋值给其他变量 赋的地址值