一,基础语言要素
函数
1,标识符:给类,方法,变量起的名字。spa
1)必须以字母,下划线和$符号开头,不能以数字开头,其他字符能够是字母,下划线,$符号和数字
code
2)只能包含两个特殊符号,下划线 _和$符号,不容许有任何其余的特殊符号
对象
3)区分大小写
内存
4)标识符不能包含空格
作用域
2,关键字:只有系统才能用的标识符数学
1)true,false,null不是关键字!是字面量
table
2)main不是关键字,可是是一个特殊的单词,能够被JVM识别,主函数是固定格式,做为程序的入口。
基础
二,八中基本数据类型变量
1)四种整数类型(byte,short,int,long)
byte:8位,范围:-2^7——2^7-1
short:16位 ,范围:-2^15——2^15-1
int :32位,范围:-2^31——2^31-1
long:64位,范围:-2^63——2^63-1
注意:整数字面量默认值是int类型,因此定义long类型数据后边加“l”或“L”
2)两种浮点数类型(float,double)
float:32位,后缀为F或f,
double :64位,后缀为D或d,
注意:浮点数字面量默认值是double,因此定义float类型时,后边加F
3)一种字符类型(char)
char:16位,是整数类型。用单引号括起来的一个字符(能够是一个中文字符),使用Unicode码表明字符,0~2^16-1
注意:·不能为0个字符
转义字符:\n换行,\t回车,\"双引号,\\单斜杠
两字符char之间使用“+”链接,内部先把字符转成int类型,再进行加减运算。char实质是一个数!显示的时候,通过处理显示为字符
4)一种布尔类型(boolean)
true false ;
5)类型转换
char--->
自动转换: byte--->short--->int--->long--->float--->double
强制转换:①会损失精度,小数点以后的数字所有舍弃;②容易超出取值范围
三,常量和变量
1,变量:内存中一块存储空间,能够保存当前数据。在程序运行过程当中,其值能够改变。
1)必须声明且初始化以后使用。(在同一做用域中不能重复声明)
2)变量必须明确类型
3)变量有做用域,变量做用域越小越好
4)局部变量在使用时必定要初始化!成员变量在对象建立后有默认值,能够直接使用。
5)在方法中定义的局部变量在方法被加载时建立。
2,常量:在程序运行时,其值不改变。
3,无论常量仍是变量,1,必须先定义,才能被使用。即如今内存中开辟存储空间。才能往里边存入数据。2,其存储空间有数据类型的差异。即有些变量存储空间存储整数,有些变量存储空间存储小数
四,运算符和表达式
1)数学运算:+ - * / % ++ --
注意:
①+-*/两端的变量必须是同种类型,并返回同种类型 ;
②%取于运算,负数的余数符号与被模数符号相同,-1%5=-1,1%-5=-1 ;
③注意整除问题:1/2=0(整数的除法算式整除0.5=0) 1.0/2=0.5
自增自减
int a=1; b=a++; System.out.println(a) ; sop(b) ; a=2;b=1 |
自增自减
x,y,z分别是5,6,7 计算z+=--y*z++; z=z+--y*z++ ----->42=7+5*7 从右往左入栈 |
2)位运算:& | ~ ^ >> << >>>
3)关系运算符:> < >= <= == !=
4)逻辑运算符:&& || ! & |
短路运算:&&:前边为false,则后边不运算,||:前边为true则后边不运算
5)条件运算符(三目运算)
表达式1?表达式2:表达式3
注意:三目运算符:表达式2和表达式3若是都为基本数据类型,则计算结果由容量高的决定。如:int x=4; x>4?99.9:9 ;,99.9为double类型,9为int类型。double容量高,因此结果为9.0