java中基本类型占用字节数

在Java中一共有8种基本数据类型,其中有4种整型,2种浮点类型,1种用于表示Unicode编码的字符单元的字符类型和1种用于表示真值的boolean类型。(一个字节等于8个bit)

1.整型
类型              存储需求     bit数    取值范围      备注
int                 4字节           4*8 
short             2字节           2*8    -32768~32767
long              8字节           8*8
byte              1字节           1*8     -128~127

2.浮点型
类型              存储需求     bit数    取值范围      备注
float              4字节           4*8                  float类型的数值有一个后缀F(例如:3.14F)
double          8字节           8*8                       没有后缀F的浮点数值(如3.14)默认为double类型

3.char类型
类型              存储需求     bit数     取值范围      备注
char              2字节          2*8

4.boolean类型
类型              存储需求    bit数    取值范围      备注
boolean        1字节          1*8      false、true

补充:Java有一个能够表示任意精度的算书包,通常称为“大数值”(big number)。虽然被称为大数值,但它并不是一种Java类型,而是一个Java对象。

如果基本的整数和浮点数精度不能够满足需求,那么可以使用java.math包中的两个很有用的类:BigIntegerBigDecimal(Android SDK中也包含了java.math包以及这两个类)这两个类可以处理包含任意长度数字序列的数值。BigInteger类实现了任意精度的整数运算,BigDecimal实现了任意精度的浮点数运算。

原文: http://blog.csdn.net/witsmakemen/article/details/8974200/

时间: 2024-10-09 05:03:06

java中基本类型占用字节数的相关文章

java中基本类型占用字节数 (面试总问)

在移动开发中由于移动设备内存的局限性,往往需要考虑使用的数据类型所占用的字节数.下面简单介绍下Java中几种基本数据类型,以加深记忆. 在Java中一共有8种基本数据类型,其中有4种整型,2种浮点类型,1种用于表示Unicode编码的字符单元的字符类型和1种用于表示真值的boolean类型.(一个字节等于8个bit) 1.整型 类型              存储需求     bit数    取值范围      备注 int                 4字节           4*8 s

java中各种数据类型占用字节数

1字节(Byte)=8bit java的基本类型 类型 所占字节 byte 1 short 2 int 4 long 8 float 4 double 8 char 2 String中字母和汉字所占字符是不一样的,并且与编码有关 英文字母:A 字节数 编码 1 GB2312 1 GBK 1 GB18030 1 ISO-8859-1 1 UTF-8 4 UTF-16 2 UTF-16BE 2 UTF-16-LE 中文汉字:我 字节数 编码 1 GB2312 2 GBK 2 GB18030 1 IS

Java基本类型占用字节数(或 bit数)

背景:面试时候问到int类型占用几个字节,以及表示的大小,居然一脸懵逼,任何细节都不能放过. Java基本类型占用字节数(或 bit数) java是跨平台的语言,所以不论在什么系统中这些东西在内存中所占空间都是相同的 原文地址:https://www.cnblogs.com/lixuwu/p/10612553.html

Java中boolean类型占用多少个字节

为什么要问这个问题,首先在Java中定义的八种基本数据类型中,除了其它七种类型都有明确的内存占用字节数外,就boolean类型没有给出具体的占用字节数,因为对虚拟机来说根本就不存在 boolean 这个类型,boolean类型在编译后会使用其他数据类型来表示,那boolean类型究竟占用多少个字节?带着疑问,随便网上一搜,答案五花八门,基本有以下几种: 1个bit 理由是boolean类型的值只有true和false两种逻辑值,在编译后会使用1和0来表示,这两个数在内存中只需要1位(bit)即可

Java字符串中常用字符占用字节数

java中一个char型的数据(也就是一个字符)占两个字节.而Java中常用的字符包括数字.英文字母.英文符号.中文汉字.中文符号等,若在字符串中包含里面的多种字符,它们是否都占两个字符呢?答案是否定的. public class CharBytes { public static void main(String[] args) { String s1 = "1234567";// 7个数字字符 byte[] b1 = s1.getBytes(); System.out.printl

Java中的char占用几个字节

概述 网上或书上都说是Java中的char占用2个字节,一直没有深入,直到接触了编码,才对此产生了疑问,今天来深入一下这个问题. 答疑 char在设计之初的时候被用来存储字符,可是世界上那么多字符,如果有1个字节,就意味着只能存储256中,显然不合适,而如果有两个字节呢,那么就可以存储2^16(65536)种,这个数量符合大多数国家的语言字符个数于是Java团队使用unicode作为编码,一个char作为2个字节来存储. 但是unicode只是一个标准,具体的实现还是有如:UTF-8或UTF-1

java基本数据类型所占字节数

JAVA基本数据类型所占字节数是多少?(32位系统) byte     1字节 short    2字节 int      4字节 long     8字节 char     2字节(C语言中是1字节)可以存储一个汉字 float    4字节 double   8字节 boolean  false/true(理论上占用1bit,1/8字节,实际处理按1byte处理) JAVA是采用Unicode编码.每一个字节占8位.你电脑系统应该是 32位系统,这样每个int就是 4个字节 其中一个字节由8

【C语言】结构体占用字节数及存储与空间分配

我们都知道在数据类型中,char类型占1个字节,short占2个字节,int占4个字节,long占8个字节等等. 在计算结构体大小时需要考虑其内存布局,结构体在内存中存放是按单元存放的,每个单元多大取决于结构体中最大基本类型的大小,下面我们看几个例子: 1. struct A { char a; int b; short c; }str1; 这里char占1个字节,int占4个字节,short占2个字节,按单元存放如下图: 1 2 3 4 a       b b b b c c     由于a占

java中基本类型封装对象所占内存的大小(转)

这是一个程序,java中没有现成的sizeof的实现,原因主要是java中的基本数据类型的大小都是固定的,所以看上去没有必要用sizeof这个关键字. 实现的想法是这样的:java.lang.Runtime类中有一些简单的能涉及到内存管理的函数: Every Java application has a single instance of class Runtime that allows the application to interface with the environment in