返回 我的技术栈(Technology Stack)
数组
- 数组概念:
- 存储同一种数据类型多个元素的集合
- 数组既可以存储基本数据类型,也可以存储引用数据类型
- 各类型在数组中的默认值:
- 整数类型:byte,short,int,long默认初始化值都是0
- 浮点类型:float,double默认初始化值都是0.0
- 布尔类型:boolean默认初始化值false
- 字符类型:char默认初始化值'\u0000'(char在内存中占两个字节,是15个二进制位。每一个0代表的事16进制的0)
数组的地址
public static void main(String [] args) {
int [] arr = new int [5];
System.out.println(arr); // 输出结果:[I@19bb25a
// 含义:[ 代表是一维数组,几个就代表几维数组
I 代表是int类型
@ 是固有的
19bb25a 代表的是十六进制的地址值
}
一维数组的遍历
public static void mian (strings[] agrs) {
int[] arr2 = {11 , 22 ,33};
print(arr2);
}
public static void print(int[] arr) { //注意传参的形式
for(int i = 0;i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
二维数组的遍历
public static void main(String [] args) {
int [] [] arr = {{1,2,3},{4,5},{6,7,8,9}};
for(int i = 0 ; i < arr.length ; i ++) {
for(int j = 0;j <arr[i].length ; j ++) {
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
}
数组的反转
public static void mian (strings[] agrs) {
int[] arr = {11 , 22 ,33 , 44, 55};
reverseArray(arr);
print(arr);
}
public static void reverseArrary(int[] arr) { //数组反转的方法
for(int i = 0;i < arr.length/2; i++) {
int temp = arr[i];
arr[i] = arr[arr.length - 1 - i];
arr[arr.length - 1 - i] = temp;
}
}
public static void print (int [] arr) { //数组的遍历
for (int i = 0 ; i < arr.length ; i ++) {
System.out.println(arr[i] + " " );
}
}
面试题
- 面试题:Java中到底是传值还是传址?
答:Java中只有传值,因为地址也是址。(支持者是Java之父)