J2se基础语法
1.标示符
组成:$,数字,下划线
开头:字母,下划线,$(数字不行,不能有空格)
要求:长度无限,大小写敏感(如HelloWorld)
Ex:
2.关键字(都为小写英文)
3。java常量 System.out.println(常量)
整型常量:1234
实型常量:3.14
字符常量:‘a’
逻辑常量:true, false
字符串常量:“helloworld”
4.java变量
数据类型 变量名 变量值
Code segment:代码区
stack:栈(存放局部变量:临时变量)
heap:堆
5.java变量的分类
按被声明的位置:
局部变量:方法或语句块内部定义的变量
左大括号到右大括号是main方法的方法体:局部变量
成员变量:方法外部,类的内部定义的变量(main外的变量)
两者区分:{。。。成员。。main{局部}。。。}
大括号里声明的变量出了大括号就没人认识了
按所属的数据类型:
基本数据类型
引用数据类型
6。java数据类型的划分
逻辑型:布尔型boolean(只允许true或false,不能用0或非0整数)
文本型:char
Char echar=‘a’
Char c1=’\u0061’;(16进制表示)
‘\’(转义字符)可以将其后字符转变为其他的含义 ex: char c2=‘\n’;
//’\n’表示换行符
整数型:byte, short, int, long
三种表示形式:十进制:12,-314,0
八进制:以0开头
十六进制:0x开头或0X开头
整型常量默认为int型
Long型可以后加L或l
浮点数型:float, double(默认double,float后面要加f或F)
十进制数形式:314.0 ,3.14
科学计数法型:3.14e2,3.14E2 ,100E-2
7.基本数据类型转化:
1.布尔型不能转换为其他类型,其他型也不能转换成布尔型
2.整形,字符型,浮点型数据在混合运算中遵守规则:
1.容量小的转换为容量大的数据类型(容量大小:byte,short,char->int->long->float->double
2.byte,short,char之间不会相互转化在计算前要变成int再运算
3.容量大的转换为容量小的,加强制转换符(后果:精度降低或溢出)
((i1+i2)*1.2)前面加的float为强制转换符
4.多种类型混合运算,系统将自动将所有数据转换成容量最大的一种数据类型再计算
5.实数常量:默认为double(如1.2)
整数常量:默认为int(如123)
注:两种写法有本质区别:0.1前面加的强制转换
0.1f在计算机内部就是一个float类型(4字节),而(float)0.1本来是本来是8字节加了float强制转换成了4字节
8.格式注意的问题:
1.大括号对齐
2.遇到{缩进,Tab/Shift+Tab
3.程序块之间加空行
4.并排语句之间加空格
5.运算符两侧(=)加空格
6.{前面有空格
7.成对编程(写完左大括号立刻写右大括号)
9.java运算符:
1算术运算符:+,-,*,/,%,++,- -
如:i=(i2++)先把i2赋值给i再递加1
i=(++i2)先加再赋值给i
2关系运算符(两边都是true或flase,且只能是):>, <, >=, <=, = =, !=(不等于)
3逻辑运算符:!(取反),&,^(异或),&&(短路与),~, |(或),||(短路或)
4位运算符:&,|,^,~,>>,<<,>>>
5赋值运算符:=
当=两侧数据类型不同时,可是使用默认类型转换或使用强制类型转换
6扩展赋值运算符:+=,-=,*=,/=
7字符串连接运算符:+
还可用于对字符串进行连接,+两侧的操作书中只要有一个是string型,系统会自动将另一个操作数转换为字符串再进行连接。当进行打印时,无论任何类型,都自动转为字符串类型。
注:1.++(- -)在前时先运算再取值,在后时先取值再运算
2.Print后面没有ln不换行,有ln换行
8表达式
9三目条件运算符
1表达格式:x?y:z(x为布尔型表达式,先计算x的值,为true则三目运算的结果为表达式y的值,否则整个计算结果为表达式z的值。