目录
一.关键字
1.定义:被java语言赋予了特殊含义的单词。
2.特点:所有的关键字都是小写的。
3常见关键词
定义数据类型:class、byte、short、int、long、float等
定义数据类型值:true、flase、null等
定义流程控制:if、else、switch、while、do、for等
定义访问权限修饰符:private、public、protected等
定义类,函数,变量修饰符:extends、implements等
定义建立实例及引用实例,判断实例:new、this、super等
异常处理:try、catch、finally、throws等
包:package、import
其他修饰:native、assert等
二.标识符
1.定义:给一个类、接口、方法、变量取名字。
注意:类和接口的首字母推荐大写,方法和变量名首字母推荐小写。
2.注意事项:开头字母不能是数字
开头不能是关键字
3.Java中严格区分大小写
注:为了提高阅读性,起名字时要尽量有意义。
4.命名规范:
包名:多单词组成时所有字母都小写。如:xxxyyyzzz
类名接口名:多单词组成时,所有单词的首字母大写。如:XxxYyyZzz
变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。(驼峰命名规则)如xxxYyyZzz
常量名:所有字母都大写,多单词时每个单词用下划线连接。如:XXX_YYY_ZZZ
三.注释
1定义:注解说明解释程序的文字。
2.好处:提高了代码的阅读性。
3.注释格式:
单行注释://注释文字
//注释文字
多行注释:/*注释文字*/
/*注释文字*/
文档注释:/**注释文字*/
/**注释文字*/
4.对于单行注释和多行注释,被注释的文字不会被JVM(Java虚拟器)解释执行。
对于文档注释,是Java特有的注释,其中注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的该程序的说明文档。
四.常量与变量
1.常量定义:不会被改变的值(放在面向对象来说)
变量定义:在程序运行当中随时可能改变的值
2.变量:数据类型 变量的名称(按照标识符的规则首字母推荐小写) = 初始化值(变量值);
3.Java数据类型(基本分为两类)
基本数据类型:8种数据类型
1.数据类型:整数型:byte(1字节)、short(2字节)、int(4字节)、long(8字节)
注:每8位(0、1)占一个字节,1024个字节组成1M,1024M组成1G.
浮点型:float、double
2.字符类型
char:占2个字节。
3.布尔类型
boolean:true、false
4.类型转化问题
类型大小排列(从小到大):
byte、short、long、int、float、double
从小到大,隐式转化(自动转化)
public class Example{
public static void main(String[] args){
int a=3;
byte b=4;
int c=a+b;
System.out.println(c);
}
}
结果:
从大到小,显示转化(强制转化)
public class Example{
public static void main{
int a=3;
byte b=4;
byte c=a+b;
System.out.println(c);
}
}
出现报错:不兼容的类型
修改:把 byte c=a+b;改为byte c=(byte)(a+b);
public class Example{
public static void main{
int a=3;
byte b=4;
byte c=(byte)(a+b);
System.out.println(c);
}
}
结果:
五.运算符
1.算术运算符
+:两两相加(如果有字符串存在,+为连接符号)
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a+b);
}
}
结果:
public class Example{
public static void main{
int a=3;
String str=李华
System.out.println(a+b);
}
}
结果:
-:两两相减
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a-b);
}
}
结果:
*:两两相乘
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a*b);
}
}
结果:
/:两两相除
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a/b);
}
}
结果:
%:取模(取余数)
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a%b);
}
}
结果:
前++、后++(如++a、a++):在原来数值的基础之上+1。
注:前++(++a):先+1再赋值,后++(a++):先赋值再+1
//前++
public class Example{
public static void main{
int a=3;
int b=4;
int c=++a
System.out.println(b);
System.out.println(c);
}
}
结果:
//后++
public class Example{
public static void main{
int a=3;
int b=4;
int c=a++;
System.out.println(b);
System.out.println(c);
}
}
结果:
前--、后--(如--a、a--):在原来数值的基础之上-1。
注:前--(--a):先-1再赋值,后--(a--):先赋值再-1
//前--
public class Example{
public static void main{
int a=3;
int b=4;
int c=--a
System.out.println(b);
System.out.println(c);
}
}
结果:
//后--
public class Example{
public static void main{
int a=3;
int b=4;
int c=a--;
System.out.println(b);
System.out.println(c);
}
}
结果:
2.赋值运算符
=(赋值号):赋值号把右边的值赋值给左边
注:在同一个括号内变量名不重复。
public class Example{
public static void main{
int a=3;
System.out.println(a);
}
}
结果:
+=:int a=a+10;
public class Example{
public static void main{
a +=3;
System.out.println(a);
}
}
//结果: a=a+10;
-=: int a=a-10;
public class Example{
public static void main{
a -=3;
System.out.println(a);
}
}
//结果: a=a-10
*=: int a=a*10;
public class Example{
public static void main{
a *=3;
System.out.println(a);
}
}
//结果: a=a*10
/=: int a=a/10
public class Example{
public static void main{
int a/=3;
System.out.println(a);
}
}
结果: a=a/10
3.比较运算符
==:相等于
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a==b);
}
}
结果: false
!=:不等于
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a!=b);
}
}
结果: ture
<=:小于等于
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a<=b);
}
}
结果: false
>=:大于等于
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a>=b);
}
}
结果: false
3.逻辑运算符
&:与
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a==3&b==4);
System.out.println(a==30&b==4);
System.out.println(a==3&b==40);
System.out.println(a==30&b==40);
}
}
结果: true
false
false
false
|:或
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a==3|b==4);
System.out.println(a==30|b==4);
System.out.println(a==3|b==40);
System.out.println(a==30|b==40);
}
}
结果: true
true
true
false
^:异或
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a==3^b==4);
System.out.println(a==30^b==4);
System.out.println(a==3^b==40);
System.out.println(a==30^b==40);
}
}
结果: false
true
true
false
!:非(取反)
public class Example{
public static void main{
System.out.println(!true);
}
}
结果: false
&&:与(有短路出现,节省判断时间,开发中使用)
当一个发生错误时,停止继续向下运行
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println((++a)==3)&&((++b)==5);
System.out.println(a);
System.out.println(b);
}
}
结果: false
4
4
||:或(一个为true,则取值为true,否则为false)
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println((++a)==3)||((++b)==5);
}
}
结果: true
4.三元运算符(可以用来替代一些if……else语句的)
?:条件表达式(?表达式1:表达式2)
条件表达式里如果为true,则执行表达式1
条件表达式里如果为false,则执行表达式2
public class Example{
public static void main{
int a=3;
int b=4;
System.out.println(a>b?"a":"b");
}
}
结果: b