【Java编程】Java基本数据类型

        在较前面的一篇博文《C/C++基本数据类型》中,我主要介绍了c/c++的基本数据类型。我们知道C语言没有具体规定各类数据类型所占内存的字节数,只要求long型数据长度不小于int型,short型不大于int型。具体的实现如何,由各计算机系统自行决定。

        一般情况下,在Turbo C++中,int型和short型都是16位,而long型是32位。而有的c语言编译器给short型分配16位,而int型和long型分配32位。通常的做法是:把long型定为32位,把short型定为16位,而int型可以为16位,也可以是32位。

        相比C语言而言,Java的8种基本数据类型的长度与平台无关。因此Java语言具有“’一次编译,到处运行”的优点。本文主要介绍Java的基本数据类型。Java语言的基本数据类型总共有以下8种,下面是按照用途划分出的4个类别:

        

整数型 byte   short   int  long
小数型 float                 double
字符型 char
布尔型 boolean

下面分别介绍这4种类别:

1.整数型

        整数型是一类代表整数值的类型。当需要代表一个整数的值时,可以根据需要从4种类型中挑选合适的,如果没有特殊要求的话,一般选择int类型。4种整数型区别主要在每个数据在内存中占用的空间大小和代表的数值的范围。具体说明参看下表: 、

类型名称 关键字 占用字节 取值范围 默认值
字节型 byte 1 -2^7~2^7-1 0
短整型 short 2 -2^15-2^15-1 0
整型 int 4 -2^31-2^31-1 0
长整型 long 8 -2^63-2^63-1 0

 说明:1、Java中的整数都是有符号数,也就是有正有负。

              2、默认值指在特定的情况下才自动初始化,具体的情况后续将有叙述。

              3、程序中的整数数值默认是int以及int以下类型,如果需要书写long型的值,则需要在数值后面添加字母L,大小写均可。

2.小数型

        小数型是一类代表小数值的类型。当需要代表一个小数的值时,可以根据需要从以下2种类型中挑选合适的。如果没有特殊要求,一般选择double类型。由于小数的存储方式和整数不同,所以小数都有一定的精度,所以在计算机中运算时不够精确。根据精度和存储区间的不同,设计了两种小数类型,具体见下表:

类型名称 关键字 占用字节 取值范围 默认值
单精度 float 4 -3.4E+38—3.4E+38 0.0f
双精度 double 8 -1.7E+308—1.7E+308 0.0

 说明:1、取值范围以科学计数法形式进行描述。

              2、在程序中,小数的运算速度要低于整数运算。

              3、float类型的小数,需要在小数后加字母f,不区分大小写,例如1.01f。

3.字符型

        字符型代表特定的某个字符,按照前面介绍的知识,计算机中都是以字符集的形式来保存字符的,所以字符型的值实际只是字符集中的编号,而不是实际代表的字符,由计算机完成从编号转换成对应字符的工作。Java语言中为了更加方便国际化,使用Unicode字符集作为默认的字符集,该字符集包含各种语言中常见的字符。在程序代码中,字符使用一对单引号加上需要表达的字符来标识,例如’A’、’a’等,当然也可以直接使用字符编码,也就是一个非负整数进行表示。具体见下表:

类型名称 关键字 占用字节 取值范围 默认值
字符型 char 2 0~2^16-1 0

   说明:1、字符型的编号中不包含负数。

               2、字符型由于存储的是编号的数值,所以可以参与数学运算。

               3、字符型可以作为Java语言中的无符号整数使用。

               4、字符型的默认值是编号为0的字符,而不是字符0

4.布尔型

        布尔型代表逻辑中的成立和不成立。Java语言中使用关键字true代表成立,false代表不成立。布尔型是存储逻辑值的类型,其实很多程序中都有逻辑值的概念,Java把逻辑的值用布尔型来进行表达。具体见下表:

类型名称 关键字 占用字节 取值范围 默认值
布尔型 boolean   true or false false

类型名称


关键字


占用空间(字节)


取值范围


默认值


布尔型


boolean


 


true或false


false

说明: 布尔型占用的空间取决于Java虚拟机(JVM)的实现,可能是1位也可能是1个字节。




原文:http://blog.csdn.net/tengweitw/article/details/23603041

作者:nineheadedbird

时间: 2024-10-26 17:43:34

【Java编程】Java基本数据类型的相关文章

Java编程——Java开发必看的编程思想

Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而且在大型项目开发中也是常用的知识,既有简单的概念理解题(比如is-a关系和has-a关系的区别),也有深入的涉及RTTI和JVM底层反编译知识.   1. Java中的多态性理解(注意与C++区分) Java中除了static方法和final方法(private方法本质上属于final方法,因为不能被子类访问)之外,其它所有的方法都是动态绑定,这意

java 编程-JAVA实现距离矢量算法

问题描述 JAVA实现距离矢量算法 1.编程实现右图所示简单网络拓扑的距离向量路由算法. 1.1 结点之间的连接关系固定: 1.2 链路开销可以由用户设定. 2.距离向量算法的实现方式: 2.1 可以利用多线程机制:每个结点一个 线程:每隔一段事件利用线程间通信 机制传递距离向量(DV):或是 2.2 每个结点利用单独的进程实现:每隔一 段时间利用Socket实现结点间的距离向量交换: 2.3 距离向量的计算与结点路由表的显示. 3.网络拓扑结构的描述(数据结构),拓扑结构利用文件存储. 4.结

java 编程-java语言求助,遇到个小问题

问题描述 java语言求助,遇到个小问题 始终提示非法字符,不知道哪里错了,各位精英帮帮忙.好像是引号的问题,大家帮忙看看. 解决方案 检查一下是不是半角与全角的原因 解决方案二: 找到提示出错的行,看看那一行都有什么符号.也可以复制贴出来才好分析. 解决方案三: 编写代码时把输入法设置成英文输入法,如果你的代码不多的话,删除重新写试试. 解决方案四: 一般编译器会把有语法错误的地方标注

java 编程-java问题~数字判断!~~~~~

问题描述 java问题-数字判断!----- 求教控制台随机输入一个数 判断是几位数? 把各位上的数字相加和是多少? 把数字倒序输出? 判断是否回文数? 解决方案 大致可以这样写 import java.io.IOException; import java.util.Scanner; /** * Created by obo on 16/3/13. */ public class Test { public static void main(String []args) throws IOEx

java 编程-Java 输出中这些符号什么意思

问题描述 Java 输出中这些符号什么意思 x+.+y+,还有头顶的双引号又是什么意思.怎么用的(有时候放在x前上方,有时候又不放) 解决方案 package Test0831; public class QTest_3 { public static void main(String[] args) { int a= 10; int b=1,c=2; String str = "helloWorld!"; System.out.println("a="+a); S

java 编程-java 对象输出流单独运行写对象对象会被写出来 但是也会报错 单独问我行读对像直接报错

问题描述 java 对象输出流单独运行写对象对象会被写出来 但是也会报错 单独问我行读对像直接报错 package com.vince; import java.io.Serializable; public class Cat implements Serializable { private String name; private int age; private transient String color; public Cat(){ } public Cat(String name,

Java编程那些事儿17——基本数据类型

3.5 基本数据类型 程序中最核心的就是一系列的数据,或者叫程序状态,计算机为了方便的管理数据,就为数据设定了一组类型,这样在为数据分配内存以及操作数据时都比较方便,这就是数据类型的由来.其实现实生活中也存在各种数据类型,例如数字型,字符型等,数字型又可以划分为整数型和小数型,只是没有很可以的划分罢了. 在数据类型中,最常用也是最基础的数据类型,被称作基本数据类型.可以使用这些类型的值来代表一些简单的状态. 3.5.1 概述 学习数据类型的目的就是在需要代表一个数值时,能够选择合适的类型.当然,

Java编程一定要搞清29个基础概念

  Java的白皮书为我们提出了Java编程语言的11个关键特性.这11个关键特性就是Java一定要搞清的29个基础概念. (1)Easy:Java的语法比C++的相对简单,另一个方面就是Java能使软件在很小的机器上运行,基础解释其和类库的支持的大小约为40kb,增加基本的标准库和线程支持的内存需要增加125kb.并不是说这个语言就而一定比哪个好,51CTO也曾特别推荐过"C#与C++谁更强?还是关公战秦琼",对于初学者来说,您想选择好的语言进行学习,可以参看51CTO编辑特别推荐的

Java 编程要点之 I/O 流详解

本文详细介绍了 Java I/O 流的基础用法和原理. 字节流(Byte Streams) 字节流处理原始的二进制数据 I/O.输入输出的是8位字节,相关的类为 InputStream 和 OutputStream. 字节流的类有许多.为了演示字节流的工作,我们将重点放在文件 I/O字节流 FileInputStream 和 FileOutputStream 上.其他种类的字节流用法类似,主要区别在于它们构造的方式,大家可以举一反三. 用法 下面一例子 CopyBytes, 从 xanadu.t