在Java中有8中基本数据类型,分别为:

整型: byte、short、int、long

浮点型:float、double

布尔型:boolean

字符型:char.

byte:    8位,  封装类:Byte

    1byte = 8bit;   -128~127之间所有的整数

    "位"是byte,"字节"是bit

    2个字节表示一个字符。

    声明举例:byte a = 1;

short:   16位,短整型,封装类Short,范围在(-2^15) ~ (2^15)-1 之间

    short   2byte = 16bit

    声明举例:short a = 1;

int :    32位,整型,封装类Integer ,范围在(-2^31) ~ (2^31)-1 之间

    int    4byte = 32bit

    默认整型直接量为int

    声明举例:int a = 1;

long:   64位,长整型,封装类Long,范围在(-2^63) ~ (2^63)-1 之间

    ling  8byte = 64bit

    声明举例:long a = 1L;或者 long a = 1l;

float:  单精度浮点型,封装类Float,

    float 4byte = 4*8bit = 32bit  32位

    声明举例:float a = 1.1f;或者float a = 1.1F;

double:双精度浮点型,封装类Double

    double 8byte = 8*8bit = 64bit 64位

    默认浮点型直接量为double

    声明举例:double a = 1.1;

char: 字符类型,封装类Character

    Java中采用unicode编码

    char类型占用两个字节,

    java中的字符类型用单引号声明

    声明举例:char a = 'a';

         char a = 97; //ascii中97对应的字符为a

         char a = '中';

         char a = '\u987f';

boolean:布尔型,封装类Boolean

    只能存储 true ,false

------------------------------------------------------------------------------------------------

数据类型之间的转换:

  自动类型转换:byte --> short --> int --> long --> float --> double

               char-----^    

      小的类型可以自动转换成大的类型

        例如:double a = 1; //会自动转换成1.0

  强制类型转换:大的类型转换成小的类型,会出现精度损失或者溢出

        例如:double a = 1.0;

           float a1 = (float)a;

-----------------------------------------------------------------------------------------------------

  整型直接量可以直接赋值给byte,short,char,只要不超过其范围就可以

byte,short,char参与运算时,会先统一转换成int类型,然后再运算

  整数之间相除结果还是整数,小数舍去

  不同数据类型之间运算,会先转换成大的数据类型,然后再运算

  double计算时会出现舍入差,2进制系统中无法精确的表示1/10,就好像十进制中无法精确表示1/3一  样。如果需要精确计算,建议使用BigDecimal

            

Java中的基本数据类型和基本数据类型之间的转换的更多相关文章

  1. java中的字符,字符串,数字之间的转换

    string 和int之间的转换 string转换成int  :Integer.valueOf("12") int转换成string : String.valueOf(12) ch ...

  2. java中的字符、字符串及数字之间的转换(转)

    一.string 和int之间的转换 1.string转换成int  :Integer.valueOf("12") 2.int转换成string : String.valueOf( ...

  3. Java中构造函数传参数在基本数据类型和引用类型之间的区别

    Java中构造函数传参数在基本数据类型和引用类型的区别 如果构造函数中穿的参数为基本数据类型,如果在函数中没有返回值,在调用的时候不会发生改变:而如果是引用类型,改变的是存储的位置,所有不管有没有返回 ...

  4. java中一个数组不能放不同数据类型的值

    在java中,数组不能放不同数据类型的值. 方法一: 多态 定义数组类型的时候定义为父类,而存进数组为父类的子类 public class test2 { public static void mai ...

  5. Java中JDK、JRE和JVM三者之间有什么区别和联系?Java基础!

    任何语言或软件都需要一个运行环境.正如人想生活在空气中,鱼想生活在水中一样,喜荫植物不能暴露在阳光下,任何物体个体的存在都离不开其所需的环境,编程语言也是一样的. 接下来就详细描述一下Java中JDK ...

  6. DB2中字符、数字和日期类型之间的转换

    DB2中字符.数字和日期类型之间的转换 一般我们在使用DB2或Oracle的过程中,经常会在数字<->字符<->日期三种类 型之间做转换,那么在DB2和Oracle中,他们分别 ...

  7. 【转】Notepad++中Windows,Unix,Mac三种格式之间的转换

    原文网址:http://www.crifan.com/files/doc/docbook/rec_soft_npp/release/htmls/npp_func_windows_unix_mac.ht ...

  8. java中的输入流(Scanner),数据类型,运算符,switch,数组的用法

    //java中创建包用package相当于C#的命名空间namespace,java中导入包用import相当于C#中引入命名空间usingimport java.util.*;//导入包,*代表导入 ...

  9. java中的修饰符和基本数据类型

    1.java中的修饰符 java中的修饰符主要是用来对类资源进行一个权限控制,上面表格表现的很清晰,无需多言. 2.java中的基本数据类型 java中的数据类型分为引用类型和基本类型.基本数据类型有 ...

  10. Java中byte与16进制字符串的互相转换

    * Convert byte[] to hex string.这里我们可以将byte转换成int,然后利用Integer.toHexString(int)来转换成16进制字符串. * @param s ...

随机推荐

  1. 关于DB2版本、补丁升级和回退的总结[转载]

    首先介绍几个概念 RELEASE的升级就是版本升级,例如9.1→9.5→9.7→10.1,可以跳版本升级,例如9.1→10.1 FIX PACK简称FP,就是打补丁,例如9.7.1→9.7.2,每个版 ...

  2. 解决火狐中用JQUERY .removeAttr()无法去除元素属性的方法

    //为元素添加只读属性 $("#test").attr("readonly","readonly") //去除元素的只读属性 $(" ...

  3. 设计模式之建造者模式Builder(创建型)

    1. 概述 在软件开发的过程中,当遇到一个“复杂的对象”的创建工作,该对象由一定各个部分的子对象用一定的算法构成,由于需求的变化,复杂对象的各个部分经常面临剧烈的变化,但将它们组合在一起的算法相对稳定 ...

  4. 安卓开发中SQLite的使用(附实例)

    在Android平台上系统内置了丰富的API来供开发人员操作SQLite,我们可以轻松的完成对数据的存取.下面以我自己创建的收入信息表(InAccount)为例,来学习SQLite的使用. 主要是四个 ...

  5. js对敏感词的判断

    先贴代码: //定义敏感字符 var forbiddenArray =['xx','<','>','黄色']; //定义函数 function forbiddenStr(str){ // ...

  6. 利用KVC的方式更方便地获取数组中对象的属性的最值平均值等

    直接上代码 输出结果也在相应的代码里标注出来了 //main.m文件 #import <Foundation/Foundation.h> #import "Student.h&q ...

  7. String、StringBuffer与StringBuilder

    String.StringBuffer与StringBuilder之间区别 最近学习到StringBuffer,心中有好些疑问,搜索了一些关于String,StringBuffer,StringBui ...

  8. [H5]range对象的clone方法

    clone:range对象的克隆; <body> <p id="p">这是一段文字</p> <button onclick="b ...

  9. 直播协议 HTTP-FLV 详解

    传统的直播协议要么使用 Adobe 的基于 TCP 的 RTMP 协议,要么使用 Apple 的基于 HTTP 的 HLS 协议. 今天我要向大家介绍另外一种结合了 RTMP 的低延时,以及可以复用现 ...

  10. python--注释

    python中单行注释用#,多行注释用""",看下面的代码: #!/usr/bin/python #coding:utf-8 #编码方式 #打印一行* print &qu ...