Java循环结构
1.Scanner从键盘接受不同类型数据的方法罗列
表格中没有接受字符数据的方法,要想接收字符数据可采用以下策略
2.do-while循环注意事项
while语句后需加分号;
根据具体业务需求决定是否选用;
3.for循环注意事项
(1)无论三个表达式是否书写,两个分号都得写;
(2)如果for()中不写第三个表达式n++,那么就必须在循环体内添加n++,以防死循环;(其他两个表达式类似,不写时,应该采用应对策略)
4.三种循环的应用场景(看看就行,有点扯)
(1)for循环:循环次数固定;
(2)while循环:适于不知道循环次数,循环与否===是否满足某个条件
(3)do-while循环:类似while循环,但循环至少被执行一次。
5.嵌套循环,涉及变量的更新和复位
(1)嵌套循环中,对于内外重循环变量,需要注意内重循环变量的更新与 “复位” ;其他在嵌套循环中用到的变量也要注意是否需要复位;
6.break语句和continue语句
(1)break语句只跳一层,即当前循环;
(2)continue语句只在循环结构中使用,且其只针对continue语句所在循环起作用,对外层循环无作用;
(3)由内层循环,直接终止本次外层循环,直接开始下次外层循环:采取什么策略?
(7)eclipse调式快捷键
eclipse工具的调试方式不好玩……拥抱IDEA
(1)F11开启debug
(2)单步调试:F6;
(3)直接运行到下一个断点:F8;
(4)F5:可以进入到方法中去,进行方法的调试
Java一维数组
1.一维数组的创建
(1)数组是一种引用数据类型
(2)数组创建后,数组的各元素均会有一个默认值;
int型数组默认值:0;
String:null;(对象类数组元素默认值为null)
2.一维数组的创建并初始化
3.增强型for循环
增强for循环适用于可迭代对象,,,
根据实际业务场景决定选用普通for循环还是增强for循环;
4.冒泡排序
Java二维数组
1.二维数组声明初始化
(1)二维数组初始化时,行数一定要有,列数可有可没有;
(2)二维数组初始化,一定要 二次初始化 ,否则会空指针异常
注:根据以往经验,二维数组使用的并不多
2.二维数组,直接初始化,取值
Java日常总结构造方法
1.构造方法需要写出来,无参构造必须要写
(1)构造方法建议写出来,不建议使用默认的;
(2) 无参构造必须要写出来 ,有参构造也要写出来(如果有参构造有必要的话);
2.get、set方法中添加其它逻辑
(1)get和set方法中,除了给成员属性赋值和取值外,是否需要添加其他逻辑(如,值判断逻辑等),需要看具体需求;
(2)如果get和set方法中除了有赋值和取值逻辑,还有其他其他逻辑,那么,推荐在构造方法中,通过this.get/set()的形式操作属性,以免初始化对象的过程中错失验证过程
3.bean类,需要提供一个返回所有成员属性信息的方法,这不是必须,是习惯
(1)bean类,除了必须的get和set方法外,尽量提供一个可返回所有成员属性信息的方法;
4.equals()方法注意事项
equals()方法注意事项:字符串比较时,一般将“skfjksd”放在外边,字符串变量放在equals方法的()中,这样可以防止出现null.equlas()的情况;
equals()方法的底层细节还不明确~~~
5.方法也可以适当添加文档注释
用@***的方式
Java方法
1.方法分类罗列
无参无返回值、无参有返回值、有参无返回值、 有参有返回值;
没什么需要记录的东西……
Tips:
(1)有返回值的方法必须正确地接收;(注意:红框中没有报错)
(2)具体把那些业务实现浓缩成一个方法,这个度,需要在工作中慢慢体味;
2.main方法的参数
(1)main方法以数组作为方法参数,又叫命令行参数。命令行参数可以在执行Java程序时接收 字符串 类型的数据;
(2)这儿目前暂时没有感觉到有什么作用;
如以下程序,分别演示【直接运行】和【通过eclipse运行】,这两种方式给main方法传递参数
直接运行:
通过Eclipse运行:
3.方法重载
(1)定义:方法名相同,参数列表不同;
(2)调用方法时,根据参数列表的匹配,去决定具体调用哪一个方法;
4.方法传值过程中变量值的变化,这儿以int类型变量为例
int变量为基本数据类型,调用方法时,只是把变量的值赋给了add方法的形参;在该过程中,主方法中的变量值并未改变;
但需要注意,如果是传的是数组、对象等引用数据类型呐?
发现,和int类型的情况不同,当参数是引用类型的数组时,主方法中的数组变量值改变了;
数组a1指向的是数组第一个元素的内存地址,当调用updateArray()方法时,程序将a1的值复制给了该方法的形参变量a,即此时a变量的值也是数组第一个元素的内存地址,即对a所对应变量的更改也是对a1所应对应变量的更改。(其他引用数据类型,如对象也是这种情况)
5.可变参数
(1)可变参数好像用到的并不多,这儿了解一下便可;
(2)可变参数的参数可以为0个
(3)一个方法中只能有一个可变参数;
(4)可变参数的使用方法
结果:这里的 n的作用其实就是类似于一个数组 ,把传入的参数保存到数组里面去。 实际取值的时候也可按照数组的方式去取:
结果:
(4,补):
结果:
(5)多个参数的情况下:可变参数必须在最后。
(6)注意下数组:可变参数列表和数组关联。(PS:可变参数的底层实现就是数组)
(这个当然是这样,没必要着重点出)
(7)当涉及到方法重载时,用到可变参数的方法被调用顺序是靠后的
6.文档注释
对类的信息说明、功能描述;方便生成帮助文档Api
以一下程序为例,演示帮助文档过程(了解就行,目前没必要深究):
通过以下命令生成:用到了 javadoc命令
然后,会发现在TestDemo.java文件所在目录下生成了:doc文件夹
进入doc文件夹,打开其中的一个叫index.html的文件即可
便会看到这样的东西
7.eclipse工具方法的调试
知道这些快捷键就行,后续得在实践中巩固(PS:拥抱IDEA(☆_☆)/~~ )
F5:进入方法调试;
F7:由方法内部返回调用处;