一·,java跨平台优势
跨平台,是class的跨平台,一次编译到处运行,跨平台原理是:不同的操作系统上安装了相同的JVM虚拟机,共用一个JVM虚拟机;不同的平台里,执行相同的代码,指令可能不同;而java跨平台,可以解决这个问题。
二,数据类型
1,基本数据类型
2,引用数据类型
在Java中,引用类型的变量非常类似于C/C++的指针。引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型,比如 Employee、Puppy 等。变量一旦声明后,类型就不能被改变了。
- 对象、数组都是引用数据类型。
- 所有引用类型的默认值都是null。
- 一个引用变量可以用来引用任何与之兼容的类型。
- 例子:Site site = new Site(“Runoob”)。
三,基本逻辑运算
1,Boolean(检测相等不相等)
2,三目运算(a>b?1:2)
3,逻辑与(&&)
4,位运算
& -----按位与操作(两个都1则为1,否则为0)
| -----按位或操作(两个都0则为0,否则为1)
~ -----按位取反操作 (按位取反,包括符号位)
^ -----按位异或操作 (相同为0,不同为1)
5,移位运算(也是位运算的一种,移位运算时间要比普通的乘法运算时间快)
左移运算(<<)-------从右往左推,右边补零,这个数*2的几次方
右移运算(>>)--------这个数/2的几次方,在c,c++中,可以代表除运算,在java当中,并不能真正代表除运算,左边空出来位用0或者1来填补,正数用0,负数用1
无符号右移(>>>)------- 从左往右移,不管正负,全用0填补
6,判断相等
(1)= =
-----对于基本类型,判断的是值是否相同
----对于引用数据类型,判断的是地址是否相同
(2)equals
-----如果是在object类里边,使用的是==,比较的是地址;
如果是在String类里边,重新定义equals方法,先比较地址,如果地址不相同,然后再比较里边的内容是否相同。
----不支持基本数据类型(基本数据类型在栈里边开辟空间)的调用