JavaSE
第一章 JavaSE基础
1.1、十进制与二进制的相互转换
- 十进制转二进制:
除2 以15为例
2/15 余数
2/7 1
2/3 1
2/1 1
0 1 从下往上读为:1 1 1 1
- 二进制转十进制:乘以二的幂指数 以1 1 1 1为例
1 1 1 1 二进制为从右向左读
x x x x
2^3 2^2 2^1 2^0
8 + 4 + 2 + 1 = 15
- 位(bit):一个数字0或1,代表一位
- 字节(Byte):每逢8位是一个字节,数据存储单元最小的单位,只有整数,没有0.几
- 1 Byte=8 bit
1.2、Java各工具关系
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-32HIVq8d-1588690352150)(JavaSE.assets/Java工具关系.png)]
注意:添加注释或中文后需用指定编码编译:javac -encoding “utf-8” +文件名.java
1.3、关键字
关键字特点:
-
完全小写的英文字母
-
在增强版的记事本中(如notepad++)有特殊颜色
1.4、标识符
- 标识符是指在程序中,我们自己定义内容,比如类名字、方法的名字和变量的名字等等,都是标识符。
HelloWorld案例中,出现的标识符有类名字HelloWorld - 命名规则(硬性要求,若不遵守必会 错)
- 标识符可以包含【英文26个字母(区分大小写)】【数字0-9】【$(美元符 )】【_(下划线)】
- 标识符不能以数字开头。
- 标识符不能是关键字
- 命名规范(软性建议)
- 类名规范:首字母大写,后面每个单词首字母大写(驼峰式)
- 变量名规范:首字母小写,后面每个单词首字母大写(小驼峰式)
- 方法名规范:同变量名
1.5、常量
- 常量是指在程序运行期间固定不变的量(练习文件Demo01Const.java)
- 常量的分类:
- 字符串常量:凡是用双引 引起来的部分,叫做字符串常量。例如:“abc”,“Hello”,“123”
- 整数常量:直接写上的数字,没有小数点,如:100,200,0,250
- 浮点数常量,直接写上的数字,有小数点,如:2.5,-3.14,0.0
- 字符常量:凡是用单引 引起来的单个字符,叫做字符常量,如:‘A’,‘B’,‘9’,‘中’
- 布尔常量:只有两种取值:true,false
- 空常量:null,代表没有任何数据
Demo01Const.java
第二章 数据类型转换
2.1、数据类型
注意事项:
- 字符串不是基本类型,而是引用类型
- 浮点型可能只是一个近似值,并非精确的值
- 数据范围与字节数不一定相关,例如float数据范围比long更广泛,但是float是4字节,long是8字节
- 浮点数当中默认类型是double,如果一定要使用float类型,需要加一个后缀F
- 如果是整数,默认为int类型,如果一定要使用long类型,需要加上一个后缀L,推荐是用大写字母后缀/System.out.println(100L);/
2.1.1、基本数据类型(四类八种)
数据类型 | 关键字 | 内存占用 | |
---|---|---|---|
整数型 | byte(字节型) | 1个字节 | -128~127 |
short (短整型) | 2个字节 | -32768~32767 | |
int(短整型)(默认) | 4个字节 | -2的32次方~2的32次方-1 | |
long(长整型) | 8个字节 | -2的63次方~2的63次方-1 | |
浮点型 | float(单精度) | 4个字节 | 1.4013E-45~3.4028E+38(E表示为乘以10的+38/-45次方)(科学计数法) |
double(双精度)(默认/更为精确) | 8个字节 | 4.9E-324~1.7977E+308 | |
字符型 | char(字符型) | 2个字节 | 0~65535 |
布尔型 | boolean(布尔类型) | 1个字节 | true,false |
2.1.2、引用数据类型(后面学)
字符串,数组,类,接口,lambda
2.2、变量
程序运行期间,内容可以发生改变的量(两种格式)(练习文件Demo02Variable.java)
创建一个变量并且使用的格式:
- 数据类型 变量名称; //创建了一个变量
变量名称 = 数据值;//=代表赋值,将右边的数据值赋值交给左边的变量 - 数据类型 变量名称 = 数据值;// 在创建一个变量的同时,立刻放入指定的数据值(一步到位,合二为一)
- 注意事项:
- 如果创建多个变量,那么变量之间的名称不可以重复
- 使用float/long类型,需要加一个后缀F/L
- 使用byte/short类型的变量,右侧数值的范围不能超过左侧数据类型的取值范围
- 没有进行赋值的变量,不能直接使用;一定要赋值之后,才能使用
- 变量使用不能超过作用域的范围(程序执行是从上至下的,在创建变量之前不能使用变量)
【作用域】:从定义变量的一行开始,一直到直接所属的大括 {}结束为止 - 可以通过一个语句来创建多个变量,但是一般情况不推荐这么写
Demo02Variable.java
2.3、数据类型
当数据类型不一样是,将会发生数据类型转换
2.3.1、自动类型转换
- 自动类型转换(隐式)(练习文件Demo01DataType.java)
- 特点:代码不需要进行特殊处理,自动完成
- 规则:数据范围从小到大(与字节数不一定相关,与取值范围有关)
- int–>long,符合了数据范围从小到大的要求,发生了自动转换
Demo01DataType.java
2.3.2、强制类型转换
- 强制类型转换(显示)(练习文件Demo02DataType.java)
- 特点:代码需要进行特殊格式处理,不能自动完成
- 格式:范围小的类型 范围小的变量名 = (范围小的类型)原本范围大的数据;
- 注意事项:
- 强制类型转换一般不推荐使用,因为有可能发生精度损失,数据溢出
- byte/short/char这三种类型都可以发生数学运算,例如加法“+”
- byte/short/char这三种类型在运算的时候,都会被首先提升成为int类型,然后再计算
- 计算机的底层会用一个数字(二进制)来代表字符A,就是65【65~90为26个大写英文字母(A-Z);小写字母与大写字母相差24;48~57为数字(0-9)】
- 一旦char类型进行了数学运算,那么字符就会按照一定的规则翻译成为一个数字
- Boolean(布尔类型)不能发生数据类型转换
Demo02DataType.java
2.4、数字和字符对照表
数字和字符对照表(编码表)(练习文件Demo03DataTypeChar.java):
- ASCII码表:American Standard Code for Information Interchange,美国标准信息交换代码(小表)
- Unicode码表:万国码,也是数字和符 的对照关系,开头0~127部分和ASCII完全一样,但是从128开始包含更多字符
48 – ‘0’
65 – ‘A’
97 – ‘a’
Demo03DataTypeChar.java
第三章 运算符
3.1、运算符
运算符(练习文件 Demo04Operator.java):
- 运算符:进行特定操作的符 ,如:+、
- 表达式:用运算符连起来的式子叫做表达式,如:20+5,a+boolean(布尔类型)
- 四则运算:
加:+
减:-
乘:*
除:/
取模(取余数):%
-
首先计算得到表达式的结果,然后再打印输出这个结果
-
对于一个整数的表达式来说,除法用的是整除,整数除以整数,结果仍是整数,只看商,不看余数
-
注意事项:1.一旦运算当中有不同类型的数据,那么结果将会是数据类型范围大的那种
Demo04Operator.java
3.2、“ + ”的三种常见的用法
四则运算当中的加 “+”常见的三种用法(练习文件Deme05Plus):
- 对于数值来说,那就是加法
- 对于字符char类型来说,在计算之前char会被提升成为int,然后再计算
char类型字符,和int类型数字,之间的对照关系:ASCII、Unicode - 对于字符串String(首字母大写,并不是关键字)来说,加 代表字符串连接操作
任何数据类型和字符串类型进行连接的时候,结果都会变为字符串
小括 中的东西都会最先执行
Demo05Plus
3.3、自增自减运算符
自增自减运算符(练习文件Demo06Operator.java):
- 自增运算符:++
- 自减运算符:–
- 基本含义:让一个变量涨一个数字1,或者让一个变量降一个数字1
- 使用格式,写在变量名称之前,或者写在变量名称之后,例如:++num;num++
- 使用方式(练习文件Demo06Operator.java)
- 1.单独使用,不和其他任何操作混合,自己独立成为一个步骤
- 2.混合使用,和其他操作混合,例如与赋值混合,或者与打印操作混合,等
- 使用区别:
- 1.单独使用的时候前++与后++没有任何区别
- 2.在混合使用的时候,有重大区别:
- A:如果是前++,那么变量立刻马上+1.然后拿着结果进行使用。【先加后用】
- B: 如果是后++,那么首先使用变量本来的数值,然后再让变量+1。【先用后加】
- 注意事项:只有变量才能使用自增、自减运算符,常量不可发生改变,所以不能用。
Demo06Operator.java
3.4、赋值运算符
赋值运算符分为以下几种
3.4.1、基本赋值运算符
- 基本赋值运算符:就是一个等 “=”,代表将右侧的数据交给左侧的变量。int a = 30
3.4.2、复合赋值运算符
- 复合赋值运算符(练习文件Demo07Operator.java):
+= | a += 3 | 相当于 | a = a + 3 |
---|---|---|---|
-= | b -= 4 | 相当于 | b = b – 4 |
*= | c *= 5 | 相当于 | c = c * 5 |
/= | d /= 6 | 相当于 | d = d / 6 |
%= | e %= 7 | 相当于 | e = e % 7 |
- 注意事项:
- 只有变量才能使用赋值运算符,常量不能进行赋值,不能写在赋值运算符的左边
- 复合赋值运算符其中隐含了一个强制类型转换
Demo07Operator.java
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!