黑黄皮JAVA语言程序设计与数据结构(基础篇)-01

开讲第六章方法了,这一章是为了让算法更加规范好读。这里记录一下我的学习笔记,不只有方法的内容。

欢迎提出意见和更改建议只是简单告诉我哪里错的话请态度亲和,但如果有更改意见,那就超级热烈欢迎),如果有什么不明白的也请评论区告诉我,我们一起探讨。听着歌单敲下的文字,有的歌曲比较“激进(?)”,所以有的文字比较放肆,请带着欢乐的情感来看吧。

我准备分两部分记我的笔记:

一、封装/化简函数

像有函数要实现三段加法:从2加到12,从5加到15,从9加到19,这时候可以用

for(i = 1; i <= 11; i++){
    int sum = 0;
    sum += i;
}

System.out.print("sum is " + sum);

但是代码里面有三段这样的代码,有重复性,我可以写一个sum函数把这种思想封装起来,当我们的成百上千的函数文件都有这个思想的时候,用封装函数可以减少工作量,修改的时候也简单,直接改变头文件的sum函数就好。

package book02;

public class exercise01 {

	public static int sum(int a, int b) {
		int sum = 0;
		
		for(int i = a ; i <= b ; i++) {
			sum += i;
		}
		
		return sum;
	}
	public static void main(String[] args) {
		System.out.println("Sum from 1 to 11 is " + sum(1,11));
		System.out.println("Sum from 19 to 101 is " + sum(19,101));
		System.out.println("Sum from 50 to 110 is " + sum(50,110));
	}
}

二、数值传递

由几道课后例题来讲解:

第一就是把定义的max函数里面的max改了,改成2,但是void类型就说明了这个函数只是个操作,你想返回值,所以加上了return,这个是不行的,就算返回了max,也不改变main里面的max,他俩一个是实际参数,一个是形式参数,只是碰巧同名了,电脑给他俩分配的内存空间都是不一样的,在这个函数里面,哪一个变了都不会影响另一个(当然了,我这么说也是提醒这个函数不会,有的函数形参和实参是有交集的)。

第二个关键是要帮助我们理清一个概念,void只是一个操作过程。接着看while循环的过程,先是过一遍method函数,之后是i++,这中间编译器是这么运行的,到method了,执行method并输出,之后再返回i++,i符合while条件,那就继续。仔细想一下我对这个代码的感受,这里用二维空间和三维空间分别记录一下。在二维空间里面是种画圈的感觉,while和method交集是很少的,就像文氏图相交了那么一点;在三维空间里面,可以想想这样的项链:一条线+一个小饰品,这条线就是while循环,method是小饰品,本质上是两个东西,只是在那个时空里面组合并被我们使用了。第三第四也是这样,比一和三复杂,但是思想是一样的,有不理解的欢迎评论区留言。

三、甜点

1.这本书的开头有这样一句话:新手不必知道为什么Java语言开头要写这个public static。课堂上老师讲了一点:Java是面相对象的语言,public(公有方法)static(静态/类方向),他们都是修饰符,在Eclipse IDE里面,只有输入了public,编译器才会执行你的代码(目前我的理解是这样的 ,回来再看这篇文章时,不正确再改)。再进一步讲这两个概念,联网的时候敲一个Math.,你会发现输入那个“.”之后会弹出一个列表,全是Math类的各种封装函数,这些就是我说的公共方法,是所有人都可以用的,像我做过的unity3D新手视频里面,讲师有时候点“.”就不会有方法弹出,这种是私人方法,自己定义的,但就算是全部都是私人方法,最前面的public还是不能丢,不然编译器不会执行你的代码;static是静态/类的意思,像Math,这个就是静态方法,具体解释啥的忘了,还是回来再来看的时候在搞搞。嘻嘻。

2.重载方法:这里放个图片,介绍一下待会要用的概念吧。

方法名相同,参数列表不同。例如,

哎呀..不会写哈,这里大概说一下吧,看到k1 =  int sum(int ,int),k2 = double  sum(double ,double),没必要重新定义一个函数来计算k2,k1和k2的不同就是参数不同,那用相同的....等等,我有想法了,参数不同,那我这个代码岂不是添加一下参数就好嘛??

奇奇怪怪的,没报错,就是有警告,说i,j,k1,k2没用,这个好解决,把i,j删除,之后再加上输出System.out.print(“k1 is ” + k1 + “k2 is ” + k2);,算是成了吧,重载函数就是定义同名函数,之后用哪个就让编译器选,要是int就第一个,是double是第二个。

3.听到一个名词叫计算思维。跟数学思维不一样,计算思维是说要拆解大问题,把它变成小问题。这就要求看到一个问题的时候,自顶向下的设计整个问题的整体轮廓,细化成不同的任务块。接着自底向上开始实现。

4.值传递:A = B;他们地址不一样,改变A,B不一定变。指针传递:两个指针指向同一片内存,内容的值变了,指针A和指针B也就变了。

5.

写这个好快乐啊,哎呀,今天还是1024程序员节

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: vda6.3是一份由德国汽车工业协会(VDA)发布的黄皮书,全名为“第六部分:交付物质管理 测试程序和合格标准 第三版(VDA 6.3:2022)”。该黄皮书主要内容涵盖了汽车制造行业中的交付物质管理、供应商评估和样品测试等方面内容,对车辆及其零部件的生产过程进行规范化管理,旨在提高整个产业的质量水平和效率,并保障汽车生产过程的安全性和可持续性。 对于需要下载该黄皮书的用户,可以前往VDA官网自行下载或在相关汽车质检机构购买。在下载时需要注意检查下载的版本是否为最新版,以确保所获得的信息、标准能够符合当前的行业标准,保证生产流程的安全和高效。此外,该黄皮书的内容只为指导和引导,并不是强制性的法律规定,但是掌握并实践其中内容有利于提升汽车行业的整体品质与效率,同时也可提高企业的竞争力和市场占有率。 ### 回答2: vda6.3:2022黄皮书是由德国汽车工业协会(VDA)发布的一份标准文件,其全称是“用于检测和评价轻型商用车辆碰撞测试的方法和要求”。该标准文件主要用于规范对轻型商用车辆进行碰撞测试的方法和要求,旨在保障车辆的安全性和质量,提高车辆的安全性能。 vda6.3:2022黄皮书的下载可以通过VDA官方网站(www.vda.de)进行获取。此外,也可通过一些汽车行业门户网站或汽车相关论坛进行下载。下载该标准文件需要注册并付费,具体费用因地区和网站不同而有所差异。 值得注意的是,vda6.3:2022黄皮书主要适用于轻型商用车辆,在评价乘用车辆碰撞安全性能时,应参考其他相关的标准文件,如Euro NCAP标准等。 总之,vda6.3:2022黄皮书的下载是帮助汽车行业相关从业者更好地了解轻型商用车辆碰撞测试的方法和要求,从而提高车辆的安全性能,减少交通事故的发生率,保障驾驶者和乘客的生命安全。 ### 回答3: vda6.3:2022黄皮书是一份由德国汽车工业协会(VDA)发布的标准规范文件,其主要内容涵盖汽车零部件的质量管理方面。该黄皮书提供了一套完整的技术规范和工程实践标准,旨在帮助汽车工业界制定一套适用于全球范围内的可持续发展的质量管理方案。并且可以减少汽车零部件制造过程中的错误和缺陷。 vda6.3:2022黄皮书主要分为质量管理、零部件生产的开发和评价以及供应商的评估等几个方面。它的发行目的是为了保证汽车零部件制造质量的可靠性和安全性,避免因恶劣的质量管理而导致的事故和安全隐患,并促进全球汽车工业的可持续发展。 如果你需要下载vda6.3:2022黄皮书,可以在德国汽车工业协会官网进行下载,或者在部分第三方信息渠道上进行查找。不过需要注意的是,该文件为付费文献,需要缴纳相关费用才能下载。 总之,vda6.3:2022黄皮书是汽车工业界非常重要的质量管理标准规范文件,对于汽车产业链的全面质量管理及发展起着至关重要的作用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值