Java漫谈4

之前的一篇文章,我们用段誉比武的方式类比了构件类的方式,其中把段誉和慕容复共有的出招这个动作写成了一个功能方法。所谓出招,换个角度来看,就是将人身体中的能量,比如肌肉的能量,来自于内功真气的能量,通过一些步骤集中在一点提供出去,而最终的结果评判就是比的双方在接触点上的力的大小。而这些身体中的能量是最基本的,其它的一系列的活动都是由它在时间和空间上的排列组合而构成的。而它们也是有类型的,比如肌肉能量,内功真气等。

同样的,上述例子中的能量在Java中就对应了Java的数据类型,这些基本的数据类型就构成了Java的Bean,方法,函数等。这里提到的Bean,就相当于是一个精细化定制型的模版,并且这个模版还要接受一定的写作规范,具体的当以后聊到JavaBean与类的时候还会再次详细的说一下它。

说回到Java的数据类型,Java中有8大数据类型,在我看来就像是8大金刚一样,它们分别是:

boolean金刚:主判断,法宝为if尺,常用招数——if判断。

byte金刚:金刚界元老,可以与天庭直接交流,是其它金刚的叔父。这里多说一句,多了解一点儿计算机方面知识就会知道,在计算机里,所有代码的最终形态是传说中的机器码,也就是0和1,通常用bit-位来表示。理论上说,从写完HW代码,到出现“Hello world”结果,中间要经过词法分析、语法分析、语义分析、机器码生成、操作系统硬件执行结果。在不同的平台上执行的时候就需要在这些平台上不断地重复这个步骤,因为机器码会根据每台电脑(或者说是机器)的配置不同有略微的差别,那如果出现一种编码,它能在所有机器上都执行,那不就能将之前的5步直接降低至2步么,即编译成目标代码,运行目标代码,而这里所说的目标代码就是编译成byte类型的.class文件。在每一台要运行java的机器上都装了虚拟机,虚拟机会根据每台机器做对字节码文件做快速处理,完成字节码到机器码的快速转换。而这样一来似乎就能达到这样的效果,首先,我可以在任意的机器上将代码编译成.class文件,从而将词法、语法、语义分析做预处理,也就是将这三布提前完成。其次,任意的机器上,我都可以用虚拟机对.class进行执行。这样一个过程中,.class文件就是字节码文件,也就是byte类型。由此就可见byte类型的重要性,不过这种重要更多地体现在底层,对于刚入门的人来说,可能会在相当长的一段时间内都不会重点关注这个数据类型,我也是学到IO流的上传下载那一块才重点关注过一次,之后发现了比较不错的上传下载代码,也就保留了对它的印象而已。最近又重新开始关注是因为使用Hadoop、HBase的API时,需要以byte的形式传递参数。

short金刚:主短整型,外号小组长,有16只手臂,管理 10^(−15) 到 (10^16−1)的数,也就是-32768 到 32768。

int金刚:主整形,外号班长,会比较常用,有32只手臂,管理10^(-31) 到 (10^31−1)的数,也就是-2147483648 到 2147483648。

long金刚:主长整型,外号大队长。不出手则以,出手则泣鬼神。有64只手臂,管理10^(−63) 到 (10^63−1)的数。

char金刚:主字符型。字词句段篇,这句话形象地说明了篇章是由段落构成的,段落是由句子构成的,句子是由词组构成的,词组是由字构成的,但字又是由什么构成的呢?如果你比较敏感地话,你可能会告诉我,就把字作为最小单位就可以啦,这样就可以结束这个循环了。不过这样一来,又如何表示“Hello World”呢。如果把字当做是最小的单位的话,那么单独的H这个字符又该如何表示呢?所以计算机中就将字符char作为了最小的单位。在此,一个有意思的点又出现了——在开发中,char的使用不如String多,甚至与在入门之前的一段时间里,我一直是将String当成是与char一样的基本的数据类型。后来入门后才渐渐缓过来,才知道String是类,是由char构成的字符类。关于String和char,以后还会聊到,这里有个印象即可。

float金刚:主浮点型,简单说就是小数型,一般称为单精度浮点数。

double金刚:主浮点型,一般称为双精度浮点数。

对于float与double的描述略微单薄,主要是因为我自己并没有理解两个概念,一个是“浮点型”,另一个是“单精度与双精度”。维基百科上明确说了浮点数不是小数,但在日常编程脏哦功能我就是把它当做小数处理的。只是记住了float与double都可以用来表示小数,一般情况下float就已经够用了,遇到了数位不够的时候,就用double。

这一次,我们聊了Java中的八大数据类型,并且借用了8大金刚的概念来阐述它。希望这能让你对java的数据类型有个印象,咱们下回见。

原文发布于微信公众号 - 怀英的自我修炼(hydzwxl)

原文发表时间:2017-09-28

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java学习网

程序员偷偷深爱的 9 个不良编程习惯

程序员偷偷深爱的 9 个不良编程习惯 我们曾经都做过这样的事情:当妈妈不注意的时候,偷偷地吃糖果零食,然后导致有了蛀牙。同样的,我们都违背过一些编程的基本规则,...

25510
来自专栏数据结构与算法

到天宫做客(2017寒假培训测试压轴题)

题目描述 有一天,我做了个梦,梦见我很荣幸的接到了猪八戒的邀请,到天宫陪他吃酒。我犹豫了。天上一日,人间一年啊!当然,我是个闲人,一年之中也没有多少时日是必须在...

3716
来自专栏数据结构与算法

到天宫做客(2017寒假培训测试压轴题)

题目描述 有一天,我做了个梦,梦见我很荣幸的接到了猪八戒的邀请,到天宫陪他吃酒。我犹豫了。天上一日,人间一年啊!当然,我是个闲人,一年之中也没有多少时日是必须在...

2959
来自专栏编程

程序员偷偷深爱的9个不良编程习惯

关注「实验楼」,每天分享一个项目教程 下面这9个编码习惯,虽然在编程规则中是被驳斥的,但我们很多人就是会不由自主地使用它们。 正文共:4751字 预计阅读时间:...

1880
来自专栏晨星先生的自留地

一道小CTF

2864
来自专栏java一日一条

程序员偷偷深爱的 9 个不良编程习惯

我们曾经都做过这样的事情:当妈妈不注意的时候,偷偷地吃糖果零食,然后导致有了蛀牙。同样的,我们都违背过一些编程的基本规则,并且都会坚定地表示这种行为是不可取的。...

491
来自专栏web前端教室

[先行者课程] -- 用js实现倒计时功能的业务逻辑

今天是2017年3月19号,周日,我们一起来学习“倒计时”这个前端“需求”。 一,看一下上周的作业,视差滚动的作业; 二,开始分享学习倒计时应用。 因为时间的关...

2275
来自专栏怀英的自我修炼

Java漫谈2

本周我们的Java漫谈从一个段子说起。话说有一个老程序退休了,在家闲着没事便开始学习写毛笔字,焚香,研墨,铺纸。站在薄如蝉翼白似雪的宣纸面前,提笔闭目。只见那人...

3248
来自专栏发现才可以探索

一句话木马

“一句话木马”短小精悍,而且功能强大,隐蔽性非常好,在入侵中始终扮演着强大的作用,居家生活搞站越货必备神器。

1750
来自专栏take time, save time

你所能用到的数据结构(六)

八、数据结构不一定很枯燥   正如我现在实习的公司的一个同事说的那样,数据结构是一本催眠的书,我想对于大多数人应该是这样的,当然对我也是,看着一大堆的算法,结...

3265

扫码关注云+社区