Day6 总结
代码github地址:https://github.com/Philbenzy/Java-question-100/tree/main/day6
- 如何定义二维数组?
//二维数组的定义有两种方式,动态定义和静态定义:
//(1)动态初始化
数据类型[][] 数组名称 = new 数据类型[m][n];
//(2)静态初始化
数据类型[][] 数组名称 = {{...},{...},{...}};
- 遍历二维数组
SearchList.java
- 公司年销售求和
某公司按照季度和月份统计的数据如下:单位(万元)
第一季度:22,66,44
第二季度:77,33,88
第三季度:25,45,65
第四季度:11,66,99 对今年的销售情况进行求和
CompanySum.java
- 打印杨辉三角(键盘指定打印多少)
MySanJiao.java
- 参数的传递问题
class ArgsDemo {
public static void main(String[] args) {
int a = 10;
int b = 20;
System.out.println("a:"+a+",b:"+b); //a:10,b:20
change(a,b);
System.out.println("a:"+a+",b:"+b); //??? a:10,b:20
int[] arr = {1,2,3,4,5};
change(arr);
System.out.println(arr[1]); //??? 4
}
public static void change(int a,int b) { //a=10,b=20
System.out.println("a:"+a+",b:"+b); //a:10,b:20
a = b; //a=20
b = a + b; //b=40
System.out.println("a:"+a+",b:"+b); //a:20,b:40
}
public static void change(int[] arr) { //arr={1,2,3,4,5};
for(int x=0; x<arr.length; x++) {
if(arr[x]%2==0) {
arr[x]*=2;
}
}
//arr={1,4,3,8,5};
}
}
问题1:ab最终被打印出来的结果是什么?
最终的结果是:a=10,b=20,change方法内修改的是内部的形式参数ab的值,对于基本类型的值来说,是不会被改变的。
问题2:二维数组经过修改后打印的结果是多少?
最后的结果是:arr={1,4,3,8,5},因为数组不是基本类型,它的初始化格式为:
数据类型 [ ] [ ] 数组名= new 数据类型 [ ] [ ];
而new出来的对象存储在堆内存,形式参数与初始化共同指向推内存中数组。
总结:
基本类型:形式参数的改变对实际参数没有影响。
引用类型:形式参数的改变直接影响实际参数。(因为它们都指向了堆内存中的同一个地址)
本质上来说,这是两种不同的内存分配方式
- 类与对象分别是什么?
类:Java语言的最基本单位是类,是属性与行为的集合。
对象:是某类事物的具体体现
- 如何定义一个类?
通过具体定义这个类的属性(成员变量)与这个类的行为(成员方法)
- 如何使用一个类成员
(1)先创建这个类:
类名 对象名 = new 类名();
(2)调用类的变量和方法;
对象名.成员变量
对象名.成员方法( )
- 模仿学生类和手机类写一个人类,并测试
PersonDemo.java
957

被折叠的 条评论
为什么被折叠?



