基本数据类型

  • 整型: byte、short、int、long

    java 的整型常量默认为int型,在java程序中变量通常声明为int型,除非不足以表示较大的数才用long,而在声明long型常量必须在后面加上lL

    类型 占用储存空间 表数范围
    byte 1字节=8bit -128 ~ 127
    short 2字节 -215 ~ 215 - 1
    int 4字节 -231 ~ 231 -1 (约21亿)
    long 8字节 -263 ~ 263 - 1
  • 浮点型:float、double

    ​ 浮点型表示小数点的数值,java浮点型常量默认类型为double

    • float表示数值的范围比long还大,在定义float变量时,变量要以fF结尾(尾数可以精确到7位数字。很多情况下,精度很难满足需求)
    • double精度是float的两倍。(通常采用此类型定义)
    类型 占用储存空间 表数范围
    单精度float 4字节 -3.403E38 ~ 3.403E38
    双精度double 8字节 -1.798E308 ~ 1.798E308
  • 字符型:char

    在声明char型变量时,通常使用一对' ',内部只能写一个字符。

    实列:

    • char = '世'
    • char = '世界' ×
    类型 占用储存空间 表数范围
    char 1字符 = 2字节 ''
  • 布尔型:boolean

    布尔型只有两个值:truefalse,一般用在判断、循环结构中使用。

引用数据类型

  • 特殊:字符串(String属于引用数据类型) String可以和所用数据类型进行计算,结果都为String类型。

  • 类(class

  • 接口(interface

  • 数组(array

基本数据类型之间的运算规则

自动类型提升

bytecharshort) → intlongfloatdouble

特别:当bytecharshort三种类型的变量做运算时,结果为int类型。

  • 当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的类型

说明: 此时的容量大小指的是表示数的范围的大和小。

比如:float容量要大于long的容量。

强制类型转换

强制类型转换就相当与自动类型提升运算的逆运算

  • 强制数据转换需要使用强转符:()

  • 注意:强制类型转换,可能导致精度损失

    public class VariableTest2 {
    public static void main(String[] args){
    /*精度损失举例1*/
    double d1 = 12.3;
    int i1 = (int)d1;
    System.out.println(i1); // 12 /*没有损失精度*/
    long d2 = 123L;
    short i2 = (short)d2;
    System.out.println(i2); // 123 /*精度损失举例2*/
    int d3 = 128;
    byte i3 = (byte)d3;
    System.out.println(i3); // -128
    }
    }

JAVA_数据类型介绍与基本数据类型之间的运算规则的更多相关文章

  1. C 各种数据类型介绍

    1.各种数据类型介绍: 基本数据类型最主要的特点是,其值不可以再分解为其它类型.也就是说,基本数据类型是自我说明的. 1.1整型 整形包括短整型.整形和长整形. 1.1.1短整形 short a=1; ...

  2. Redis常用数据类型介绍、使用场景及其操作命令

    Redis常用数据类型介绍.使用场景及其操作命令 本文章同时也在cpper.info发布. Redis目前支持5种数据类型,分别是: 1.String(字符串) 2.List(列表) 3.Hash(字 ...

  3. Hadoop数据类型介绍

    我们知道hadoop是由Java 编程写的.因此我们使用Java开发环境来操作HDFS,编写mapreduce也是很自然的事情.但是这里面hadoop却对Java数据类型进行了包装,那么hadoop的 ...

  4. SQL数据类型介绍

    在计算机中数据有两种特征:类型和长度.所谓数据类型就是以数据的表现方式和存储方式来划分的数据的种类.    在SQL Server 中每个变量.参数.表达式等都有数据类型.系统提供的数据类型分为几大类 ...

  5. MySQL:数据类型介绍

    数据类型介绍 一.整数类型(可以添加自增约束条件) 数据类型 存储需要 有符号 无符号 tinyint 1个字节 -2^7~2^7-1 0~2^8 smallint 2个字节 -2^15~2^15-1 ...

  6. JS的数据类型(包含:7种数据类型的介绍、数据类型的转换、数据类型的判断)

    前言 最新的 ECMAScript 标准定义了JS的 7 种数据类型,其中包括: 6 种基本类型:Boolean.Null.Undefined.Number.String.Symbol (ECMASc ...

  7. openresty开发系列12--lua介绍及常用数据类型简介

    openresty开发系列12--lua介绍及常用数据类型简介 lua介绍  1993 年在巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de ...

  8. java数据类型,hibernate数据类型,标准sql数据类型之间的对应表

    Hibernate API简介 其接口分为以下几类: l         提供访问数据库的操作的接口: l         用于配置Hibernate的接口: l         回调接口 l     ...

  9. 以太坊智能合约 Solidity 的常用数据类型介绍

    目录 目录 1.数组 1.1.对数组的增删改查操作. 2.String.Bytes.Mapping的使用 3.Enums 和 Structs 的简单应用 4.Ether 单位和 Time 单位 5.A ...

随机推荐

  1. Effective Modern C++ ——条款5 优先选择auto,而非显式型别声明

    条款5 对于auto ,他的好处不仅仅是少打一些字这么简单. 首先在声明的时候, 使用auto会让我们养成初始化的习惯: auto x;//编译不通过必须初始化. 再次对于auto而言,它可以让我们定 ...

  2. UI自动化中无头浏览器的应用

    因为某次工作中写了个脚本要来回跑,还要在本机上做很多其他的事情,所以就上网找了个方法,无头浏览器,这样就不会浏览器来回弹出来,执行用例还会很快. 废话不多说,直接放代码: #coding=utf-8 ...

  3. python之路《五》字符串的操作

    python的里的字符串的操作是可以说是最常见也是最实用的 我们通常使用双引号来表示字符串" "创建字符串很简单,定义一个变量就可以了 1 name = 'my name \t i ...

  4. 信息论-Turbo码学习

    1.Turbo码: 信道编码的初期:分组码实现编码,缺点有二:只有当码字全部接收才可以开始译码,需要精确的帧同步时延大,增益损失多 解决方案:卷积码:充分利用前一时刻和后一时刻的码组,延时小,缺点:计 ...

  5. Python_案例_斐波那契数

    方法一: 1 #!/usr/bin/python3 2 3 # Fibonacci series: 斐波纳契数列 4 # 两个元素的总和确定了下一个数 5 a, b = 0, 1 6 while b ...

  6. Web安全常见漏洞修复建议

    转载地址:https://security.pingan.com/blog/17.html SQL注入 在服务器端要对所有的输入数据验证有效性. 在处理输入之前,验证所有客户端提供的数据,包括所有的参 ...

  7. SMB远程代码执行漏洞(CVE-2020-0796)分析、验证及加固

            这几天有点忙,CVE-2020-0796出来了,没静下心来关注一下,显得太不尊重这个漏洞了,今天周末,关注一下,水一篇. 一.漏洞描述       漏洞公告显示,SMB 3.1.1协议 ...

  8. NO.A.0004——Git私有服务器部署/makefile方式/本地与Git服务器代码交换

    一.在linux服务器上搭建私有Git服务程序:make编译方式 远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改.GitHub就是一个免费托管开源代码的远程仓库.但是对于某 ...

  9. 如何灵活运用ABBYY FineReader的识别功能

    由于工作的原因,经常会使用到文字识别工具,说真的,一款好用的文字识别工具能省不少事,前不久碰到一位职场新人,他的工作内容也离不开文字识别工具,他还问我有什么好用的软件推荐,说到好用,还是ABBYY F ...

  10. 802.11抓包软件对比之Microsoft Network Monitor

    从事WiFi嵌入式软件开发的同学,802.11协议层抓包分析是一个需要熟练掌握的一个技能,需要通过分析WiFi底层802.11协议层的数据包来定位问题.同时从学习802.11协议的角度而言,最有效的学 ...