黑马程序员--02常量和进制的学习
来源:互联网 发布:mysql source失败 编辑:程序博客网 时间:2024/06/16 19:30
------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------
一、常量的类型
1.整数常量,就是所有的整数。比如1,222,33。
2.小数常量,就是所有的小数,比如-22.2,33.33
3.布尔型常量,这只包含2个TRUE,false
4.字符型常量,这个就是:'A','B',‘你’。字符型常量可以是汉字的。
5.字符串型常量,"yamade","burnning".
6.null型常量,这个在对象中很常用。
二、三种进制
1.二进制,很好理解逢二进一。
(一)、简单的二进制加法运算
0000 0101
+ 0010 1101
---------------------------
0011 0010
(二)、二进制的负数,二进制的负数是高位全部用1来补齐,比如-110
我们知道110的二进制是
0000 0000 0000 0000 0000 0000 0110 1110
那么-110就是110取反在+1
110取反就等于
1111 1111 1111 1111 1111 1111 1001 0001
+ 0000 0000 0000 0000 0000 0000 0000 0001
----------------------------------
1111 1111 1111 1111 1111 1111 1001 0010
我们用地代码来验证下是否正确。
class BinaryDemo{public static void main(String[] args){{ System.out.println(Integer.toBinaryString(110)); System.out.println(Integer.toBinaryString(-110)); } }}
可以看到我们计算是正确的。
(三)、二进制转十进制、八进制、十六进制
二进制转十进制是比较简单的。0101=2(0次幂)+2(2次幂)=5。在复杂点的1111 1111=2(0次幂)+....+2(7次幂)=255
class BinaryDemo{public static void main(String[] args){{ System.out.println(Integer.toBinaryString(5)); System.out.println(Integer.toBinaryString(255)); } }}
可以看到是正确的。
二进制转十六进制和八进制分别是取四位,三位进行转换。比如:1101转换十六进制=2(0)+2(2)+2(3)=1+4+8=13=0XD, 转换八进制,取3位=15.现在验证下:
class BinaryDemo{public static void main(String[] args){{int i=015;int j=0xD; System.out.println(i); System.out.println(j); } }}
也是正确的
(二)、八进制、十六进制。按照名字来理解就是8进1,16进1。需要注意的是16进制0-9是正常表示的。10,11,12,13,14,15是用字母A-F来表示的。
他们之间的转换,我现在的理解都是通过二进制作为中间件来转换,然后再去其他进制。万能的二进制。
三、变量的学习
变量基本数据类型一共有八种分别是:byte,short,int,long,float,double,bool,char。下这里需要注意的整数型变量有byte,short,int,long,浮点型主要是floa,double
。这里需要记住这些变量的范围和在何处使用。
byte、short、int、long都是表示整数的,只不过他们的取值范围不一样。
byte(字节类型) 一个byte 8位,取值范围为-128~127,占用1个字节(-2的7次方到2的7次方-1)默认是0
short(短整型) 一个short 16位,取值范围为-32768~32767,占用2个字节(-2的15次方到2的15次方-1)默认是0
int(整型) 一个int 32位,取值范围为(-2147483648~2147483647),占用4个字节(-2的31次方到2的31次方-1)默认是0
long(长整型) 一个long 64位,取值范围为(-9223372036854774808~9223372036854774807),占用8个字节(-2的63次方到2的63次方-1)默认是0L或0l推荐用大写;
char型变量,由16位组成。所以他可以是用(65535)个不同的字符可以用。这里需要注意char和整形变量之间经常是互转的。
float浮点型变量,它是由于32位组成
double浮点型变量,它是由64位组成的,系统默认浮点型变量是double。
1、当整数类型的数据使用字面量赋值的时候,默认值为int类型,就是直接使用0或者其他数字的时候,值的类型为int类型,所以当使用 long a = 0这种赋值方式的时候,JVM内部存在数据转换。
2、浮点类型的数据使用字面量赋值的时候,默认值为double类型,就是当字面两出现的时候,JVM会使用double类型的数据类型。
class VarDemo{public static void main(String[] args){{byte a=127;int b=a;float c=3.141f;double e=c;char f='A';System.out.println(a);System.out.println(b=a+1);System.out.println(c);System.out.println(c+e);System.out.println((char)(f+(long)e+(short)c)); } }}
从中我们可以看到byte的赋值范围最小,float和double的变量相加精度会增加。然后就是char型和整数型的自动转化,这里我么就要学会估算数据大概的范围是,我认为这很有必要,未来的软件开发前期对于软件的规划肯定会有相关的考虑,如果前期做的比较好,可能后期会节省大量的修改维护功夫
------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------
- 黑马程序员--02常量和进制的学习
- 黑马程序员---Java基础学习之Java的常量和进制
- 黑马程序员_c#基础知识学习笔记:常量,枚举和结构
- 黑马程序员_Java常量、变量、数据类型和运算符的学习笔记
- 黑马程序员--Struts2的常量
- 黑马程序员_C#枚举、常量、结构体、数组的学习
- 3、黑马程序员-C语言的数据、常量和变量
- 【黑马程序员】C语言学习笔记之常量和变量(四)
- 黑马程序员 【】java学习之路——关键字、标识符、注释、常量和变量、数组
- 黑马程序员之--C语言学习笔记之变量、常量和注释
- 黑马程序员——C语言基础学习(三)---进制和函数的总结学习
- 黑马程序员-java学习之常量与变量
- 黑马程序员 - 学习笔记6 变量 数据类型 与 常量
- 【黑马程序员】java学习笔记之常量与变量
- Java程序员学习C++之常量指针和指针常量
- 黑马程序员__标识符、常量、变量、运算符和语句
- 黑马程序员-关键字、常量变量和运算符等
- 黑马程序员日记(6)--常量和静态成员
- 【KMP算法讲解】
- Lambda表达式和Lambda表达式树
- 在DLL间或者DLL与EXE之间传递vector对象或指针的问题
- matlab中模糊控制
- 解析XML【C#】
- 黑马程序员--02常量和进制的学习
- 软中断
- LeetCode总结 -- kSum篇
- DOM4J实例
- CSS弹出背景半透明窗口
- 纸箱厂管理软件 在实际中的应用
- Cocos2D-X射击小游戏(一)游戏分析
- Hbase扫描
- 压缩和解压文件的工具类(ant-1.8.4.jar)