`
在水伊方
  • 浏览: 110991 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

Java数据类型

    博客分类:
  • Java
 
阅读更多

Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存总分配了不同大小的内存空间,Java的数据类型结构图如下:



 

下表是基本数据类型的一些相关信息:
其中范围可以查阅API中相对应类的MAX_VALUE与MIN_VALUE常量值,

初始值见http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html

 

       从表中可以看到每一种类型的数据类型表示的范围是不一样的,换种说法可以说是精度不一样,所以我们在对不同数据类型进行运算时就涉及数据类型转换的问题,就像现在我们手上有美元与人民币两种货币,现在想要计算一下手上总共有多少钱,这时我们就需要先把美元兑换成人民币(或者人民币转换成美元),这样我们才能得出想要的结果,如果我们想要得到较为精确地结果,则这时最佳的做法是把手上的美元兑换成人民币,假设美元:人民币=1:6,现在有9美元与13块人民币,则共有人民币=6*9+13=67,而如果以美元为单位的话,这时则有美元=9+13/6≈11.17,这个结果在一定程度上已经损失了精度,与之类似,我们在对Java的基本数据类型进行运算的时候,计算机会自动把低精度类型的数据自动转成高精度的数据类型(低精度能表示的数据范围比高精度的小,可以理解成在内存中占用的比特位少),现在来分析一下'a'+1的结果是多少呢?首先'a'是一个字符数据类型,而1是一个整型数据类型,字符型占16个bit位,整型占32个bit位,计算机就会把字符型“看成”是32位的整型值,这时我们就会有一个疑问了,‘a'是个字符,那么如何跟1这个整数做加法运算呢,实际上在计算机中’a'表现形式是以二进制存在的,Java中有句非常出名的话叫“一切皆对象”,套用在这边可以说计算机中的所有数据“一切皆01”,为了能让计算机识别我们在键盘上敲击的字符,计算机的发明者就制订一张与键盘上相对应的码表--ASCII表(我们的汉字有专门的码表),从ASCII码表中我们可以得知字符a所对应的数值是97,然后97再转成二进制与1的二进制进行相加,相加后的结果再转化成十进制98返回回来。

 

       实际上在对byte型、short型与char型的值进行运算时会被自动提升为int型的值。如果一个操作数是long型,计算结果就是long型; 如果一个操作数是float型,计算结果就是float型; 如果一个操作数是double型,计算结果就是double型。由于每种数据类型都定义范围,所以如果我们定义byte b = 128,则编译器会报错(在IDE中如Eclipse会自动提示错误),因为byte的范围是-128~127,而128不在该范围内。 其他的类型在定义的时候也需要避免这个问题,在实际中,根据需求选用合适的数据类型,可以减少内存占用空间。

 

       上面讲到的是自动类型提升,有时我们需要根据实际情况对数据类型进行强制转换,比如说进行数学考试的时候,有时候最后一题为附加题(假如分数为10分),现在这个分数记入总分,但是不用于学生的成绩排名,则这时我们定义分数就用byte类型,已知一个学生的成绩为89分,则有byte score = 89;而这名学生的附加分数为6分,则有score = (byte)(socre + 6),由于socre + 6 =  95并未超出byte范围,所以可以进行强制转换,如果超过得到的结果则会与预期的不同。

  • 大小: 38.2 KB
  • 大小: 25.6 KB
分享到:
评论

相关推荐

    Java数据类型和MySql数据类型对应一览

    Java 数据类型和 MySql 数据类型对应一览 在 Java 编程语言中,数据类型是指变量或函数可以持有的值的类型。 MySql 数据库也具有其自己的数据类型,用于存储和管理数据。在本文中,我们将对 Java 数据类型和 MySql ...

    JAVA数据类型思维导图

    本资源“JAVA数据类型思维导图”提供了一种直观的方式来理解和记忆Java中的数据类型,包括基本数据类型和引用数据类型。下面将对这两个主要的数据类型进行详细解释。 1. 基本数据类型(Primitive Data Types) - ...

    Java数据类型练习.doc

    Java 数据类型练习 本文档总结了 Java 数据类型的一些基本概念和实践练习题,涵盖了基本类型、变量定义、常量、运算符、控制流、数组、随机数等多方面的知识点。 一、基本类型 Java 中有八种基本类型:byte、...

    Java数据类型和MySql数据类型对应表

    Java 数据类型和 MySql 数据类型对应表 在 Java 编程中,了解 Java 数据类型和 MySql 数据类型的对应关系非常重要。这是因为在 Java 应用程序中,我们经常需要与数据库进行交互,而 MySql 是一种常用的关系数据库...

    MySql于Java数据类型对应列表

    ### MySQL与Java数据类型对应详解 #### 概述 在进行数据库操作时,尤其是在使用Java进行MySQL数据库开发的过程中,正确地映射数据类型是至关重要的一步。本文将详细介绍MySQL中的各种数据类型及其在Java中的对应...

    java数据类型思维导图

    这是一个对java数据类型进行详细分类的思维导图,其与我的一篇博客中的图片是一致的。那张图片就是通过它导出的。使用的软件是novamind5。

    22.java数据类型.zip

    22.java数据类型.zip22.java数据类型.zip22.java数据类型.zip22.java数据类型.zip22.java数据类型.zip22.java数据类型.zip22.java数据类型.zip22.java数据类型.zip22.java数据类型.zip22.java数据类型.zip22.java...

    Oracle9i数据类型Java数据类型Schema类型对比.doc

    Oracle9i 数据类型、Java 数据类型以及 Schema 类型之间的对比主要关注它们在存储和处理数据时的差异。这些数据类型是编程和数据库管理中的基础,理解它们的关系对于开发与数据库交互的应用程序至关重要。 1. ...

    JAVA数据类型与Hibernate的类型映射

    这篇博客主要探讨了Java数据类型如何与Hibernate的类型映射进行对应。 首先,Java的基本数据类型在Hibernate中有对应的类型映射。例如,int型在Hibernate中通常映射为Integer类型,因为数据库字段可能允许为空...

    java 数据类型讲解

    #### 二、Java数据类型分类 Java的数据类型主要分为两大类:原始数据类型(Primitive Data Types)和引用数据类型(Reference Data Types)。 ##### 2.1 原始数据类型 原始数据类型包括整型、浮点型、布尔型和...

    java数据类型汇总

    Java 数据类型是编程的基础,了解并熟练掌握它们的特性及转换方式对于任何Java开发者来说都至关重要。Java的数据类型主要分为两大类:基本数据类型(Primitive Data Types)和引用数据类型(Reference Data Types)...

    03-JAVA数据类型思维导图

    JAVA数据类型思维导图,便捷整理思路,变量、变量操作、变量的分类、数据类型、变量的内存分析图、类型之间转换

    Java数据类型精解

    资源:Java数据类型精解 作者:Shenkxiao 版本:1.0 pdf 主要内容: Java数据类型 1.1 基本数据类型 1.2 对象数据类型 1.3 引用数据类型 1.4 数组数据类型 上传理由:基础文档共享,对Java初学者有很大的...

    JAVA数据类型转换.pdf

    ### JAVA数据类型转换详解 #### 一、引言 在Java编程中,数据类型转换是一项基本且重要的技能。本文档将详细介绍Java中的数据类型转换,包括简单数据类型之间的转换、字符串与其他数据类型的转换以及一些实用的...

    SQL的数据类型与Java数据类型的对应关系

    SQL的数据类型与Java数据类型的对应关系,是程序员必备的基础知识,欢迎大家下载。

    Java数据类型,Hibernate数据类型,标准sql数据类型之间的对应表

    当我们在使用Hibernate时,我们需要了解Java数据类型如何与SQL数据类型对应,以便正确地配置实体类和Hibernate的映射文件(通常是.hbm.xml文件或使用注解的方式)。例如,Java的`int`类型通常对应于SQL的`INTEGER`,...

    C#和java数据类型的等价类型

    C#和Java数据类型的等价类型 C#和Java都是面向对象的编程语言,它们都支持多种数据类型,以便于开发者在编程时可以选择合适的数据类型来存储和操作数据。本文将对C#和Java中的数据类型进行比较和分析,帮助开发者更...

    Java数据类型操作包含转换代码实例.rar

    这个压缩包“Java数据类型操作包含转换代码实例.rar”提供了丰富的代码示例,帮助初学者理解和掌握Java中数据类型的转换。下面将详细阐述相关知识点。 一、基本数据类型 Java的基本数据类型包括整型(byte, short, ...

    javasqlTypes数据库字段类型java数据类型的对应关系

    在Java编程语言中,与数据库交互是常见的任务,这就涉及到`java.sql.Types`枚举类,它是Java数据类型与数据库字段类型之间的桥梁。`java.sql.Types`定义了一系列常量,这些常量代表了SQL标准中的数据类型,使得我们...

    Java数据类型与各数据库类型映射一览表

    Java数据类型与各数据库类型映射一览表 本资源提供了 Java 数据类型与各数据库类型的映射关系表,涵盖了 Java.sql.Type 值、IBM DB2、Oracle、Sybase、SQL Server、Informix 等多个数据库管理系统。该表格详细说明...

Global site tag (gtag.js) - Google Analytics