哈喽,我是兔哥呀,今天就让我们继续这个JavaSE成神之路!
这一节啊,咱们要学习的内容是数组的概念与应用技术。
乍一听还挺唬人的有没有,数组这个东西呢并不是什么新的知识啦,之前的章节中我们已经学习过数组的相关应用。
这一节我们就具体来聊一聊数组。
1.什么是数组
数组是由一系列相同数据类型组成的按顺序的一种引用数据类型。
这句话透露出三个点,首先是相同的数据类型才能构成数组。
一个数组里面不能同时包括数字和字符串,当一个数组被创建,就只能含有相同的数据。
第二个,数组是一种引用数据类型。
第三点,数组有顺序,这个结合内存结构来看比较好。
2.为什么用数组
如果不用数组,让你用java表示一组学生的成绩怎么办?难道你写个类里面弄20几个变量,代表全班二十几个学生吗?
3. 一维数组
3.1 数组的声明
语法格式:
01 数据类型[] 数组名;
02 数据类型 数组名[];
第一种方式比较常用,例如:
int[] nums;
3.2 数组的创建
我们可以先声明,后创建;
int[] nums;
nums = new int[10];
也可以在声明的同时就创建。
int[] nums = new int[10];
注意,创建数组的时候,长度必须指定!
数组是有顺序的,在内存中也是连续的内存单元,不分散。
3.3 数组的初始化
声明数组的同时给数组赋值,就是数组的初始化。(其实是省略了创建)
int[] nums = {1,2,3,4,5};
3.4 数组元素的引用
记住数组的下标是从0开始的。
int[] nums = {1,2,3,4,5};
System.out.println(nums[1]);
答案是2。
数组的长度就是数组元素的格式,用数组的length属性即可。
int[] nums = {1,2,3,4,5};
System.out.println(nums.length);
答案是5.
3.5 数组的简单应用
来几个例题热热身,现在定义一个String类型的数组,长度为5,不要初始化。再运用for循环来给数组初始化。
//创建一个长度5的字符串数组
String[] names = new String[5];
for (int i = 0; i < names.length; i++) {
names[i] = "name_" + i;
}
注意,数组也是一个对象,如果你不创建(new),是不能调用length属性的。
4.思考题
1.编写一个方法,接收一个int类型数组,返回数组内所有元素的和。
2.编写一个方法,接收一个String类型的参数,里面设置一个String类型的局部数组变量,要求每次调用该方法时,参数要均匀地分配到数组。(即实现一个简易的hash表,不考虑hash冲突问题)
PS:从这一节开始,欢迎你使用任何你喜欢的IDE完成作业,比如eclipse,IDEA,如果不会使用工具,可以去B站搜索相关的视频进行学习哈。