一、注释:
行内注释
//这是行内注释
多行注释
/**这是多行注释*/
文档注释
/***这是文档注释*/
二、标识符
标识符也就是我们所说的关键字
三、数据类型
1.基本数据类型
数据类型 | 字节 | 字节 | 字节 | 字节 | ||||
---|---|---|---|---|---|---|---|---|
整型 | byte | 1 | short | 2 | int | 4 | long | 8 |
浮点型 | float | 4 | double | 8 | BigDecimal | |||
字符型 | char | 2 | ||||||
布尔值 | boolean | 1 |
注:BigDecimal是一个类,double和float会丢失精度
BigDecimal在我们需要精确计算的结果的时候,则必须使用BigDecimal类来进行操作
2.引用数据类型
- 类- 接口- 数组- String
四、类型转换
1.自动类型转换
其实就是小范围的数据类型向大范围的数据类型转换
示例:
//自动类型转换int a=10;double b=10.0;b=a;//将int类型赋值给double类型 不需要任何操作就可以直接赋值
2.强制类型转换
当两种数据类型不兼容,或者大范围的数据类型向小范围的数据类型进行转换的时候,自动转换将无法进行,这时就需要进行强制类型转换
示例:
//强制类型转换int a=10;double b=10.0;a=(int)b;//这里是将double类型赋值给int类型 需要将b的数据类型强制转换为int,才能赋值成功
五、变量和常量
1.变量作用域
类变量
又称为全局变量,用static来修饰,类变量在类定义的时候就已经存在了。可以通过类名来访问,也就是我们所说的静态变量
static class Test(){//这是一个静态类 }
成员变量
成员变量就是在类中定义的变量,作用在这个类当中
/***这里我们定义了一个类*/public class Test(){ //这是成员变量 作用在类当中 在这个类的所有方法都能访问这个成员变量 String name; int age; //这是一个方法 public void medth(){ System.out.println("hello world"); }}
局部变量
局部变量定义在方法中,作用在这个方法中,在这个方法以外 ,这个局部变量就没有办法在使用
/**
*这里我们定义了一个类
*/
public class Test(){
//这是一个方法
public void medth(){
//这是局部变量 作用在这个medth方法当中 出了这个方法就访问不到
String name;
int age;
}
//定义方法medth2
public void medth2(){
//这是局部变量 作用在这个medth2方法当中 出了这个方法就访问不到
String name2;
int age2;
}
}
2.常量
java使用final关键字定义一个常量
常量可以理解成一种特殊的变量,它的值被设定之后,在程序运行过程中不允许被改变
被final的变量都是常量
常量的格式:
final 数据类型 常量名称=值
例如:
final double MAX_A=10
3.命名规范
见名知意
驼峰命名法(用在变量和方法上)
//定义一个变量 并使用驼峰命名法
String myVariable;当变量名是由一个或者多个单词连接在一起,而构成唯一的识别字时,首字母以小写开头,后面的每个单词的首字母大写(除了第一个单词外)
类名首字母大写+驼峰命名法
//定义类的时候 类名首字母要大写
public class MyCalss(){
}定义类名的时候首字母要大写
常量 :大写+下划线
final double MAX_A=10
定义常量的时候要单词的字母要大写 还要加上下划线
不要使用拼音命名
定义变量名的时候不要使用拼音
使用拼音是不是感觉显得很low
4.运算符
算数运算符
操作符 描述 例子 + 两数相加 1+1=2 - 两数相减 2-1=1 * 两数相乘 1*1=1 / 两数相除 1/1=1 % 两数相除的余数 2%1=0 ++ 自增 ++1=2和1++=2 -- 自减 -- 2=1和2-- =1 public class Test(){
public void medth(){
int a=2;
int b=2
//这里会输出4
System.out.println(a+b);
//这里会输出0
System.out.println(a-b);
//这里会输出4
System.out.println(a*b);
//这里会输出1
System.out.println(a/b);
//这里会输出0
System.out.println(a%b);
}
}++在前先自身 +1,然后进行赋值
++在后先进行赋值,然后在自身 +1
public class Test(){
//实现++在后面
public void medth(){
int a=2;
int b=0;
b=a++;
//此时的b=2 a先将自己赋值给了b 然后自身在加一
//此时的a=3 输出为2===3
System.out.println(b"==="a);
}
//实现++在前面
public void medth(){
int a=2;
int b=0;
b=++a;
//此时的b=3 a在自身=2的基础上加了1 然后在赋值给b
//此时的a=3 输出为3===3
System.out.println(b"==="a);
}
}--在前自身先 -1 然后进行赋值
--在后先进行赋值 然后自身在 -1
public class Test(){
//实现--在后面
public void medth(){
int a=2;
int b=0;
b=a--;
//此时的b=2 a先将自己赋值给了b 然后自身在减1
//此时的a=1 输出为2===1
System.out.println(b"==="a);
}
//实现--在前面
public void medth(){
int a=2;
int b=0;
b=--a;
//此时的b=1 a在自身=2的基础上减了1 然后在赋值给b
//此时的a=1 输出为1===1
System.out.println(b"==="a);
}
}
--就是自身减1(每次--都是在自身的基础上-1)
++就是自身加1(每次++都是在自身的基础上+1)
算数运算符用在数学表达式中,它们的作用和在数学中的作用一样。
赋值运算符
赋值运算符的作用就是将常、变量或表达式的值赋给某一个变量
操作符 | 描述 | 例子 |
---|---|---|
= | 赋值 | a=3 |
+= | 加等于 | a+=3(可以理解为a=a+3) |
-= | 减等于 | a-=3(可以理解为a=a-3) |
*= | 乘等于 | a*=3(可以理解为 a=a*3) |
/= | 除等于 | a/=3(可以理解为a=a/3) |
%= | 模等于 | a%=3(可以理解为a=a%3) |
public class Test(){
//
public void medth(){
int a=1;
//这里输出5
System.out.println(a=5);
//此时的a=5 所以a+=5的值为10 (a=a+5)
System.out.println(a+=5);
//此时的a=10 所以a-=5的值为5 (a=a-5)
System.out.println(a-=5);
//此时的a=5 所以a*=5的值为25 (a=a*5)
System.out.println(a*=5);
//此时的a=25 所以a/=5的值为5 (a=a/5)
System.out.println(a/=5);
//此时的a=5 所以a%=5的值为0 (a=a%5)
System.out.println(a%=5);
}
}
关系运算符
关系运算符用来比较判断两个变量或常量的大小,关系运算符是二元运算符,运算结果是boolean型,当运算符对应的关系成立的时,运算结果是true,如果不成立是false
操作符 | 描述 | 例子 |
---|---|---|
> | 大于运算符 | a>b |
>= | 大于或等于运算符 | a>=b |
< | 小于运算符 | a |
<= | 小于或等于运算符 | a<=b |
== | 相等运算符 | a==b |
!= | 不相等运算符 | a!=b |
public class Test(){
public void medth(){
int a=1;
int b=2;
//输出false
System.out.println(a>b)
//输出false
System.out.println(a>=b)
//输出true
System.out.println(a //输出true
System.out.println(a<=b)
//输出false
System.out.println(a==b)
//输出true
System.out.println(a!=b)
}
}
逻辑运算符
把多个条件联合判断,用来判断条件是否成立
操作符 | 描述 | 例子 |
---|---|---|
&& | 短路与:两个表达都是true才返回true | a>1&&a!=3 |
|| | 短路或:只要有一个表达式为true就返回true | a>1||a!=3 |
! | 逻辑非:如果表达式为ture则返回false 反之返回ture | ! |
public class Test(){
public void medth(){
int a=2;
int b=1;
//a System.out.println(a //a System.out.println(a //a System.out.println(a
}
}
注:逻辑运算符操作的都是boolean类型的变量,而且结果也是boolean类型
位运算符
位运算符主要针对二进制,从表面上看似乎有点像逻辑运算符,但是逻辑运算符是针对两个关系运算符来行进运算,而位运算符主要针对两个二进制数的位进行逻辑运算
操作符 | 描述 | 例子 |
---|---|---|
& | 逻辑与:两个表达式都为true时才为true | a>1&a!=3 |
| | 逻辑或:有一个表达式为true时就返回true | a>1|a!=3 |
^ | 逻辑异或:当两个表达式不相同的时候返回true 否则返回false | a>1^a!3 |
~ | 非:~0=1,~0=1 | |
>> | 右移 :各二进制位全部右移N位,若值为正,则在高位插入0,若值为负,则在高位插入1 | |
<< | 左移 :各二进制位全部左移N位,高位丢弃,低位补0 | |
>>> | 无符号右移 :各二进制位全部右移N位,无论正负,都在高位插入0 |
&&、&、||、|的区别:
&和|:不管左边的表达式是true还是false,右边的表达式也要执行
&&和||:只要执行左边的表达式,如果为true在继续执行右边的表达式,如果为false就直接返回flase,不会再执行右边的表达式
条件运算符
java提供了一个特别的三元运算符(也叫三目运算符)经常用于取代某个类型的if-else语句
public class Test(){
public void medth(){
//给变量c赋值,如果a>b成立 那么c=a,如果a>b不成立 那么c=b
int c=a>b?a:b
}
}
5.javaDoc
在开发java项目中,我们需要进行编写文档,而javadoc是最基础的文档生成方式,我们就可以按照它的规定来写注释,用来生成最终的文档
javadoc标签
标签 | 说明 |
---|---|
@link | 用于快速链接到相关代码 |
@code | 将文本标记为code |
@param | 一般类中支持泛型时会通过@param来解释泛型的类型 |
@author | 作者信息 |
@see | 另请参考 其他备注 |
@since | 从以下版本开始 |
@version | 当前版本号 |
@return | 返回值 |
@throws | 用来异常描述 |
@value | 表示常量的值 |