*自学总结,如有错误,欢迎指正*
语句>>>
1:语句-for循环嵌套::首先得理解for循环,然后理解for循环的结束点。那么,就能理解外循环执行一次内循环执行到结束再调到外循环。此外,外循环控制行数,内循环控制每一行的个数。
printfln自带换行;printf不自带。
2:语句-for循环嵌套练习1::输出倒三角的关键:在对于内循环的次数的限定,怎么让它递减。
一是循环外定义一个变量,让之维持递减;二是让内外循环变量保持同步。 这两个方法都是基于当外循环执行几次内循环的初始化循环变量就执行几次,故保持其自减就行。一方法还有一种方法是基于循环条件表达式来实现递减的。
3:语句-for循环嵌套练习2::按序输出数字关键在于找到变与不变的关系。
注意:内层循环()中有一个控制循环次数就够了。
4:语句-for练习-99乘法表&转义字符::空格也是字符串,而字符串标志为“空格“,切记别直接摁空格。
转义字符:能转变某些字母和符号含义的符号(反斜杠+字母或符号)(用到字符串当中)如:\t:制表符,\n:回车,\b:退格,\r:按下回车键(windos下回车f符是\n\r组成,只是有的识别\n,有的识别\r,但linux是\n)。但\后面不能转义那么\要被转义,即:\\,还有\是转义后面的内容。
区分:斜杠/与反斜杠\,联合汉字八记忆:撇斜捺反。
5:语句-for循环嵌套练习3::内层循环()中前大后自减中大于,前小后自增中小于。
一个外循环内可以多个内循环,不换行的话输出是平行的。
6:语句-break&continue::break:跳出(应用switch和循环语句)记住:当break单独存在时,下面不要定义其他语句,否则执行不到. break默认跳出当前所在循环。如果想要跳出指定循环,可以通过标号来完成。(标号:字符加冒号)如:xiaoqiang: for(){wangqai: for(){break xiaoqiang;}}
continue:继续(作用范围循环)意义:结束本次循环并继续下一次循环。当continue单独存在时,下面不要定义语句,因为执行不到。continue默认继续当前所在循环。如果想继续指定循环,也可以通过标号来完成。
函数>>>
1:函数-定义::定义在类中的具有特定功能的一段独立小程序,函数也称方法。
2:函数-格式::修饰符 返回值类型 函数名(数据类型 形式参数1,数据类型 形式参数2,........){执行语句;return 返回值;}
修饰符:例如public。
返回值类型:被调用者与调用者要一致才能通过编译。
函数名定义:当出现两个以上单词时,第一个单词小写,其他第一个字母大写。
形式参数:要有顺序,是不确定的。
return:输出及结束功能。
3:函数-细节-void::(特殊情况没有具体返回值,这时return后面直接用分号结束)总结:当没有具体返回值时,java中返回
值类型只能用void表示,此时,return可以省略不写。(因为即使不写计算机也会自动补上)
4:函数-细节-错误格式::函数不能在函数中定义,而是在类中定义。
5:函数-细节-定义思维错误::定义函数结果应该返给调用者,交由调用者处理。
6:函数-两个明确::(主函数的功能是调用其他函数,所以以后不要将代码写进主函数里面)
明确一:函数功能的结果是什么?(明确返回值类型)
明确二:函数功能的实现是否需要未知内容的参与运算?(明确参数列表:参数个数,参数类型)
7:函数-两个明确-练习1::(代码的简化思维)
命名方法:类:首字母都大写。方法:首单词小写其他首字母大写。
注意:是true而不是ture&函数结果交给调用者处理。
8:函数-两个明确-练习2::
9:函数-内存加载过程::栈(子弹夹),编译与运行的区别
10:函数-重载::(函数起名根据功能来的)一:同一个类;二:同名;三:参数个数不同或返回类型不同;四:函数重载与返回类型无关;五:java是严谨性语言,如果出现函数调用的不确定性,会编译失败。
11:函数-重载练习::(函数重载的复用)
数组>>>
1:数组-概述::同一类型数据的集合,数组就是一个容器。自动从零计数。
2:数组-定义::元素类型 [] 数组名 = new 元素类型 [数组长度或元素个数]([1]:叫角码或索引)
3:数组-内存空间的划分::寄存器(cpu处理),本地方法区,方法区,栈内存,堆内存。
4:数组-栈内存::储存的都是局部变量,而且变量所属的作用域一旦结束,该变量就会立即释放。
局部代码块:限定局部变量的生命周期。
5:数组-堆内存::储存是数组和对象(数组就是对象的一种),凡是new建立的都在堆内存中。
特点:一:每一个实体都有首地址;
二:堆内存中的每个变量都有对应的默认初始化值,根据类型的不同而不同。整数:0;小数:0.0或0.0f;布尔:false;char:'\u0000';
三:垃圾回收机制。
6:数组-内存图解::分清什么情况会变成垃圾(一个数组赋值给另一个数组,null赋值给数组)。
7:数组-常见问题::当访问到数组中不存在的角码时,就会发生该异常(AarryIndexOutOfBoundsExpection)。(例如:int [] arr = new int [3]; arr[3] =5;)(自动从零计数)
当引用型变量没有任何实体指向时,还在用其操作实体,就会发生该异常(NullPointExpection)(例如:arr =null;)
System.out.println(arr);就会发生该异常(输出:[I@c17164):[代表数数组,I代表是整数类型,@是左右两边的分界线,c17164是哈希算法算出的地址值。