3、类型转换
1)由于Java是强类型语言,所以在进行有些运算的时候需要用到类型转换
低 ----------------------------------------------> 高
Byte、short、char ----> int ----> long ----> float ---->double
2)运算中不同类型的数据先转换为同一类型,然后再进行运算
3)强制转换、自动转换
//强制转换:(类型)变量名 高 --> 低
int i = 128;
byte b = (byte)i; //内存溢出
System.out.println(i);
System.out.println(b);
//自动转换: 低 --> 高
double c = i;
System.out.println(c);
/*
注意:
1.不能对布尔型进行转换
2.不能把对象类型转换为不相干的类型
3.强制转换:(类型)变量名 高 --> 低
自动转换: 低 --> 高
4.转换过程中可能出现内存溢出或者精度问题!
*/
System.out.println("================================================");
System.out.println((int)23.7);
System.out.println((int)-45.89f);
System.out.println("================================================");
char a = 'A';
int d = a + 100;
System.out.println(d);
System.out.println((char)d);
输出结果:
128
-128
128.0
================================================
23
-45
================================================
165
¥
4、变量、常量
(1)变量:就是可以变化的量!
1)、Java是一种强类型语言,每个变量都必须声明其类型
2)、Java变量是程序中最基本的存储单元,其要素包括变量名、变量类型和作用域
type varName [=value] {,varName [=value]}
//数据类型 变量名 = 值;可以使用逗号分个来同时声明多个同类型的变量
3)、注意:
1、每个变量都有类型,类型可以是基本类型也可以是引用类型
2、变量名必须是合法的标识符
3、变量声明是一条完整的语句,因此需要使用分号结尾
4)、变量作用域
1、类变量
2、实例变量
3、局部变量
public class Variable{
static int allClicks=0; //类变量
String str="Hello,xiaoShu!"; //实例变量
public void method{
int i = 0; //局部变量
}
}
注:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dpyHKri6-1646051003284)(C:\Users\kevin\AppData\Roaming\Typora\typora-user-images\image-20220228091517126.png)]
(2)常量(constant):初始化(initialize)后不能再改变值!不会变的值
1)所谓常量可以理解成一种特殊的变量;它的值被设定后,在程序运行过程中不允许被改变
//final 常量名 = 值
final double PI = 3.14;
2)常量名一般使用大写字符
(3)命名规范
1、所有变量、方法、类名:见名知意
2、类成员变量:首字母小写和驼峰规则:monthSalary
3、常量:大写字母和下划线:MAX_VALUE
4、类名:首字母大写和驼峰规则:Man、GoodMan
5、方法名:首字母小写和驼峰规则:run(), runRun()
5、运算符
java语言支持如下运算符:
1、算术运算符:+、-、*、/、%、++、–
2、赋值运算符:=
3、关系运算符:>、<、>=、<=、==、!=、instanceof
4、逻辑运算符:&&、||、!
5、位运算符:&、|、^、~、>>、<<、>>>(了解)
6、条件运算符:? :
7、扩展赋值运算符:+=、-=、*=、/=
Java运算符的优先级:
运算符 | 结合性 |
---|---|
[ ] . ( ) (方法调用) | 从左向右 |
! ~ ++ – +(一元运算) -(一元运算) | 从右向左 |
* / % | 从左向右 |
+ - | 从左向右 |
> >>> | 从左向右 |
< >= instanceof | 从左向右 |
== != | 从左向右 |
& | 从左向右 |
^ | 从左向右 |
| | 从左向右 |
&& | 从左向右 |
|| | 从左向右 |
?: | 从右向左 |
= | 从右向左 |
6、包机制、JavaDoc
(1)包:为了更好的组织类,java提供了包机制,用于区别类名的命名空间
1、一般使用公司域名倒置作为包名:www.baidu.com -----------> com.baidu.www
2、为了使用一个包的成员,我们要在java程序中明确导入改包。使用“import”语句即可
import package1[.package2...].(classname|*); //.* *表示通配符:导入改包下的所有类
import com.kum.shu.*; //导入这个包下所有的类
(2)JavaDoc
1、JavaDoc命令是用来生成自己的API文档的: javadoc 参数 文件
cmd命令行下执行:
D:\Java SE\基础语法\src\com\kum\shu\base>javadoc -encoding UTF-8 -charset UTF-8 Doc.java
生成文件,点开index.html
2、参数信息
1)@author 作者名
2)@version 版本号
3)@since 指明需要最早使用的JDK版本
4)param 参数名
5)@return 返回值情况
6)@throws 异常抛出情况