2. Java基本数据类型及运算符
1. 计算机数制
1.1 计算机信息单位
1. 计算机中采用什么进制存储信息,它的优点是什么
2. 什么是位、字节
3. K、M、G、T、P之间的转换
4. 什么是字、字长
1.2 数制及转换
阅读计算机数制,回答以下问题:
1. 什么是基数、什么是权、如何将一个数表示为R进制数
2. 二、八、十、十六进制的书写规则以及英文简写
binary 二进制的 octal 八进制的 decimal 十进制的 hexadecimal 十六进制的
3. 二、八、十六进制的加减运算
4. 二、八、十六转换为十进制
按权展开,相加之和
5. 十进制转换为二、八、十六进制
整数:除R取余法
小数:乘R取整法
先得到的数总是靠近小数点
6. 八、十六进制之间如何互相转换
7. 练习:
二转十
10111111.1111
10101010.0001
11100111.0101
八转十
54321.123
71717.171
66666.666
十六转十
FFFFF.FF
D0E0A.0B
77777.77
二转十六
101.1
1011.1111
十六转二
FF.F
A0.B
1F.5
八转十六
45.77
十六转八
6D.0F
1.3 计算机中的数
阅读计算机机器数,回答以下问题:
1. 计算机中正负数如何表示
2. 什么是原、反、补码,它们如何转换
反码:反码和原数相加:结果为所有位都是1
对1互补 专业术语:One’s Complement
补码:对2求补 专业术语:Two’s Complement
补码的补码将还原为原码
1.4编码和文本
阅读字符编码,回答以下问题:
1. 什么是ASCII码,ASCII码用几个字节表示一个字符,A在ASCII码中转化为数值是多少?
2. 什么是GBK,什么是Unicode码,什么是UTF-8
2. 变量与常量
2.1 变量
阅读变量,回答问题:
1. 如何理解变量
变量是在程序执行期间可根据需要经常变化的值。
简单理解,可以把变量看成一个容器
2. 变量有哪些特性
名称:标识符
初始值:为其赋值或者是保留缺省值
作用域:在不同程序块中的可用性及生命周期
3. 什么是变量的声明和初始化
在Java中声明的任何一个变量必须分配一个类型。
声明一个变量时,应该先写上所声明类型,随后再写上变量的名字。
Java中局部变量如果在没有赋值时就试图去提取它的内容,那么编译时会出错。
变量的初始化就是给它赋值
4. 变量的命名规则是什么
变量名中不能有空格
变量名大小写敏感
变量名不限长度
保留字及关键字不能作变量名
变量名必须以字母、下划线(_)、美元符号($)开头,后面可以是字母或数字的组合,否则会编译出错
2.2 常量
阅读常量,回答问题:
1. 常量和变量的区别
常量代表程序运行中不能改变的值
常量主要有两个作用:
代表常数,便于程序修改(例如:圆周率的值)
增强程序的可读性(例如:常量UP、DOWN、LEFT和RIGHT分别代表上下左右,其数值分别是1、2、3和4)
2. 常量的关键字是什么
只需要在变量的语法格式前加关键字final
在Java编码规范中,要求常量名必须大写
例如:final double PI = 3.14159265
3. 基本数据类型
回答以下问题:
1. Java的数据类型分类,基本数据类型有几种,怎么分
2. 每种基础数据类型的关键字,大小和取值空间
1、 byte:
byte数据类型是8位、有符号的,以二进制补码表示的整数;
最小值是-128(-2^7);
最大值是127(2^7-1);
默认值是0;
byte类型用在大型数组中节约空间,主要代替整数,因为byte变量占用的空间只有int类型的四分之一;
例子:byte a = 100,byte b = -50。
2、 short:
short数据类型是16位、有符号的以二进制补码表示的整数
最小值是-32768(-2^15);
最大值是32767(2^15 - 1);
Short数据类型也可以像byte那样节省空间。一个short变量是int型变量所占空间的二分之一;
默认值是0;
例子:short s = 1000,short r = -20000。
3、int:
int数据类型是32位、有符号的以二进制补码表示的整数;
最小值是-2,147,483,648(-2^31);
最大值是2,147,483,647(2^31 - 1);
一般地整型变量默认为int类型;
默认值是0;
例子:int a = 100000, int b = -200000。
4、long:
long数据类型是64位、有符号的以二进制补码表示的整数;
最小值是-9,223,372,036,854,775,808(-2^63);
最大值是9,223,372,036,854,775,807(2^63 -1);
这种类型主要使用在需要比较大整数的系统上;
默认值是0L;
例子: long a = 100000L,Long b = -200000L。
5、float:
float数据类型是单精度、32位、符合IEEE 754标准的浮点数;
float在储存大型浮点数组的时候可节省内存空间;
默认值是0.0f;
浮点数不能用来表示精确的值,如货币;
例子:float f1 = 234.5f。
6、double:
double数据类型是双精度、64位、符合IEEE 754标准的浮点数;
浮点数的默认类型为double类型;
double类型同样不能表示精确的值,如货币;
默认值是0.0d;
例子:double d1 = 123.4。
7、boolean:
boolean数据类型表示一位的信息;
只有两个取值:true和false;
这种类型只作为一种标志来记录true/false情况;
默认值是false;
例子:boolean one = true。
8、char:
char类型是一个单一的16位Unicode字符;
最小值是’\u0000’(即为0);
最大值是’\uffff’(即为65,535);
char数据类型可以储存任何字符;
例子:char letter = ‘A’。
3. 为什么需要这些数据类型
4. 基本数据类型之间如何互相转换
自动转换
转换前的数据类型与转换后的类型兼容
转换后的数据类型的表示范围比转换前的类型大
低 ------------------------------------> 高
byte->short,char—> int —> long->double float —> double
强制转换
转换前的数据类型和转换后的类型兼容
转换后的数据类型的表示范围比转换前的类型小
数据类型转换必须满足如下规则:
- 不能对boolean类型进行类型转换。
- 不能把对象类型转换成不相关类的对象。
- 在把容量大的类型转换为容量小的类型时必须使用强制类型转换。
-
转换过程中可能导致溢出或损失精度,例如:
int i =128; byte b = (byte)i;
-
浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入,例如:
(int)23.7 == 23; (int)-45.89f == -45
4. 注释、分隔符与关键字
4.1 注释
阅读Java注释,回答以下问题:
- Java有几种注释方式
- 它们分别有什么作用
4.2 分隔符
{ } 大括号(花括号) 用来定义块、类、方法及局部范围,也用来包括自己初始化的数组的值。大括号必须成对出现
[ ] 中括号(方括号) 用来进行数组的声明,也用来撤销对数组值的引用
( ) 小括号(圆括号) 在定义和调用方法时,用来容纳参数表。在控制语句或强制类型转换的表达式中用来表示执行或计算的优先权
; 分号 用来表示一条语句的结束。语句必须以分号结束,否则即使一条语句跨行或者多行,仍是未结束的
, 逗号 在变量生命中用于分隔变量表中的各个变量,在for控制语句中,用来将圆括号里的语句链接起来
: 冒号 说明语句标号
. 圆“点” 用于类/对象和它的属性或者方法之间的分隔。例如,圆点“.”就起到了分隔类/对象和它的方法或者属性的作用
4.3 关键字
阅读Java关键字,掌握常用的关键字。
4.4 占位符
阅读Java占位符使用,掌握常用占位符
占位符格式:
整型八进制: %o,
整型十六进制: %x,
长整型: %l,
浮点型: %f,
字符型: %c,
举例:
/*
分别用 2进制,8进制,16进制,表示10进制中的 12.
*/
public class Test {
public static void main(String[] args) {
int i = 12;
System.out.print("十进制数 12 用十六进制表示 = %x\n",i);
System.out.print("十进制数 12 用八进制表示 = %o\n",i);
}
}
4.5 转义字符
阅读转义字符,掌握常用转义字符
5. 运算符
阅读Java运算符和Java 运算符的总结回答以下问题:
- Java运算符分为几类
- 每种运算符都大致有哪些
- 运算符的优先级是怎样的
6. 实践和练习
1. 熟记 java 8 大基础类型的类型标识符。
2. 了解 java 8 大基础类型的使用场景(什么情况适合用什么类型)?
3. 熟记 java 变量定义规则。
4. 练习 java 各种基础数据类型的定义、初始化、类型转换、格式输出、
5. 知晓 浮点数(float 、double) 精度问题。
6. 练习 java 运算符的使用,加减乘除等运算。
7. 预习 java 流程控制语句。