基本数据类型(8个)

1.整数类型(4个)

  字节个数 取值范围
byte(字节) 1(8位) -2^7~2^7-1
short(短整型) 2(16位) -2^15~2^15-1
int(整形) 4(32位) -2^31~2^31-1
long(长整形) 8(64位) -2^63~2^63-1

2.浮点类型(2个)

  名称 字节 精度问题
float 单精度浮点类型 4 保留8位小数点
double 双精度浮点类型 8 保留16位小数

2.1 float与double精度丢失问题

float与double运算时将十进制转为二进制,整数永远可以用二进制精确的表示,但小数就不一定,小数的二进制有时候是不可能准确的,有时候会无限算下去,所以在银行里不能使用float与double。

(解决精度丢失问题(BigDecimal))

3.布尔类型(1个)

boolean的值只有两个 true 和 false,在8种简单类型中除了boolean类型,其他的数据类型可以自动转换成其他类型,例: 自动类型转换 (小 -> 大)

byte -> int          char -> int

强制类型转换 (大 -> 小)

int -> char          double -> long

4.下面有鄙人珍藏多年的几道数据类型面试题(☆)

1、short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 +=1;有什么错?

答: 前面表达式有错误,s1+1中1是int类型,右边的结果为int int赋值给s1,s1为short,需要强制类型转换 s1 = (short)(s1+1); 后面的表达式没有错误,因为+=这种扩展赋值运算符会自动类型转换。

2、char类型变量能不能储存一个中文的汉子,为什么?

答: char是2个字节16位,所以可以使用unicode编码表示 只要是在unicode编码中文范围的汉字都可以存储4E00-9FA5 但是也有特殊情况生僻字不能存储。

3、Integer和int的区别

答: int 基本数据类型,只能用于算术运算,位运算 Integer引用数据类型,类提供很多方法去便捷操作一些int值 例如:10进制数转2进制数的方法。

4、能否在不进行强制转换的情况下将一个 double 值赋值给 long 类型的变量?

答:不可以,虽然double 和 long 都是8个字节(64位),但是底层的存储 结构不一样,double表示的范围 > long表示的范围 所以把double值赋值给long需要强制类型转换。

5、java 中 3*0.1 == 0.3 将会返回什么?true 还是 false?

答:java中float和double,在做运算的时候,会有精度丢失 所以这个表达式的值为false。

6、java 中 float f = 3.4; 是否正确?

答:3.4默认为double类型,若需要强制将3.4赋值给float需要强制类型转换 也有其他解决方案。 解决方案1: 3.4后面添加小f或者大F float f = 3.4F; 解决方案2: 变量f的数据类型,改为 double double f=              3.4; 解决方案3: 使用造型符号,强制类型转换 float f = (float) 3.4。

JAVA的8种基本数据类型分析的更多相关文章

  1. Java的8种基本数据类型

    待整理主题:Java的8种基本数据类型与对应封装类型.拆箱.装箱 =================================================================== ...

  2. Java的八种基本数据类型及其包装类

    Java有八种基本数据类型,所谓基本类型就是说存储时仅存在栈中,那么与之相对就是引用类型,引用类型既存在栈里又存在堆里,栈内存放堆内地址. 八种基本类型分别为byte short int long f ...

  3. Java学习笔记四:Java的八种基本数据类型

    Java的八种基本数据类型 Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型. Java基本类型共有八种,基本类型可以分为三类,字符类型char,布 ...

  4. Java的9种基本数据类型以及封装类

    Java的9种基本数据类型以及封装类 基本类型 大小(单位/字节) 默认值 封装类 byte 1 (byte)0 Byte short 2 (short)0 Short int 4 0 Integer ...

  5. Java中几种常用数据类型之间转换的方法

    Java中几种常用的数据类型之间转换方法: 1. short-->int 转换 exp: short shortvar=0; int intvar=0; shortvar= (short) in ...

  6. java中八种基本数据类型以及它们的封装类,String类型的一些理解

    在我们面试或者考试过程中经常会考到八种基本数据类型以及它们的封装类,那么有哪八种基本数据类型呢?它们的封装类又是什么呢? 首先,八种基本数据类型分别是:int.short.float.double.l ...

  7. java 基础--8 种基本数据类型:整型、浮点型、布尔型、字符型 整型中 byte、short、int、long 的取值范围 什么是浮点型?什么是单精度和双精度?为什么不能用浮点型表示金额?

     一.8种基本数据类型(4整,2浮,1符,1布): 整型:byte(最小的数据类型).short(短整型).int(整型).long(长整型): 浮点型:float(浮点型).double(双精度浮点 ...

  8. JAVA的8种基本数据类型和类型转换

    byte 字节型                        1字节(8bit) 初始值:0 char 字符型 2字节 空格 short 短整型 2字节 0 int 整形    4字节 0 long ...

  9. Java - day001 - 8种基本数据类型

    一字节8电位 Java byte 最左边一位表示正负,0是正,1是负. (option / alt)  + / 代码提示 Refactor 重构 Rename 重命名  (windows 重命名是选中 ...

随机推荐

  1. kubernetes pod内抓包,telnet检查网络连接的几种方式

    背景 在日常kubernetes的运维中,经常遇到pod的网络问题,如pod间网络不通,或者端口不通,更复杂的,需要在容器里面抓包分析才能定位.而kubertnets的场景,pod使用的镜像一般都是尽 ...

  2. opencl(4)命令队列

    1:创建命令队列 cl_command _queue  clCreateCommandQueue( cl_context context,   //上下文 cl_device_id device,   ...

  3. Dubbo+Zookeeper集群案例

    一.开源分布式服务框架 1.Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以Spring框架无缝集成.    Dubbo是一款高性 ...

  4. SpringBoot爬坑系列

    1.日志篇 现象 由于日志配置采用原来SpringMVC项目中的log4j.properties 文件,日志采用springboot自带的jar包会出现打印不出日志的情况. 解决 引入原日志包 < ...

  5. 【大厂面试07期】说一说你对synchronized锁的理解?

    synchronized锁的原理也是大厂面试中经常会涉及的问题,本文主要通过对以下问题进行分析讲解,来帮助大家理解synchronized锁的原理. 1.synchronized锁是什么?锁的对象是什 ...

  6. JS基础知识笔记

    2020-04-15 JS基础知识笔记 // new Boolean()传入的值与if判断一样 var test=new Boolean(); console.log(test); // false ...

  7. windows 定时删除N天前日志脚本

    删除目录/P 表示目录/S 表示递归向下查询子目录/D 表示date -460 意思是460天以前 或者 -2018/11/9 表示这个日期以前的/C 开始执行命令 内部还有一个cmd @ISDIR= ...

  8. C# Winform界面不能适配高DPI的解决方法

    1. 将 Form 的 AutoScaleMode 属性设置为 DPI: 2. 在Program.cs中修改代码 class Program { [STAThread] static void Mai ...

  9. 面向对象存储框架:Obase快速入门

    在项目中完成对象建模后,可以使用Obase来进行对象的管理(例如对象持久化),本篇教程将创建一个.NET Core控制台应用,来展示Obase的配置和对象的增删改查操作.本篇教程旨在指引简单入门. 本 ...

  10. 【JMeter_05】创建第一个简单的接口脚本

    聚合数据:提供了很多开放的API,可以去练习使用https://www.juhe.cn/ 如果有小伙伴对HTTP协议不是很了解,可以看下这里 http://home.ustc.edu.cn/~xie1 ...