JAVA学习---------------Day12
2020-05-05 12:30
746 查看
数组操作
1.1 数组地址转移问题【难点】
public static void main(String[] args) { int[] arr1 = new int[10]; int[] arr2 = new int[10]; arr1[0] = 10; arr2[0] = 20; System.out.println("arr1[0]:" + arr1[0]); System.out.println("arr2[0]:" + arr2[0]); arr1[5] = 50; arr2 = arr1; arr1[0] = 30; arr2[0] = 100; System.out.println("arr1[0]:" + arr1[0]); System.out.println("arr2[0]:" + arr2[0]); System.out.println("arr2[5]:" + arr2[5]); /* 1. 报错 2. 30 30 50 3. 100 100 50 true 4. 30 100 50 5. 50 100 50 6. 30 100 0 */ }
问题总结:
1.
int[] arr1 = new int[20];
int[] arr2 = new int[10];
arr1 = arr2; arr1[15] ???; 错误的 arr1 和 arr2 执行的空间为同一个数组空间 2. int[] arr1 = new int[10]; int[] arr2 = new int[10]; arr1[0] = 10; arr2[0] = 20; arr2[5] = 100; arr1[0] = arr2[0]; arr1[0] ? arr1[5] ? 20, 0 赋值操作完成的是对于元素直接内容的转换,不涉及数组地址转移 3. 是否可以展示数组中 arr[0] arr[5]元素的空间首地址 不好意思,不能!!!
1.2 数组作为方法的参数
public static void main(String[] args) { } /* (String[] args) String[] args 就是给数组作为方法参数格式,这里main方法需要的参数是一个String 类型的数组 格式: public static 返回值类型 方法名(数据类型[] 数组参数名) 数组是可以作为方法的返回值 【BUT】 在我没有演示,讲解数组作为返回值使用的情况下,任何人不得使用数组作为返回值 以防万一你遇到一些你想不到的错误!!! */
1.3 数组作为参数分析过程
``
a. 在一个int类型数组中,存储的内容是1 ~ 10
int[] arr = {10, 8, 35, 67, 31, 25, 11, 30, 28, 99};
使用代码找出,元素 == 30 所在下标位置
找出元素30对应的下标位置 1. 这里需要利用循环遍历数组,查询操作 2. 查询结果不确定,有可能找到,有可能找不到 3. 在查询之前我们假设对应的数据时不存在的 -1 作为保存目标数据的初始值
方法分析:
固定格式:
public static 不要问
返回值类型:
void:
没有返回值,功能变成数据找到直接打印,没有返回到方法外,这是一个黑盒
方法。黑盒方法是数据传入之后,没有任何的返回
int:
返回指定元素的下标位置,没有找到返回-1
方法名:
indexOf
获取指定元素对应下标
形式参数列表:
int[] arr:
查询数据的源数组,在哪一个数组中进行查询操作,这里需要一个int类型数组
int find:
指定在数组中查询的元素
(int[] arr, int find)
方法声明:
public static int indexOf(int[] arr, int find)
*/
1.4 总结
- 数组作为方法参数的固定格式
(数据类型[] 数组参数名) - 数组作为方法的实际参数的固定格式
(数组名) - 数组名作为方法的参数,实际传递的是数组空间首地址,就是和数组地址转移问题是一致的
- 方法执行需要参数,如果没有给予对应格式的实际参数,直接报错
相关文章推荐
- 学习笔记_Java_day12_设计模式MVC(13).JavaWeb的三层框架(14)
- 重踏学习Java路上_Day12(Scanner,String)
- java学习day12
- 安卓学习记录-java-day12
- Java 学习笔记——线程间通信(day12)
- java学习(Day12)
- 学习笔记_Java_day12_Cookie
- day12_JavaWeb设计模式与案例学习笔记
- JAVA每日学习(补录 OneNote笔记)Day12---常用API第二部分
- 黑马程序员 Java学习笔记 (day12)
- java基础视频25days(毕老师)学习日志(day11、day12、day13)
- java学习记录【day12】
- java基础学习_常用类02_Scanner类和String类_day12总结
- 常见对象String和其方法+JAVA学习笔记-DAY12
- Java学习记录 Day12(包装类型、正则表达式)
- java学习day12
- 黑马程序员 java学习笔记 Day12:java中的IO整理
- java基础学习(API)day12
- **JAVA学习笔记Day12
- 21天学通Java学习笔记-Day12(MYsql-JDBC)