Javaday01-02整合(Java介绍,数据类型,运算符)
------------恢复内容开始------------
一. Java介绍
1991年,sun公司为在电视、控制烤箱等家用点子产品,开发了一款名为Oak的软件。
1995年,sun公司推出Java语言。
2009年,被Oracle公司收购。
Java从1.2版本开始,拆分为三个技术方向:JavaSE、JavaEE、JavaME。
* JavaSE:Java语言的基础部分。
* JavaEE:Java的企业级开发。
* JavaME:Java的移动端开发。
Java语言先编译后解释执行。
* 编译:生成一个新文件,运行效率比较快,但是不跨平台
* 解释:逐行读取运行,运行效率低,可以跨平台
Java程序的运行:编写源代码,编译源代码,装载,校验,解释执行
Java语言特点:跨平台性,健壮性,面向对象(封装,继承,多态),动态性,分布式,多线程
二. 数据类型
数据类型分为:基本数据类型、引用数据类型
1.基本数据类型:
数据类型转换:
小范围转大范围时,可以直接转换,称为隐式转换
1 byte b = 1;
2 int i = b;
大范围转小范围是,必须强制类型转换,称为显式转换
1 int i = 20;
2 byte b = (byte)i;
数值类型和boolean不可以转换,强制类型转换也不可以。
char可以和int类型转换,但是要注意char类型的范围,(0-65535)
2.引用数据类型:
除了上述的8种基本数据类型之外,其他都是引用数据类型:
引用类型中除了String和8个包装类之外,都需要使用new来创建对象
引用类型可以使用==、!=进行比较,但比较的是引用类型的地址,不是内容。
当声明了一个引用数据类型没有赋初值,那么默认值为null。
jdk1.5之后,增加了枚举类型,注解类型,均为引用类型。
三. 运算符
运算符分为四种类型:逻辑运算符,算术运算符,位运算符,关系运算符。
算术运算符:
关系运算符:
位运算符(二进制运算):
>>或<<:在二进制位移时,符号位不移动不改变。
>>>: 当操作数是负数时,会因为符号位的移动而导致符号位改变,引起数值的变化。
思考题:给定int a=15,int b=6,如何交换两个数位置 三种方法
1 int a = 15;
2 int b = 6;
3 // 第一种:
4 int change = a;
5 a = b;
6 b = change;
7 // 第二种:
8 a=a^b;
9 b=a^b;
10 a=a^b;
11 // 第三种:
12 a = a+b;
13 b = a-b;
14 a = a-b;
关于原码反码补码的说明:
最后补充:位运算符~取反操作符
------------恢复内容结束------------