唐磊的个人博客

记录我的学习、生活、工作。


  • 首页

  • 分类

  • 关于

  • 归档

  • 标签
唐磊的个人博客

再看java数据类型

发表于 2010-12-18 | 分类于 经验技巧 |

在Java语言中,数据类型分为基本类型和对象类型。其中对象类型继承Object类,按照存储对象的内存模型进行数据存储。对象引用存储在内存栈上,而对象本身的值存储在内存堆上。这个概念上没有什么值得需要注意的地方。这里,我想说的主要还是java的基本数据类型。

一般来说也就是比较公认的java包括8中基本类型(有的人也说void是一种类型),从类型上又可分为:布尔型、字符型和数值型;其中数值型又可分为整数和实数2种。









































































































































































 




 




 




 













分类




基本类型




大小




最小值




最大值




包装器类型




默认值




布尔



boolean

–

–

–

Boolean

false


字符



char

16-bit

‘\u0000’

‘\uFFFF’

Character

‘\u0000’






 




数值



整数

byte

8bits

-128

+127

Byte



short

16bits

-215

+215-1

Short



int

32bits

-231

+231-1

Integer



long

64bits

-263

+263-1

Long

0L/0l

实数

float

32bits

IEEE754

IEEE754

Float

0.0F/0.0f

double

64bits

IEEE754

IEEE754

Double

0.0D/0.0f








需要说明的是boolean类型所占存储空间的大小没有明确指定,仅定义为能够取字面值true或false,它占用的空间取决于Java虚拟机(JVM)的实现,可能是1位也可能是1个字节。

而类型可以自动转化,但需要满足的规则是byte -> short(char) -> int -> long -> float -> double逐步提升。向下就得加强制转换符号。但有可能失去信息。默认的整数都是int,默认的小数都是double。要定义float以及long等类型时得加个后缀,F(小写也可以)或者L。否则编译不会通过。这也就是编译期间检查编译器会在编译期对byte、short、int、long、float、double、char型变量的值进行检查,如果超出了它们的取值范围就会报错。

byte bb = 1455;//编译过不了 eclipse会提示: Type mismatch: cannot convert from int to byte
byte bbb = 12;

并且当使用+、-、*、/、%运算符对基本类型进行运算时,遵循如下规则:

  • 只要两个操作数中有一个是double类型的,另一个将会被转换成double类型,并且结果也是double类型;
  • 否则,只要两个操作数中有一个是float类型的,另一个将会被转换成float类型,并且结果也是float类型;
  • 否则,只要两个操作数中有一个是long类型的,另一个将会被转换成long类型,并且结果也是long类型;
  • 否则,两个操作数(包括byte、short、int、char)都将会被转换成int类型,并且结果也是int类型。

当使用+=、-=、*=、/=、%=、运算符对基本类型进行运算时,遵循如下规则:运算符右边的数值将首先被强制转换成与运算符左边数值相同的类型,然后再执行运算,且运算结果与运算符左边数值类型相同。这也是经常在某些面试题上出现的问题。

还需要说明的是从JDK5.0开始,Java基本数据类型及其对应包装类之间能实现自动装箱解箱操作。就是说int自动装箱成Integer等。

阅读全文 »

唐磊的个人博客

中南大学先进班集体标兵答辩-软件0804班视频准备final

发表于 2010-12-18 | 分类于 社会工作 |
我们来自五湖四海,我们相聚中南热土,我们共同构建理想的家园。中南大学软件学院0804班是一个优秀的独一无二的班集体,现有班级成员27人,其中女生5人,男生22人。自入学以来,在领导及老师的关怀帮助和班级成员的不懈努力下,我们锐意进取,共创辉煌。 唐磊:尊敬的评委老师,亲爱的同学们。 齐声:大家下午好 ...
阅读全文 »
唐磊的个人博客

我校举行2009—2010学年先进班集体标兵答辩会

发表于 2010-12-17 | 分类于 社会工作 |
12月15日下午,我校2009—2010学年先进班集体标兵答辩会在校本部立言厅、立德厅举行。本次答辩会由学工部主办,地球科学与信息物理学院承办,共有来自24个学院的29个候选班级入围。 在风采展示中,各班争妍夺艳,新意百出。地质工程0803答辩选手以辩论赛的形式进行了一番“唇枪舌战”,以不 ...
阅读全文 »
唐磊的个人博客

CSU软件0804答辩视频第一次

发表于 2010-12-14 | 分类于 社会工作 |
明天就正式答辩了。希望多天来的努力没有白费。 加油。 软件0804——加油。 群英齐汇中南 四班独领风骚 !
阅读全文 »
唐磊的个人博客

2010系统架构师论文题目

发表于 2010-12-14 | 分类于 课程学习 |
试题一 论软件的静态演化和动态演化及其应用 软件演化(Software Evolution)是指软件在其生命周期内的更新行为和过程。演化是一系列贯穿软件生命周期始终的活动,系统需求改变、功能实现增强、新功能加入、软件架构改变、软件缺陷修复、运行环境改变均要求软件系统能够快速适应变化,具有 ...
阅读全文 »
唐磊的个人博客

2010年11月软考系统架构设计师考试下午试题

发表于 2010-12-12 | 分类于 课程学习 |
试题一(共25分) 阅读以下关于软件系统架构选择的说明,在答题纸上回答问题1至问题3。 【说明】 某公司欲针对Linux操作系统开发一个KWIC(Key Word in Context)检索系统。该系统接收用户输入的查询关键字,依据字母顺序给出相关帮助文档并根据帮助内容进行循环滚动阅读。在对KW ...
阅读全文 »
唐磊的个人博客

2010年11月软考系统架构设计师考试上午试题

发表于 2010-12-12 | 分类于 课程学习 |
●采用微内核结构的操作系统提高了系统的灵活性和可扩展性,_\__(1)__。 (1)A.并增强了系统的可靠性和可移植性,可运行于分布式系统中 B.并增强了系统的可靠性和可移植性,但不适用于分布式系统 C.但降低了系统的可靠性和可移植性,可运行于分布式系统中 D.但降低了系统的可靠性和可移植性,不 ...
阅读全文 »
唐磊的个人博客

Facade门面/外观模式

发表于 2010-12-12 | 分类于 课程学习 |
外观模式,也叫门面模式,统一的英文定义是:Provide a unified interface to a set of interfaces in a subsystem. Facade defines a higher-level interface that makes the subsyst ...
阅读全文 »
1…53545556
tanglei

tanglei

码农 @ 阿里云, 毕业于CSU && THU, 曾工作于大疆(DJI), 宜信大数据创新中心, 腾讯 && 友盟.   MORE

446 日志
13 分类
146 标签
RSS
Wechat GitHub Weibo
© 2010 - 2021 tanglei - 渝ICP备16013386号
由 Hexo 强力驱动
主题 - NexT.Mist