因为要开始学习android开发,所以前段时间刚刚回顾看完javase的语法基础和oop,现在开始总结基础语法:
标识符规则
1.数字不能开头 2.不能关键字 3.严格区分大小写,尽量知名达意
类名 : 首字母大些,第二个单词首字母大些 如: ChengDu
方法名 :首字母小写,之后每个单词首字母大写 如chengDu
数据类型
基本数据类型:整数,小数(浮点数),字符(只能用单引号''包裹),布尔
引用数据类型:数组,类,接口,字符串(String属于引用数据类型,但定义方式和基本数据类型一样)
基本数据类型的4类8种
整数型
字节数 数据范围
byte 1 -128~127
short 2 -32768~32767
int 4 -2147483648~2147483648
long 8 -2的63次方~2的63次方减1
浮点型
float 4 -3.403E38~3.403E38
double 8 -1.798E308~1.798E308
字符型
char 2 表示一个字符,如('a','A')
布尔型
boolean 1 只有两个值,true或false
①java中默认的整数类型是int类型,
如果长度大于int,比如123456789,需要给后面写L,比如123456789L
②java中默认的浮点类型是double类型,1.26F为float型,5.28D位double型
在内存中,占有一个小的区域,存储数据,数据内容可以变化
定义变量的语法格式
数据类型 变量名 =数据值;
int a=1;
变量名 a必须是标识符,"=100"是给变量赋值
1.局部变量定义以后,不赋值是不能使用的,必须初始化变量
2.局部变量是有自己的作用范围,有效范围在定义的一对大括号内
3.不同类型的变量是可以一起运算的
数据转换原则:如范围小的(byte)转换为范围大的 数据类型值(int)
int i=100;double b=i;
数据范围小的转换为数据范围大的,称为自动转换
byte->char->short->int->long->float->double 取值范围小到大
boolean类型不参与类型转换
数据范围小的转换成范围小的,称为强制转换
因为强制转换会损失精度,所以做的比较少
公式: 变量名=(被强转类型)被转的数据值
double d=2.63;
int i=(int)d;
运算符
+ 正号,连接作用;'+'遇到字符串都会成连接符
++ 自增1
-- 自减1
* 乘法
/ 除法
% 取模/获取余数 double i=18.264 ; int y=6; k=i%y; 输出0.263999999935
注意
自增运算 ++ a++与++a都会自己增加1,--同理
++写在变量前后的区别
int i=5;
int j=i++; //输出i =>6 j=>5
++在后,后算i++,先算j=6
int m=5
int n=++m; //输出 m=>6 n=>6
int a=5;
int b=++a+10; //输出 a=>6 b=>16
int a=5;
int b=a+++10; //输出 a=>6 b=>15
逻辑运算符:对两个boolean类型数据之间进行计算
与 & : 一边是false,运算结果是false ,见false为false
或 | : 一边是true,运算结果就是true,见true为true
异或 ^ :两边相同为false,两边不同为true 同false异true
非 ! :!true=false !fasle=true
短路与 && :一边是false,另一边不运行
短路或 ||:一边是true,另一边不运行
int i=3; int j=4;
syso(3>4&&++j>2); //输出false i为3 j为4
三元运算符
布尔表达式?结果1:结果2;
布尔表达式的结果是true,三元运算符的结果就是结果1
布尔表达式的结果是false,三元运算符的结果就是结果2
String s=0==0?"哈":"呵"; //输出s=>哈
下一章 引用数据类型