1 环境搭建与语法入门
1.1常量于变量
1.1.1 基本数据类型
1.1.2 进制表示
二进制:以B结尾,只有0和1。
八进制:以0来头或以O结尾,包括0-7的数字 如:037,56O
十进制:以D结尾,包括0-9的数字。
十六进制表示:以0x或0X开头或以H结尾,包括0-9和A-F 如: 0x3D, 37BAH
1.1.3 变量声明
格式:数据类型 变量名;
例:
int n; //声明整型变量n long count; //声明长整型变量count
1.1.4 赋值
使用“=”运算符进行赋值
例:
int n; //定义int型变量n n = 3; //将3赋值给n
或在定义的同时赋值
int n = 3;
1.1.5 变量定义
int octal = 037; //定义int类型变量存放八进制数据 long longNumber = 0xa2cdf3ffL; //定义变量存放十六进制长整型数据 short shortNumber = 123; //定义变量存放短整型数据 bytr b = 10; //定义变量存放byte类型数据
1.1.6 浮点型(Float)
浮点型字面默认情况下表示double类型,也可以在值后面加d或D
如:123.43d或123.43D
表示float类型,则需要在字面值后面加f或F
如:23.4f或23.4F
public class FloatDemo{ public static void main(String[] args){ //定义一个单精度浮点型变量,存放1234.328 float f = 1234.328f;//必须加f或F System.out.println("f = "+f); //定义一个双精度浮点型变量,存放5623.465 double d = 5623.465; System.out.println("d = "+d); //将整型赋值给浮点型 double d1 = 123; System.out.println("d1 = "+d1); //变量间赋值 double d2 = d; System.out.println("d2 = "+d2); } }
输出图如下
用科学计数法表示浮点数
例:
double d = 1.23E5; float f = 1.23e5f; double d1 = .2;
输出效果图:
1.1.7 字符型(Char)
字符型字面值用单引号内的单个字符表示,如: 'a', 'b', '%'等。
定义字符型变量:
public class CharDemo{ public static void main(String[] args){ //定义一个变量存放字符'a' char a = 'a'; System.out.println("a = "+a); char ch = 65;//此时以ASCII码对应的值输出 System.out.println("ch = "+ch); } }
输出效果如图
注:如果字面值超出char类型所表示的数据范围(大于65535),需要进行强制类型转换。但可能会导致数据丢失!
1.1.8 布尔值(Boolean)
布尔值只能定义为turn和false
例:
bollean b = turn;
1.1.9 字符串(Starting)
双引号引用起来的0个或多个字符
例:
String s1 = "Hello";
1.1.10 数据类型转换
自动类型转换:
强制类型转换:如上图箭头反向的转换极为强制类型转换。
当A类型的数据表示范围比B大,则将A类型的值赋值给B类型,需要强制类型转换
例:
double d = 123.4; float f = (float)d;
附1:转义字符
附2:ASCII码表
1.2 运算符
1.2.1 算术运算符
例:
int num1 = 10,num2 = 5; int result;//存放结果 result = num1+num2; System.out.println(num1 + "+" + num2 + "=" + result); //字符串连接 System.out.println("" + num1 + num2); //减法 result = num1-num2; System.out.println(num1 + "-" + num2 + "=" + result); //乘法 result = num1*num2; System.out.println(num1 + "*" + "=" + result); //除法 result = num1/num2; System.out.println(num1 + "/" + num2 + "=" + result); //分子分母都是整型时,结果为整除后的结果 System.out.println(13/5); System.out.println("13/5=" + 13.0/5); //求余数 result = 13%num2; System.out.println("13%" + num2 + "=" + result); System.out.println("13.5%5=" + (13.5%5));
运行截图:
对于自增运算的补充:
1.2.2 赋值运算符
格式:变量 = 表达式;
例:
int n = 3; double d = 123.4; double d1 = d;
注意:赋值运算符是从左往右运算。
复合赋值运算符:
1.2.3 关系运算符
用于判断两个数据的大小,比较的结果是一个布尔值(Boolean)
几种常见的关系运算符:
注意:'A' > 'B' 结果为false,比较的是两个字符的ASCII码值。
例:
int a = 3,b = 5; System.out.println("a<b=" + (a<b)); System.out.println("a>b=" + (a>b));
运行截图:
1.2.4 if条件结构
if-else语句的格式:
if(条件){ <语句块> }else{ <语句块> }
1.2.5 逻辑运算符
逻辑运算符有与(&&或&)、或(||或||)、非(!)三种。
(1)“与”运算符
&运算符:
int n = 3; boolean b = (3>7)&((n++)<2); //b = ? n = ?
运行截图:
&&运算符:
int n = 3; boolean b = (3>7)&&((n++)<2); //b = ? n = ?
运行截图:
注意:&&运算符又叫短路运算符,如果第一个表达式的值就能决定表达式最后的结果,运算符右边的表达式就不再计算了。
(2)“或”运算符
|运算符:
int n = 3; boolean b = (3<7)|((n++)<2); //b = ? n = ?
运行截图:
||运算符:
int n = 3; boolean b = (3<7)||((n++)<2); //b = ? n = ?
运行截图:
注意:||运算符又叫短路运算符,如果第一个表达式的值就能决定表达式最后的结果,运算符右边的表达式就不再计算了。
(3)“非”运算符
!运算符:对原条件进行取反
例:!(3<5),结果为false
1.2.6 条件运算符
Java中的条件运算符是三目运算符
语法格式:(布尔表达式)?(表达式1):(表达式2)
当布尔表达式的值为true,则返回表达式1的值,否则返回表达式2的值
注:可以理解为if-else条件语句的简写。
1.2.7 运算符的优先级
运算符优先级如图
例:
int x = 4,y = 6,n; n = x*y+(x%2)-(x/y); //n = ?
运行截图:
1.2.8 运算符总结
1.3 java结构选择
1.3.1 流程控制语句
三大流程控制语句:顺序、选择(if、if-else、switch)、循环(while、do-while、for)
(1)选择结构
if、if-else语句格式:
多重if-else语句格式:
if嵌套语句格式:
switch结构: