前言

  Java是强类型(strongly typed)语言,强类型包含两方面的含义:

  1. 所有的变量必须先声明后使用;
  2. 指定类型的变量只能接受预支匹配的值。

  这意味着每一个变量和表达式都有一个在编译时就确定的类型。

  Java数据类型分为两大类:基本类型和引用类型。

基本数据类型

  Java的基本数据类型包括:boolean、字符型和数值类型。

  数值类型包括:整型和浮点类型

boolean

  大小:Java规范并没有强制指定boolean类型的变量所占内存大小

  范围:true或false

  例子:boolean a = true;

          boolean b = false;

byte

  大小:1个字节,即在内存中占8位

  范围:-128~127,即:-27~27-1

  例子:byte a = 12;

short

  大小:2个字节

  范围:-32768~32767,即:-215~215-1

  例子:short a = 12;

int

  大小:4个字节

  范围:-2147483648~2147483647,即:-231~231-1,留个印象:21亿多

  例子:int a = 12;

long

  大小:8个字节

  范围:-263~263-1,留个印象:92亿亿

  例子:long a = 12L;

注意:

  1. int是最常用的整数类型,直接给出一个整数值默认就是int类型
  2. 若要定义成long型,必须在数字后面加上l或L,一般使用L,因为小写l和数字1很像,容易出错

字符型

  大小:2个字节

  例子:char a = 'a';

  字符型通常用于表示单个的字符,必须使用单引号(')括起来,如:'a'

单浮点数

  大小:4个字节

  例子:float a = 12.3f

注意:Java默认的浮点数是双浮点数(double),所以使用float时必须加上f或F

双浮点数

  大小:8个字节

  例子:double a = 12.3;

注意:若需要数据非常精确的话,不要使用浮点数,以为Java的浮点数不精确,应该使用类Decimal,以后会由讲解

基本数据类型的类型转换

自动类型转换

  Java所有数值类型的变量都可以相互转换,转换规则:表数范围小的可以向表数范围大的类型转换。

  即:byte——> short ——> int ——> long ——> float ——> double

                       char ——> int

  例子:

                

强制类型转换

  当转换时不符合上面的规则,则编译器会报错,如:

  

  这时需要强制转换,如:

  

注意:强制类型转换会失去精度,如上图,小数部分丢失了。

  

转载于:https://www.cnblogs.com/gq2blog/p/6108060.html

Java学习笔记三——数据类型相关推荐

  1. java学习笔记(三):前端miniUI控件库入门

    java学习笔记(三):前端miniUI控件库入门 最近在一家公司实习学习,一上来就需要学习了解相关的前端内容--miniUI.而这个内容自己本身并没有了解学习过,上手也是遇到了不少的问题,于是想把自 ...

  2. (JAVA学习笔记) 关于数据类型的一些扩展-面试时经常问到的问题

    JAVA数据类型的一些扩展 一.整数类型扩展 整数各种进制表示方法: //整数扩展 十进制 二进制0b 八进制0 十六进制0xint i = 1;int i1 = 0b10;int i2 = 010; ...

  3. java注解和反射——狂神说java学习笔记三

    原文链接:公众号狂神说 视频教程[狂神说B站]: https://www.bilibili.com/video/BV12J41137hu 如有侵权,联系立删 什么是注解 Annotation是从JDK ...

  4. java学习笔记(三)----成员权限,构造函数,this用法

    成员权限                         本类    同包类    非同包子类    非同包非子类 public         y        y               y  ...

  5. 【Java学习笔记三】抽象类与接口

    对象的类型转换分为自动转换和强制转换两种 派生类向基类转换是自动转换,因为派生类中包含基类 基类向派生类的转换是强制转换 强制类型转换是通过在转换对象前面使用圆括号运算符来实现,圆括号内为要转换的目标 ...

  6. JAVA学习笔记(三十一)-电影系统案例

    伪代码 系统的角色类准备 用户购票 用户评分 商家功能 首页设计 先封装 public class Business extends User{// 店铺名称private String shopNa ...

  7. JAVA学习笔记(三十九)-打印流

    import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.PrintStream; i ...

  8. 疯狂java学习笔记三

    面向对象 1.继承 extends关键字 抽象类 implement关键字 java1.8(函数式接口)–>Lamba表达式–>foreach方法–>函数接口 java1.8默认方法 ...

  9. Java学习笔记二:数据类型

    Java学习笔记二:数据类型 1. 整型:没有小数部分,允许为负数,Java整型分4种:int short long byte 1.1 Int最为常用,一个Int类型变量在内存中占用4个字节,取值范围 ...

最新文章

  1. c语言inline详解
  2. 从0到1,苏宁API网关的演进之路
  3. android webview详情,Android中的WebView详细介绍
  4. 数据结构:堆排序一(heap sort)
  5. cad批量偏移_学会这12个CAD制图命令,走遍天下都不怕,有没有兴趣?
  6. python中argument函数_PythonStudy——函数的参数 Function argument
  7. 4本数据库新书,大神都在追着看
  8. 为 Analysis Services 数据库使用扩展字段属性(SQL Server 2005 联机丛书(2008 年 11 月))...
  9. 举例让抽象问题具体化:二叉搜索树的后序遍历序列
  10. linux孟庆昌第六章课后题_第六章 参数估计-矩估计:通过课后题理解矩估计
  11. oracle将日期格式化to_char及字符串转日期to_date
  12. [Java] 蓝桥杯ALGO-150 算法训练 6-1 递归求二项式系数值
  13. linux正则表达式脚本实例,Shell下的正则表达式及实例
  14. C# 正则匹配 电话号码 和 座机号
  15. TensorFlow相关的一些技巧
  16. PWM DAC vs. Standalone
  17. 快速了解安卓四大组件
  18. 迪杰斯特拉算法(求最短路径)
  19. MyBatis 大于等于、小于等于的写法
  20. 浅谈“面向接口编程” :依赖反转 IOC 与 DI (容器控制反转与依赖注入)

热门文章

  1. git 为什么不能断点_跟我一起学docker(九)--持续系统集成了解下git
  2. 发一个自己写的抓包软件,支持插件化脚本分析
  3. 索引原理及几种索引类型区别
  4. [Python] 制作启动uiautomator2 的web版 uiautomatorviewer2 批处理启动
  5. SAP 那点事BW HANA
  6. MOTOMAN-SV3X运动学建模验证图
  7. php地址转换成经纬度,百度地图 获取地址转换为经纬度
  8. 巨潮网怎么下载年报_上市公司年报(或财务报表)在哪里下载?
  9. PMP读书笔记(第10章)
  10. JDK源码学习路线~每天学一点~每天进步一点点