Java语言的特点
1、面向对象性:
两个要素:类、对象
三个特征:封装、继承、多态
2、跨平台性(JVM):
Write once , run anywhere
3、健壮性
标识符:Java对各种变量、方法、类等要素命名时使用的字符序列(凡是自己可以取名字的地方)
标识符命名规则:(如果不遵守规则,编译就会报错!!)
1、数字不能开头
2、由26个英文字母大小写,0-9,_或$组成
3、不可以使用关键字,但可以包含关键字
4、Java中严格区分大小写,长度无限制
5、标识符不包含空格
变量是程序中最基本的存储单元,包含变量类型、变量名和存储的值
变量的注意事项:
1. 变量必须先定义赋值才可以输出
2. 变量的作用域:其定义所在的一对{ }内
3、变量都定义在其作用域内。在作用域内,是有效的,出作用域就失效了
4、同一作用域内,不可以声明两个同名的变量
Java中定义的数据类型:
基本数据类型:数值型 整数型 (byte short int long)
浮点型(float double)
字符型 char
布尔型 Boolean
引用数据类型:类 class
接口 interface
数组 [ ]
Byte(一个字节=8bit位) short(2字节) int(4字节) long(8字节)
Char(一个字符 = 两个字节)
声明long型变量必须以“l” 或 “L”结尾
Float(4字节 单精度7位有效数字) double(8字节 双精度)
Float数值范围比long大
声明float型变量必须以“f” 或 “F”结尾
声明char变量,通常使用一对‘ ’,内部只能写一个字符
‘\n’ :换行符 ‘\t’ : 制表符
Boolean 只能取两个值 true false 常常在条件判断、循环结构中使用
自动类型提升:
当容量小的数据类型的变量和容量大的数据类型的变量做计算时,结果自动提升为容量大的数据类型。
依次从小到大:
Byte、char、short – >int-- >long–> float – >double
特别的:当byte、char、short三种类型的变量做运算时结果为int类型 包含byte + byte即同类型的也是int类型
说明:此时的容量大小指的是表示数的范围的大和小。
强制类型转换:(自动类型提升的逆运算)
1、需要使用强转符:( )
2、强制转换可能导致精度损失
整型常量默认类型为int型
浮点型常量默认类型为double型
String属于引用数据类型,翻译为:字符串
声明String类型变量时,使用一对“ ”
String可以和八种基本数据类型做运算,且计算只能是连接运算,结果任然是String类型
“ + ”前后若有String类型的变量则表示为连接运算,若没有则表示加法运算
Char c = ‘a’; a代表数值97 ‘A’代表数值65
正数的原码、反码、补码为相同的,负数的补码为反码 + 1
计算机底层都以补码的方式来存储数据
十进制转二进制: 除2取余的逆
‘ % ’ 取余运算 结果的符号与被除数的符号相同
开发中,取余经常用来被判断是否能够整除的情况
Eg、开发中,如果希望变量实现 + 2的操作,有几种方法?(int num = 10;)
方法一: num = num + 2;
方法二: num += 2;(不改变变量的数据类型 推荐使用)
比较运算符的结果都是boolean类型
逻辑异或:
如果同为true或false 结果为false
如果一true一false结果为true
区分& 与 &&
1. 相同点一:& 与 &&的运算结果相同
2. 相同点二: 当符号左边结果为true时,二者都会执行符号右边的运算
3. 不同点:当符号左边结果为false时,&会继续执行右边的运算,&&不在执行右边的运算