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 条评论
登录 后参与评论

相关文章

来自专栏机器学习算法与Python学习

长文 | 手把手教你如何使用python进行数据分析(最好将文章代码自己码一遍)

关键字全网搜索最新排名 【机器学习算法】:排名第一 【机器学习】:排名第二 【Python】:排名第三 【算法】:排名第四 原文 http://www.cnbl...

3405
来自专栏诸葛青云的专栏

系统学习C语言方法大全

很多人对学习C语言感到无从下手,经常问我同一个问题:究竟怎样学习C语言?我是一个高级编程师,已经开发了很多年的程序,和很多刚刚起步的人一样,学习的第一个计算机语...

160
来自专栏机器学习算法与理论

寻找商品间的联系:频繁项集挖掘与关联分析

我们常常会在管理中遇到这样的问题,超市如何能通过用户购买数据来提高利润。如何将数据转化为利润,用好这些数据。 我们这里提出一种关联分析方法,可以从用户的购买数...

3318
来自专栏我是攻城师

如何合理的控制solr查询的命中的数量和质量?

3425
来自专栏C语言及其他语言

[每日一题]恺撒密码(1214)

这是一个关于凯撒的悲伤的故事。。。。。。 题目描述 恺撒生活在充满危险和阴谋的时代. 恺撒面对的最困难的问题是生存. 为了生存, 他决定创造一种密码. 这种...

2605
来自专栏阿凯的Excel

工资计算好帮手-Round函数必须有

现实中算工资的时候,或者财务报表的时候,难免会有一些小数。 由于我国不特殊的情况,最小单位是分,所以两位小数才有意义,第三位小数是毫无意义的,所以需要对数据进行...

3439
来自专栏专知

关关的刷题日记01—Leetcode 169. Majority Element

【导读】主题链路知识是我们专知的核心功能之一,为用户提供AI领域系统性的知识学习服务,一站式学习人工智能的知识,包含人工智能( 机器学习、自然语言处理、计算机视...

2934
来自专栏数据派THU

独家 | 一文读懂PySpark数据框(附实例)

本文中我们将探讨数据框的概念,以及它们如何与PySpark一起帮助数据分析员来解读大数据集。

541
来自专栏racaljk

当我们谈论计算机科学

下午偶有所悟,特作此文防止青年痴呆。 这学期的学习算是走了一半计算机科学概论。广度的学习通常会被指责为广而不精,但对我而言这是毫无意义的,因为 ...

804
来自专栏企鹅号快讯

C语言的前世今生,及其特点、利弊和入门须知三把斧

C语言的开展前史: ? 20世纪70年代初,贝尔实验室的Dennis Richie 等人在B语言基础上开发C语言,最初是作为UNIX的开发语言; 20世纪70年...

1846

扫码关注云+社区