Java基本类型

Java语言内置了8个基本类型,是无需开发人员手动创建的。同时,这8个基本类型能够解释所有java对象(即所有java对象的属性是基于这些类型构建的)。

boolean,布尔值,1位,仅有true和false两个值,做是否判断,反映到整型上为1和0。对应封装类Boolean。

byte,字节,8位,取值-128 ~ 127,用途最广泛,可用于解释文件。对应封装类Byte。

char,字符,16位,可与int型做切换。对应封装类Character。

short,整型,16位,取值-32768 ~ 32767。对应封装类Short。

int,整型,32位,取值

。对应封装类Integer。

long,整型,64位,取值

。对应封装类Long。

float,浮点数,32位。对应封装类Float。

double,浮点数,64位。对应封装类Double。

以上是java内置的基本类型,同时有些点需要了解。

float与double不能用于需要精确精度的对象,比如货币,因为java的定义中,float与double是存在一个精度扩展上限的,若需要做精度运算,使用java提供的大数计算包java.math.BigDecimal做浮点数高精度运算。在java语言规范中对浮点数的定义,提供了精度扩展表。浮点数精度表

long同样存在精度上限问题,对于超过上限的计算需要使用java提供的大数计算包java.math.BigInteger。

double/long为64位的基本类型,在并发场景下还存在同步问题,由于java对64位的计算是分为高低位(高位32位,低位32位)分开运算再组合的方式,那么在并发场景中,对double/long的读取可能会有计算未完成就读取到了值的情况。

封装类型提供了基本类型常用的方法,比如类型转换,切换为二进制表达等。

String的特别意义

String不属于java基本类型,是java定义的实现类,声明为final。但String是工作中最为常用的对象类型。

String是char的数组,通过源码可以了解到String被声明为final,意味着该类不可继承,且声明的任何实例对象会作为常量存在(进入常量池而非堆),实现了Serializable,Comparable,CharSequence接口,因此可以被序列化,用于比较,以及作为字符数组的基础操作。

java standard_Java Standard - Primary Type相关推荐

  1. [Java基础]Scanner的使用(秋招在线笔试高频使用)版本:Java™ Platform Standard Ed. 8...

    本节目讨论的Scanner为Java™ Platform Standard Ed. 8版本,请来自未来的Java同胞确认自己所处的Java版本时间线,未来的Scanner说不定已经改变了很多 最近参加 ...

  2. (转)java.lang.RuntimeException: Missing type parameter

    java.lang.RuntimeException: Missing type parameter (2015-04-07 14:35:51)   分类: 技术 程序中用到了gson的new typ ...

  3. java.io.StreamCorruptedException: invalid type code: AC解决办法

    .java.io.StreamCorruptedException: invalid type code: AC解决办法 问题描述: 在向一个文件写入可序列化对象时,每次只想向文件的末尾添加一个可序列 ...

  4. Java Platform Standard Edition 8 Documentation

    下面这个图挺有用的,收藏一下. Oracle has two products that implement Java Platform Standard Edition (Java SE) 8: J ...

  5. java.io.StreamCorruptedException: invalid type code: AC错误的解决方法

    问题描述: 在向一个文件写入可序列化对象时,每次只想向文件的末尾添加一个可序列化的对象,于是使用了FileOutputStream(文件名,true)间接的构建了ObjectOutputStream流 ...

  6. inferred type_您最终可以使用var在Java中声明Inferred Type局部变量-这就是为什么它很棒...

    inferred type by javinpaul 由javinpaul 您最终可以使用var在Java中声明Inferred Type局部变量-这就是为什么它很棒 (You can finally ...

  7. dbz用connector入hana报错Invalid Java object for schema type INT64: class java.util.Long for field “null“

    最近需要将用户的mysql数据实时导入到hana中. 方案一为:mysql-cdc---->debezium-source-connector---->kafka----->debe ...

  8. java.lang.IllegalArgumentException: argument type mismatch

    问题: 19-Apr-2022 11:08:37.371 信息 [http-nio-8080-exec-5] com.alibaba.druid.pool.DruidDataSource.info { ...

  9. 解决 No converter found capable of converting from type [java.lang.String] to type ... 的问题

    目录 问题 分析问题 解决问题 问题 今天在项目启动类SuperJsonManagerApplication中,加上这行代码@MapperScan("com.**.mapper") ...

最新文章

  1. createinstance.java_C# Activator.CreateInstance()方法使用
  2. mybatis.xml文件
  3. LeetCode 712. 两个字符串的最小ASCII删除和(DP,类似编辑距离)
  4. 由mysql将视图数据导入Spss,发现别名字段数据不准确
  5. 顺骐名车汽车服务器中心,骐风k7电动汽车怎么样?骐风k7电动汽车介绍
  6. 在哪里学python-python在哪学
  7. 【笔记】高效率但却没用过的一些numpy函数
  8. html判断图片资源是否存在,javascript怎么判断图片是否存在?
  9. 挑战性题目DSCT601:背包问题
  10. 赠书 | 程序员学数学和算法基础畅销书单
  11. 计算机语言学方面的期刊.,自然语言处理投稿哪些sci期刊
  12. 如何关闭Windows自动更新
  13. No resource found that matches the given name 'Theme.AppCompat.Light 的完美解决方案
  14. 什么叫诚实_诚信是什么
  15. 读书笔记 | 牧羊少年奇幻之旅
  16. 深圳打卡(四) 红树林与深圳湾公园
  17. ASP.NET程序员常用的85个工具
  18. Idea集成SVN报错:Error:‘C:\Program‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件。
  19. 游戏服务器 linux windows,游戏服务器用windows还是linux的系统好?
  20. java se7 与6_2017初学java是选java se7还是java se8好?

热门文章

  1. element UI表格绑定动态数据与selection复选操作
  2. 异地多活数据同步平台
  3. python相比于excel的优势_使用Excel和python来做回归分析
  4. Windows8用起来好别扭
  5. react ref无法获取被高阶组件包装的原始组件问题
  6. 不知名的时代巨人-中本聪
  7. 理论联系实践:机械臂视觉抓取之eye to hand
  8. phpems 修改模板_PHPEMS6.0bug及修复方法
  9. 学计算机的能做近视手术吗,生活工作常接触电脑,可以做近视手术吗?
  10. ABAP 代码编辑器-自定义模式-注释模板