1.数组
变量:
int a = 20;
数据类型 变量名字 = 值;
数组定义的语法格式:
第一种:
数据类型[] 变量名字 = {值1, 值2, 值3, …};
或者
数据类型 变量名字[] = {值1, 值2, 值3, …};
package com.qf.a_test;
import java.util.Arrays;
public class Demo7 {
public static void main(String[] args) {
//声明一个数组类型的数据
String[] strs = {"狗蛋", "张三", "李四", "王五"};
System.out.println(strs);//[Ljava.lang.String;@15db9742
//关于String数组打印的是内存地址 好不好? 不好 咋办?
//toString 将内存地址(看不懂)转为字符串(能看懂 对程序有友好)
System.out.println(Arrays.toString(strs));//[狗蛋, 张三, 李四, 王五]
int[] arr= {1, 2,3 , 4, 5};
System.out.println(arr);//[I@6d06d69c
System.out.println(Arrays.toString(arr));//[1, 2, 3, 4, 5]
//除了char数组其他的都是需要toString 才能看到数据的
char[] chs = {'a', 'b', 'c'};
System.out.println(chs);//abc
}
}
EG://toString 将内存地址(看不懂)转为字符串(能看懂 对程序有友好)
System.out.println(Arrays.toString(strs));//[狗蛋, 张三, 李四, 王五]
第二种声明方式:
数据类型[] 变量 = new 数据类型[容量];
进行赋值
第三种:
数据类型[] 变量 = new 数据类型[]{值1, 值2, 值3,…};
把数组中的数据取出来
总结
int[] arr = {2, 8, 9, 67};//声明并赋值
2.
int[] arr1 = new int[4];//声明了空的数组 [0,0,0,0]
赋值 通过下标来进行赋值
arr1[0] = 78;//将78赋值 arr1这个数组的第一个数 [78,0,0,0]
int[] arr2 = new int[] {1,2,3,45};//声明并赋值
4.把数组中的数据取出来
5.数组可以作为方法的参数
方法的参数可以是哪些数据类型?
八大基本数据类型 ,String
数组也可以作为方法的参数的
public static void test (int[] a) { }
6.数组可以作为方法的返回值
之前学的方法的返回值 类型
八大基本数据类型 + String
数组也是可以作为方法的返回值的
7.Java内存分配
以后还会再讲
目前所学的知识点只需要内存两个 栈和堆
区域名字 | 作用 |
---|---|
寄存器 | 给CPU相关,咱们不用管 |
本地方法栈 | JVM 使用操作系统能的时候,会使用 |
方法区 | 存储和运行calss文件 |
栈 | 存放的是 八大基本数据类型和对象的引用(内存地址) |
堆 | 存储的是对象和数组,凡是new出来的都在堆区中存着 |
Scanner scanner = new Scanner(System.in);
int[] arr = new int[3];
当new的时候,左边叫对象引用!!!!
栈:
int a = 20;
Scanner sc = new Scanner(System.in);
Scanner sc 内存地址
堆:
凡是new出来的 真实的数据都在堆区