Java基础:Day02笔记内容 (常量、注释、变量)
2016-02-25 10:26
811 查看
1.关键字: 被系统赋予特殊含义的单词,一般都小写
1.保留关键字: 被系统拿走了,但是目前系统也没用,没有特殊意义,是为未来准备的.
goto和const在c++中是关键字,在Java中,是保留字.main不是关键字, 它只是一个方法名, 只不过这个方法比较特殊而已
代码:
看到其中红色的main, eat, Demo吧, main, eat, Demo都只是一个名字.
2. 标识符
在Java中,所有需要你取名字的地方都是标识符, 组成规则 :字母数字_$注意事项:
不能以数字开头 a3(yes),3a(no)
不能是Java中的关键字 class等等
区分大小写
代码:
结果:
3.注释: 解释说明程序的文字,给自己和别人看.
作用: 调试错误.(将可能出问题的代码注释掉,如果问题消失,那么说明问题就在这里,可以缩小范围.)单行注释: //
多行注释: /* */
文档注释:: /** */
注意: //可以嵌套, /* */不能嵌套.
代码:
4.常量: 值不发生改变的量.
字面值常量: 整数, 小数(浮点数), 布尔, 字符, 字符串, null自定义常量: 后面学.
代码:
结果:
5.进制
二进制的组成: 0,1, 八进制: 0-7, 十六进制: 0-9,A,B,C,D,E,F (大小写不区分)代码:
结果:
6.进制转换
10进制数转其他进制:将10进制的数除以该进制, 所得的余数保留, 作为转换后的数的末位, 将商继 续除以该进制, 直到商为0, 十六进制数前面有0x或者0X, 八进制数前面有0
以十六进制为例:
代码:
结果:
其它进制转10进制:
将其它进制的数从末位数开始, 依次乘以该进制的n次幂, n从0开始. 将所有的数相加.
代码:
结果:
7.原码反码补码
原码就是数据的二进制形式, 反码就是将原码取反, 将1变为0, 将0变为1.补码: 正数的补码就是反码, 负数的补码是取反加1
8. 变量: 在程序的运行过程中,其值在指定范围内变化的值,是内存中一个区域,用于存储数据.
变量的定义格式:A:数据类型 变量名 = 初始化值;
如: int i = 10;
变量使用:
A:第一种,在声明的时候,就初始化值
数据类型 变量名 = 初始化值;
举例:byte b = 100; System.out.println(b);
B:第二种 在使用前赋值
声明 赋值 使用
举例 byte b2;
b2 = 100;
System.out.println(b2);
9.数据类型: java语言分为两种数据类型: 基本数据类型和引用数据类型
(1)基本数据类型区别: 在内存中分配的空间大小不同,从而导致它表示的数据范围不同
整数
byte占1个字节
short 占2个字节
int 占4个字节0
long 占8个字节 其后加L或l标识
浮点数
float 占4个字节 其后加F或f标识3.3f 2^63
32个二进制位, 1位符号位, 8位代表指数位, 23位尾数位,
double 占8个字节
二进制无法精确表示十进制的很多小数, 所以对浮点 数的计算要特别小心, 比如以下代码:
结果是0.3吗?我们来看一下结果:
字符
char 占2个字节 0 - 65535
字符和字符串:
字符值单引号括起来的单个的代码单元
字符串是指双引号括起来的部分, 是由字符组成的
布尔型 大小不确定
true,false
默认情况下:
整数是int类型
浮点数是double类型
开发中,存整数,首先int
long类型的整数常量,要加L或l,系统才会当long处理
float类型的小数常量,要加F或f,系统才会当float处理
整数默认:int 小数默认:double
代码:
结果:
(2)数据参与运算
A: 自动转换
容量大的数据类型转换为容量小的数据类型时,要加上强制转换符,
但可能造成精度降低或溢出;使用时要格外注意。
两个数值进行运算:
如果其中一个是double类型, 那么另一个也会自动转换成double类型, 结果自然也是double类型
否则如果其中一个是float类型, 那么另一个也会自动转换为float类型, 结果自然也是float类型
否则如果其中一个是long类型, 那么另一个也会自动转换为long类型, 结果自然也是long类型
否则两个数都转换为int类型, 结果自然也是int类型.
B:强制转换符
格式:(数据类型)(要被转换的数据) byte b = (byte)(300);
C:字符型参与运算
首先会去找对应字符的unicode码值。然后运算。
char 类型取值范围0~2(16)-1,
整数可以直接赋给char类型的变量, 每个字符在码表中都对应了一个整数, char类型的变量在底层存储的是该字符在码表中对应的整数.
代码:
结果:
D:布尔型参与运算: 不能参与运算
E:字符串参与运算: 只能相加运算,与运算的数据相连接组成了一个新的字符串。
例如代码:
思考:
byte b1=3,b2=4,b;
b=b1+b2;
b=3+4;
哪句是编译失败的呢?为什么呢?
(1)byte,short,char三种数据类型在内存中运算会自动类型提升为int去运算
(2)b1和b2是两个变量值,jvm编译时无法判断里面值的大小
jvm有常量优化机制,在编译的时候已经将3+4的结果赋值给b了
因此b = b1 + b2;是错的
编译结果:
部分笔记内容,整个笔记一共27天,打包下载:
网盘地址——链接:http://pan.baidu.com/s/1c1iem6c 密码:8lj8
相关文章推荐
- java中常量池的理解
- Java基础:Day01笔记内容 (概述、JDK的下载及安装)
- 使用maven开发spring项目报ClassNotFoundException异常
- 关于如何在eclipse中部署服务遇到的一些问题和解决。
- JAVA JDK 1.6 API中文版.CHM打开chm提示,“ 已取消到该网页的导航”
- Think in Java反刍笔记(3)---对象是什么(3)
- java的HashMap遍历输出
- java多线程之Semaphore信号量详解
- java使用poi解析或处理excel的时候,如何防止数字变成科学计数法的形式
- java类加载机制
- maven-腾讯SDK(QQ)接口java引入pom配置
- Java中删除文件、删除目录及目录下所有文件
- Spring中数据库事务配置后不起作用
- Java堆外内存之突破JVM枷锁
- java导出csv用excel打开后数字不用科学计数法显示
- spring 入门小结2 ——配置属性
- spring 学习小结 1
- Java环境变量
- java 之list集合按照字段升序或降序
- SpringMVC ViewResolver查找序列