JVM;java虚拟机.加载运行.class文件
.JRE;java运行环境,除了包含JVM以外还包含了运行java所必须的环境.
JDK;java开发工具包;包含JRE以外还包含了java所必须的命令工具
变量、八种基本数据类型、类型间的转换变量:是内存上的一块存储区域,它的内容可以改变,但它的自身不能改变.通俗的说(变量就是可以改变的量)
八种数据类型为:byte short int long float double char boolean
byte:整型(字符型) 1个字节 -128到127(8位2进制)
short:短整型,2两个字节 -2的15次方到2的15次方-1(16位2进制)
int:整型,4个字节 -2的31次方到2的31次方-1(32位2进制)
long:长整型,8个字节 -2的63次方到2的63次方-1(64位2进制)
float: 浮点型, 单精度 4个个字节-很大(大于long)(32位2进制)
double:浮点型,双精度 8个字节 很大很大(64位2进制)
boolean:布尔型,1个字节,true,false(8位2进制)
char:字符型,2个字节 0到65535的范围,采用Unicode码表(16位2进制)
类型之间的转换:小转大自动转.大转小需要强转;
大转小需要注意不能超过小类型的范围(否则将会溢出)
基本类型由小到大依次为:
byte----short----int----long----float----double
char----
运算符: 运算的符号算数运算符:
+,-,*,/,%,++,–;
%:取模/取余,余数为0即为整除
++/–:自增1/自减1,可在变量前也可在变量后
单独使用时,在前在后都一样
被使用时,在前在后不样
i+的值为i-------(i–的值为i)
++i的值为i+1------(–i的值为i-1)
***注;在java中的除法"/".整型除以整型最后的结果也是整型,有小数位的会被无条件舍弃.
关系运算符:
>,<,>=,<=,==,!=
关系运算的结果为boolean型, 关系成立则为true,关系不成立则为false.
逻辑:&&,||,!&&:逻辑与(并且),两边都为真则为真,见false则false
||:逻辑或(或者),有真则为真,见true则true
!:逻辑非(取反),非真则假,非假则真
赋值:=,+=,-=,*=,/=,%=赋值运算符:=
扩展赋值运算符:+=,-=,*=,/=,%=
字符串连接:+
若两边为数字,则做加法运算
若两边出现了字符串,则做字符串连接
任何类型与字符串相连,结果都会变为字符串类型(同化作用)
条件/三目:?:语法:
boolean?数1:数2
整个表达式是有值的,它的值要么是?号后的数1,要么是:号后的数2
计算boolean的值:若为true,则整个表达式的值为?号后的数1.若为false,则整个表达式的值为:号后的数2
***注;整数直接量可以直接赋值给byte,short,char,但不能超出范围
byte,short,char型数据参与运算时,系统一律自动将其转换为int再运算.
分支结构 if结构:1条路,单分支结构语法:
if(boolean值){
语句块
}
执行过程:先判断boolean的值: 若为true,则执行语句块1(if整个结构结束) 若为false,则if直接结束.
if…else结构:2条路,双分支结构语法:
if(boolean值){
语句块1
}else{
语句块2
}
判断boolean的值: 若为true,则执行语句块1(整个if结束) 若为false,则执行语句块2(整个if结束)
if…else if结构:多条路,多分支结构语法: if(boolean1){
语句块1
}else if(boolean2){
语句块2
}else if(boolean3){
语句块3
}else{
语句块4
} 判断boolean1,若为true则执行语句块1(结束),若为false则 再判断boolean2,若为true则执行语句块2(结束),若为false则 再判断boolean3,若为true则执行语句块3(结束),若为false则直接执行语句块4;
switch…case结构:多分支结构 switch(0-3的任意数) {case 1:
代码块
break;
case 2:
代码块
break;
case 3:
代码块 break;
case 0:
代码块
break;
default:
代码块
}
switch只可以用byte,short,int,char,String,枚举类型
用break:跳出switch,否则直接贯穿
循环结构 循环三要素:循环变量初始化
循环条件(以循环变量为基础)
循环变量的改变(向着循环的结束变化)
while结构:先判断后执行while(boolean值){
语句块-------------需要反复执行的代码
}
do…while结构:先执行再判断,最少执行一次
do{
语句块-------------需要反复执行的代码
}while(boolean);
for (int i = 0; i < 循环次数; i++) {
循环体-------------需要反复执行的代码
}
数组(array):
数组是一种引用数据类型(需要new)
相同数据类型元素的集合
定义:int[] arr= new int[5]:给数组中的元素做初始化
访问的是数组中的元素
通过(数组名.length(长度))可以获取数组的长度(元素的个数)"a.length(长度)"
通过下标/索引来访问数组中的元素,下标从0开始,最大到(数组的长度-1即length-1)
遍历/迭代:从头到尾挨个走一遍,用for循环或者foreach遍历数组
int[] a=new int[5];
for (int i = 0; i < a.length; i++) {
System.out.println(a[i]);//用for循环遍历数组
}
for (int i : a) {
System.out.println(i);//用foreach遍历数组(建议)
}
方法:
封装一段特定的业务逻辑,一个方法只做一件事.并且可以被反复调用,减少代码重复,利于代码重复使用以及后期维护,拓展.
方法的定义:
访问修饰词 返回值类型 方法名称(参数列表(可以任意多个)) {
方法体==============具体的业务逻辑方法实现
}
调用方法:
无返回值方法:方法名(有参传参);
有返回值方法:数据类型 引用= 方法名(有参传参);



