1.Java概述
1.0 JVM,JRE,JDK的概述
JVM是java虚拟机,java程序需要运行在虚拟
JDK包含JRE和开发工具包
JRE包含核心类库和JVM
1.10 helloworld案例
1.1.0编写代码步骤
首先定义一个类,public class 类名,在类定义后加上一对大括号{},在大括号中间添加一个主(main)方法/函数,public static void main(String[] args){},在主方法的大括号中间添加一行输出语句System.out.println(“HelloWorld”).
2.JDK环境配置
2.0 如何配置
ᅳ 创建新的变量名称:JAVA_HOME
计算机-右键属性-高级系统设置-高级-环境变量-系统变量
ᅳ 为JAVA_HOME添加变量值:JDK安装目录
ᅳ 在path环境变量最前面添加如下内容
%JAVA_HOME%\bin;
2.1 关键字
2.1.0 关键字概述
ᅳ 被Java语言赋予特定含义的单词
2.1.1 关键字特点
ᅳ 组成关键字的字母全部小写
ᅳ 常用的代码编辑器,针对关键字有特殊的颜色标记.
3.语法格式
3.0 常量
ᅳ 在程序执行的过程中,其值不可以发生改变的量
3.0.1 常量分类
ᅳ 字符串常量 用双引号括起来的内容(“HelloWorld”)
ᅳ 整数常量 所有整数(12,-23)
ᅳ 小数常量 所有小数(12.34)
ᅳ 字符常量 用单引号括起来的内容(‘a’,’A’,’0’)
ᅳ 布尔常量 较为特有,只有true和false
ᅳ 空常量 null
3.1 变量
ᅳ 在程序执行的过程中,在某个范围内其值可以发生改变的量
ᅳ 从本质上讲,变量其实是内存中的一小块区域
3.1.0 变量的定义格式
ᅳ 数据类型 变量名 = 初始化值;
3.2 数据类型转换
3.2.0 隐式类型转换
取值范围小的数据类型与取值范围大的数据类型进行运算,会先将小的数据类型提升为大的,再运算
3.2.1 强制类型转换
目标类型 变量名 = (目标类型) (被转换的数据);
如果超出了被赋值的数据类型的取值范围得到的结果会与你期望的结果不同
4.运算符
4.0算数运算符
算数运算符有
* +,-,*,/,%,++,--
4.1赋值运算符
基本的赋值运算符:=
扩展的赋值运算符:+=,-=,*=,/=,%=
4.2关系运算符
基本使用及注意事项
关系运算符包含以下内容:
==,!=,>,>=,<,<=
关系运算符的结果都是boolean型,也就是要么是true,要么是false。
注意事项:
关系运算符“==”不能误写成“=”。
4.3逻辑运算符
A:逻辑运算符有哪些
&,|,^,!
&&,||
B:注意事项:
a:逻辑运算符一般用于连接boolean类型的表达式或者值。
b:表达式:就是用运算符把常量或者变量连接起来的符合java语法的式子。
算术表达式:a + b
比较表达式:a == b(条件表达式)
C:结论:
&逻辑与:有false则false。
|逻辑或:有true则true。
^逻辑异或:相同为false,不同为true。
!逻辑非:非false则true,非true则false。
特点:偶数个不改变本身。
4.3三元运算符
格式
(关系表达式)?表达式1:表达式2;
如果条件为true,运算后的结果是表达式1;
如果条件为false,运算后的结果是表达式2;
5.语句
5.0 选择流程控制语句
5.0.1 If语句的格式1及执行流程
if语句第一种格式:
if(关系表达式) {
语句体
}
执行流程:
首先判断关系表达式看其结果是true还是false
如果是true就执行语句体
如果是false就不执行语句体
5.0.2 If语句的格式2及执行流程
if语句第二种格式:
if(关系表达式) {
语句体1;
}else {
语句体2;
}
执行流程
首先判断关系表达式看其结果是true还是false
如果是true就执行语句体1
如果是false就执行语句体2
5.0.3 If语句的格式3及执行流程
if语句第三种格式:
if(关系表达式1) {
语句体1;
}else if (关系表达式2) {
语句体2;
}
…
else {
语句体n+1;
}
执行流程
首先判断关系表达式1看其结果是true还是false
如果是true就执行语句体1
如果是false就继续判断关系表达式2看其结果是true还是false
如果是true就执行语句体2
如果是false就继续判断关系表达式…看其结果是true还是false
…
如果没有任何关系表达式为true,就执行语句体n+1
5.0.3 switch语句的格式及执行流程
switch表示这是switch语句
表达式的取值:byte,short,int,char
JDK5以后可以是枚举
JDK7以后可以是String
case后面跟的是要和表达式进行比较的值
语句体部分可以是一条或多条语句
break表示中断,结束的意思,可以结束switch语句
default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。
5.1 循环流程控制语句
5.1.0 for循环的格式及基本使用
for循环语句格式
for(初始化语句;判断条件语句;控制条件语句) {
循环体语句;
}
执行流程
A:执行初始化语句
B:执行判断条件语句,看其结果是true还是false
如果是false,循环结束。
如果是true,继续执行。
C:执行循环体语句
D:执行控制条件语句
E:回到B继续
5.1.1 while循环的格式
While语句的格式
基本格式
while(判断条件语句) {
循环体语句;
}
扩展格式
初始化语句;
while(判断条件语句) {
循环体语句;
控制条件语句;
}
5.1.2 do…while循环的格式
do…while语句的格式
基本格式
do {
循环体语句;
}while((判断条件语句);
扩展格式
初始化语句;
do {
循环体语句;
控制条件语句;
} while((判断条件语句);
三种循环的区别
虽然可以完成同样的功能,但是还是有小区别:
do…while循环至少会执行一次循环体。
for循环和while循环只有在条件成立的时候才会去执行循环体
for循环语句和while循环语句的小区别:
使用区别:控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。
5.2 控制循环语句
5.2.0 控制跳转语句break
break的使用场景:
在选择结构switch语句中
在循环语句中
离开使用场景的存在是没有意义的
break的作用:
跳出单层循环
5.2.1 控制跳转语句continue
在循环语句中
离开使用场景的存在是没有意义的
continue的作用:
单层循环对比break,然后总结两个的区别
break 退出当前循环
continue 退出本次循环
6.数组
6.0 数组的概念
数组是存储同一种数据类型多个元素的容器。
数组既可以存储基本数据类型,也可以存储引用数据类型。
6.1数组的定义格式
格式1:数据类型[] 数组名;
格式2:数据类型 数组名[];
注意:这两种定义做完了,数组中是没有元素值的。
6.1数组的初始化
Java中的数组必须先初始化,然后才能使用。
所谓初始化:就是为数组中的数组元素分配内存空间,并为每个数组元素赋值。
6.1.0 动态初始化
格式:数据类型[] 数组名 = new 数据类型[数组长度];
数组长度其实就是数组中元素的个数。
6.1.1静态初始化
初始化时指定每个数组元素的初始值,由系统决定数组长度
7.方法
7.0 方法的概述
方法就是完成特定功能的代码块
7.1 方法的格式
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) {
函数体;
return 返回值;
}
7.2 方法重载
在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可。
方法重载特点
与返回值类型无关,只看方法名和参数列表
在调用时,虚拟机通过参数列表的不同来区分同名方法
|
|