Java基础语法
注释:
- 单行注释:只能注释当前行,以//开始,直到行结束
//这是一个单行注释
-
多行注释
/*这是 一个 多行注释 */
- 文档注释
/* *@Description 这是一个文档注释 *@Author Diamond dengwenxiong: 1780403059 */
标识符
Java已经定义好的关键字
标识符命名要求:
- 表示类名的标识符用大写字母开始
- 表示方法和变量的标识符用小写字母开始,后面的词用大写开始(驼峰命名)
Java采用unicode国际字符集,因此标识符可以是汉字
数据类型
Java是一种强类型语言,每一个变量都必须声明类型
数据类型分为:基本类型和引用类型
引用数据类型的大小统一为4个字节,记录的是引用对象的地址
扩展:位,字节,字符
/* 位(bit):是计算机内部数据存储的最小单元 字节(byte):计算机中数据处理的基本单元 字符:计算机中使用的字母数字和符号 ASCII码: 1个英文字符:1个字节 1个中文汉字:2个字节 1个ASCII码:1个字节 UTF-8编码: 1个英文字符:1个字节 1个英文标点:1个字节 1个中文汉字: 3个字节 1个中文标点: 3个字节 Unicode编码: 1个英文字符:2个字节 1个英文标点:2个字节 1个中文汉字:2个字节 1个中文标点:2个字节 1B=8b 1KB=1024B 1M=1024KB 1G=1024M */
Java语言的整型默认为int类型,浮点数默认为Double类型
如果要进行不产生舍入误差的精确数字计算,要使用BigDecimal类,之所以不使用float和double,是因为字长有限,浮点数能够精确表示的数都是有限的,一般存在舍入误差,很多数字无法精确的表示。
Java.math下有两个类BigInteger和BigDecimal;BigInteger实现了任意精度的整数运算,BigDecimal实现了任意精度的浮点运算
字符常量用单引号表示
//'A'表示一个字符;“A”表示一个字符串
char类型用来表示在Unicode编码表中的字符
类型转换
Java在进行运算是,会将不同类型的数据转换成同一类型然后进行计算
类型从低级到高级
byte,short,char->int->long->float->double
类型转换的规则:
- 不能对boolean类型进行类型转换
- 不能把对象类型转换成不相关类的对象
- 再把容量大的类型转换为容量小的类型时必须进行强制类型转换,转换过程中可能出现精度丢失
- 浮点数转换成整数是通过舍弃小数点部位得到的,而不是四舍五入
自动类型转换,强制类型转换
容量小的数据类型会自动转换成容量大的类型
强制类型转换是显式的转换一个数值的类型1,可能会导致精度降低或者溢出,如果发生溢出就会截断成为一个完全不同的值
double a=3.13; int b=(int)a;
变量,常量
通过变量来操纵存储空间中的数据,位置确定,里面的值不确定。
变量的作用域分为3种:
- 类变量(静态变量):独立于方法之外,用static修饰,生命周期伴随类的始终,从类加载到类卸载
- 实例变量(成员变量):独立于方法之外,不过没有使用static修饰,生命周期伴随对象始终
- 局部变量:类中方法中的变量,生命周期为方法执行
所有的局部变量在声明后必须初始化才能使用
常量一般使用大写字符
运算符
取模运算符%
正数%正数=正数;负数%负数=负数;负数%正数=负数;正数%负数=正数
i++和++i:i++是先赋值在运算,++i是先运算再赋值
&&,||:逻辑与和逻辑或,会采用短路的方式运算,即如果的得到确定值就不会再继续计算
位运算符
左移一位相当于乘2,右移一位相当于除2
字符串连接符:+运算符两侧操作数只要有一个是字符串类型,系统就会将另一个操作数转换为字符串然后进行连接