目录
9.3 循环结构(for,while,do...while)
13.5.2 栈:左边给数组起个名称,用于接收堆空间,称为栈
(优化)去掉之后再每个数之间价格‘,’,并且去掉最后一个','的例子:
一、基础语法之注释
1.1 什么是注释?
1.2 注释的分类
注意:有开头就有结尾
二、基础语法之关键字
2.1 什么关键字
2.2 关键字有什么特点
三、基础语法之常量
3.1 常量的类型
四、计算机存储单元及数据类型和取值范围
4.1 计算机存储单元
4.2 数据类型
4.3 取值范围
注意:变量不复制是不能使用的
如果定义一个float值直接赋值不加‘l’,那么就会出现以下报错
如果不加‘l’,那么默认就是double,需要加‘l‘进行强转
五、认识标识符
5.1 什么是标识符?
注意:如果以关键词开头,就在编译时报错了,如图所示:
5.2 大小驼峰的命名规则:
注意:在命名时,不能太随便,比如aaa,bbb,ccc,
假如这是你在项目中起这个名字,那么这个aaa一般情况下,如果没有特殊意义
或者你告诉了其他的程序员,否则这个命名没什么意义,aaa代表什么?也不要使用拼音
六、数据类型转换
注意:如果是按照数据范围从小到大,即可转换,则反之
后是要转的目标类型
6.1 自动转换
6.2 自动转换
如图所示,强转可能会导致精度(数据)的丢失:
int j 输出的是99,而不是99.99
七、运算符
7.1 算数运算符
如图所示,使用int整形来进行出发,不能有小数,所以8出5不等于1.6:
7.1.1 字符‘+’的操作的单字符相加
如图所示,输出的答案对于107,c的阿斯克马值对于97
运行结果:
如图所示,short加法转换为int类型会报错,所以我们可以看数值的最高类型是什么,就用什么数据类型接收即可:
如图所示,右侧值89.99是double类型,即使用它即可:
7.1.2 字符‘+’的操作的字符串相加
7.2 自增自减运算符
7.3 关系运算符
注意:返回值为布尔类型,双等于才是比较,但等于是赋值
7.4 逻辑运算符
7.5 短路逻辑运算符
7.6 三元运算符
例子一:
例子二(英文):
运行结果:
例子三(中文):
运行结果:
例子四(获得max值):
运行结果:
八、数据输入(Scanner)
8.1 Scanner的概述
如图所示:就像红色的提示所示,
8.2 Scanner的基本使用步骤
例子:
运行结果:
九、流程控制语句(三大类)
9.1 顺序结构(从上到下执行)
9.2 分支结构(if,switch)
9.2.1 写法一:
9.2.2 写法二:
9.2.3 写法三(多次判断语句):
9.2.4 写法三(switch):
9.3 循环结构(for,while,do...while)
大概意思就是:比如风扇一直转,如果不按下关机,那么就是一直装下去,则反之素
9.3.1 for循环
9.3.2 while循环
9.3.3 do..while语句
9.4 死循环语句
十、跳转控制语句
continue示例
break示例
十一、循环嵌套
十二、Rondom随机数
注意: 如果个体的参数值为10,那么就是0-9,包括0
十三、数组
13.1 动态数组:
13.2 静态数组:
例子:
运行结果:
13.3 数组的下标
13.4 数组的内存分配
例子一:运行arr数组名称
运行结果:(蓝色区域为输出结果,也就是数组内存地址)
例子二:运行对于的下标
运行结果:
为什么结果会为0?如下图所示,因为它的默认值为0
13.5 栈和堆的概念
13.5.1 堆:new出来的,也就是右边部分称为堆空间
13.5.2 栈:左边给数组起个名称,用于接收堆空间,称为栈
注意:所以上面13.4例子一中,输出的arr为内存地址,而对应的下标为值
栈空间中的arr就指向堆内存地址(内存空间也就是对应的数组),所以想要获取下标的值,也需要获取对应的内存地址
概述图:
两次运行 的地址不变:
13.6 常见数组问题
13.6.1 下标越界问题:
注意:定义的数组为3个空间
13.6.2 空指针异常:
定义为null,所以不能访问
13.7 遍历数组
例子一:
例子二:
运行结果:
例子三:(使用数组的长度来for循环)
运行结果:
13.8 如何使用数组查找最大值
十四、数组的遍历之一行遍历
注意:只需要将sout中的println去掉即可
不去掉ln的例子:
去掉之后的例子:
去掉之后再每个数之间价格‘,’的例子:
(优化)去掉之后再每个数之间价格‘,’,并且去掉最后一个','的例子:
注意:也可以直接赋值arr.length==5