今天来学Java当中的一维数组,让我们来熟悉一下它~
一、创建&打印 数组
一般创建一个数组,我们的格式有如下这么几种:
1. 数据类型 [ ] 类型名字 = { 值 } ;
2. 数据类型 [ ] 类型名字 = new 数据类型 [ 数组长度 ] ;
3. 数据类型 [ ] 类型名字 = new 数据类型 [ ]{ 值 };
接下来我们用代码来实现一下:
import java.util.Arrays;
import java.util.Scanner;
public class javaSchool {
public static void main(String[] args) {
//整型举例
int[] a = {1,2,3,4,5};
int[] b = new int[10];
int[] c = new int[]{1,3,4,5,8,9};
System.out.println(Arrays.toString(a));
System.out.println(Arrays.toString(b));
System.out.println(Arrays.toString(c));
//布尔类型举例
boolean[] d = new boolean[1];
System.out.println(Arrays.toString(d));
//字符类型举例
String[] s = new String[2];
String[] s1 = new String[]{"nihao"};
System.out.println(Arrays.toString(s));
System.out.println(Arrays.toString(s1));
//浮点型举例
double[] e = new double[2];
double[] f = new double[]{1,2.7,3.5};
double[] g = {1.3,4.6,2};
System.out.println(Arrays.toString(e));
System.out.println(Arrays.toString(f));
System.out.println(Arrays.toString(g));
}
}
/*注意这里输出 Arrays.toString() 是Java本身就有的一个功能
他可以打印一个完整数组,包括数组的方括号*/
由此可见,字符数组默认为null,整型数组默认为0,布尔类型数组默认为false,浮点型默认类型为0.0
这里大家注意要使用Arrays.toString(),需要导入一个包,也就是在开头加上一句:
import java.util.Arrays;
二、数组的引用
1.给数组元素赋值
这里就很简单啦,给大家演示一下:
public class javaSchool {
public static void main(String[] args) {
int[] arr = new int[3];
System.out.println(Arrays.toString(arr));
arr[0] = 3;
arr[1] = 4;
arr[2] = 5;
System.out.println(Arrays.toString(arr));
}
}
运行结果如下:
这里虽然简单,但是大家要知道数组在内存中是怎么指引用的,我们用图来展示一下:
针对于栈区和堆区的问题,我搜了一篇讲的很好的文章,分享给大家:
一分钟彻底理解Java中的堆和栈 - 终端研发部的文章 - 知乎
https://zhuanlan.zhihu.com/p/529280783
2.修改数组中的元素
public class javaSchool {
public static void main(String[] args) {
int[] arr = new int[]{2,3,4};
System.out.println(Arrays.toString(arr));
arr[0] = 400;
arr[2] = 300;
System.out.println(Arrays.toString(arr));
}
}
运行结果如下:
3.交换两个数组
public class javaSchool {
public static void main(String[] args) {
int[] arr1 = new int[]{1,2,3,4,5};
int[] arr2 = new int[]{666,888};
System.out.println("交换前");
System.out.println(Arrays.toString(arr1));
System.out.println(Arrays.toString(arr2));
int[] tmp = arr2;
arr2 = arr1;
arr1 = tmp;
System.out.println("交换后");
System.out.println(Arrays.toString(arr1));
System.out.println(Arrays.toString(arr2));
}
}
运行结果如下:
这里也给大家演示一下~
今天就到这里啦,加油!!!