「JavaDay6」学习心得

Day6 总结

代码github地址:https://github.com/Philbenzy/Java-question-100/tree/main/day6

  1. 如何定义二维数组?
//二维数组的定义有两种方式,动态定义和静态定义:
//(1)动态初始化
数据类型[][] 数组名称 = new 数据类型[m][n];
//(2)静态初始化
数据类型[][] 数组名称 = {{...},{...},{...}};
  1. 遍历二维数组

SearchList.java

  1. 公司年销售求和

某公司按照季度和月份统计的数据如下:单位(万元)
第一季度:22,66,44
第二季度:77,33,88
第三季度:25,45,65
第四季度:11,66,99 对今年的销售情况进行求和

CompanySum.java

  1. 打印杨辉三角(键盘指定打印多少)

MySanJiao.java

  1. 参数的传递问题
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出来的对象存储在堆内存,形式参数与初始化共同指向推内存中数组。

总结:

基本类型:形式参数的改变对实际参数没有影响。

引用类型:形式参数的改变直接影响实际参数。(因为它们都指向了堆内存中的同一个地址)

本质上来说,这是两种不同的内存分配方式

  1. 类与对象分别是什么?

类:Java语言的最基本单位是类,是属性行为的集合。

对象:是某类事物的具体体现

  1. 如何定义一个类?

通过具体定义这个类的属性(成员变量)与这个类的行为(成员方法)

  1. 如何使用一个类成员

(1)先创建这个类:

​ 类名 对象名 = new 类名();

(2)调用类的变量和方法;

​ 对象名.成员变量

​ 对象名.成员方法( )

  1. 模仿学生类和手机类写一个人类,并测试

PersonDemo.java

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值