【Java篇】备战面试——你真的了解“基本数据类型”吗?

news2025/8/12 10:15:27

目录

基本介绍:        

整数类型

浮点类型 

布尔类型和char类型

 自动类型转换

 数据类型转换必须满足如下规则:


基本介绍:        

        Java是一门强类型语言,这就意味着必须为每一个变量声明一种类型。Java为我们提供了八种基本类型(primitive type),其中又分为4种整数类型2种浮点类型1种字符类型char

整数类型

基本数据类型字节数默认值范围包装数据类型
byte10-2^7—2^7-1Byte
short20-2^15—2^15-1Short
int40-2^31—2^31-1Integer
long80-2^63—2^63-1Long

 当我们在给long类型赋值时,如果常量超出int类型的表示范围,就需要在数字后面加上后缀L或l,像下面这样就会报错;

 之所以要加L或l,是因为数字常量默认为int类型,而上面这个数字很明显已经超出int范围了;

浮点类型 

基本数据类型字节数默认值包装数据类型备注
float40.0fFloat数字后加f
double80.0dDouble

 其中double类型的数值精度是float类型的两倍,所以也被称为双精度类型

值得注意的是:float类型的数值后面有一个后缀F或f (例如3.14F) ,如果没有后缀的情况下3.14会被默认为double类型,你也可以写成3.14D或3.14d;但是如果你写成下面这样就会报错;

浮点型(float/double) 用来表示浮点数据,实际以指数形式存储,所以和实际值之间有偏差。

1,为 float 类型赋值必须在数字后加 f,否则数字默认被识别为 double 类型,会导致赋值出错。

2,数字基本类型都包含最大最小值常量,如 Integer.MAX_VALUE 和 Integer.MIN_VALUE .

3,在浮点型有三个特殊数值表示溢出和出错:

    POSITIVE_INFINITY :正无穷大,正数除以 0 可以得到。

    NEGATIVE_INFINITY :负无穷大,负数除以 0 可以得到。

    NaN :非数,零除以 0 可以得到。(两个 NAN 值也不相等) 

布尔类型和char类型

基本数据类型字节数默认值包装数据类型备注
char2'\u0000‘(或0)Character必须用单引号
boolean1falseBoolean

 自动类型转换

整型、实型(常量)、字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算。

转换从低级到高级。

 数据类型转换必须满足如下规则:

  • 1. 不能对boolean类型进行类型转换。

  • 2. 不能把对象类型转换成不相关类的对象。

  • 3. 在把容量大的类型转换为容量小的类型时必须使用强制类型转换。

  • 4. 转换过程中可能导致溢出或损失精度,例如:

    int i =128;   
    byte b = (byte)i;

    因为 byte 类型是 8 位,最大值为127,所以当 int 强制转换为 byte 类型时,值 128 时候就会导致溢出。

  • 5. 浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入,例如:

(int)27.9 == 27;        
(int)-45.89f == -45

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/15151.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[附源码]计算机毕业设计JAVA归元种子销售管理系统

[附源码]计算机毕业设计JAVA归元种子销售管理系统 项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM my…

【毕业设计】大数据分析的航空公司客户价值分析 - python

文章目录0 前言1 数据分析背景2 分析策略2.1 航空公司客户价值分析的LRFMC模型2.2 数据2.3 分析模型3 开始分析3.1 数据预处理3.1.1 数据预览3.1.2 数据清洗3.2 变量构建3.3 建模分析4 数据分析结论4.1 整体结论4.2 重要保持客户4.3 重要挽留客户4.4 一般客户与低价值客户5 最后…

Cadence Allegro PCB设计88问解析(十七) 之 Allegro中焊盘的全连接和花焊盘

一个学习信号完整性仿真的layout工程师 上一篇文章和大家分享了关于铜皮shape的一些基本操作。我们进行铺铜是为了连接网络(焊盘、过孔等),一般都是GND或者电源网络。Shape和走线还是不一样的,走线直接从焊盘或者过孔等直接拉出一根layout,但…

【MySQL数据库笔记 - 进阶篇】(三)SQL优化

✍个人博客:https://blog.csdn.net/Newin2020?spm1011.2415.3001.5343 📚专栏地址:暂定 📝视频地址:黑马程序员 MySQL数据库入门到精通 📣专栏定位:这个专栏我将会整理 B 站黑马程序员的 MySQL…

LeetCode[剑指Offer54]二叉搜索树的第K大节点

难度:简单 题目: 给定一棵二叉搜索树,请找出其中第 k 大的节点的值。 示例 1: 输入: root [3,1,4,null,2], k 13/ \1 4\2 输出: 4 示例 2: 输入: root [5,3,6,2,4,null,null,1], k 35/ \3 6/ \2 4/1 输出: 4 限制: …

[附源码]java毕业设计旅游网站

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

Nodejs编写接口

编写接口 1.自定义路由模块 const expressrequire(express) const routerexpress.Router()// 挂载对应的路由 router.get(/get,(req,res)>{// 通过req.query获取客户端通过查询字符串,发送到服务器的数据const queryreq.query// 调用res.send()方法&#xff0c…

集成学习-Bagging和Boosting算法

文章目录集成学习Bagging随机森林BostingAdaboostGBDTXGBoost集成学习 集成学习(ensemble learning)博采众家之长,通过构建并结合多个学习器来完成学习任务。“三个臭皮匠顶个诸葛亮”,一个学习器(分类器、回归器&…

【微服务】SpringCloud微服务续约源码解析

目录 一、前言 二、客户端续约 1、入口 1.1、构造初始化 1.2、initScheduledTasks() 调度执行心跳任务 2、TimedSupervisorTask组件 2.1、构造初始化 2.2、TimedSupervisorTask#run()任务逻辑 3、心跳任务 3.1、HeartbeatThread私有内部类 3.2、发送心跳 3、发送心…

使用OpenAPI提升网关安全的开源软件,诚邀小伙伴参与

看过我博客的人都知道,我们是一家推广OpenAPI的企业。 OpenAPI是一种用于定义API结构的规范,在Java里我们可以使用swagger进行自动生成。其他语言也可以(Golang等)。通过这种对开发人员零成本的工具,我们可以高效的获…

典型的偏微分方程数值解法

马上要参加亚太杯啦,听说今年亚太杯有经典的物理题,没什么好说的,盘它! 偏微分方程的数值解十分重要 椭圆型偏微分方程(不含时) 数值解法 二维拉普拉斯方程 例 边界条件 import numpy as np import mat…

教你如何使用云服务器搭建我的世界Minecraft服务器(超级简单-10分钟完成)

一个人玩游戏没啥意思,和朋友一块联机呢,距离太远,家庭局域网宽带又没有公网ip,你的朋友没办法与你联机,然而你只需要一台服务器即可搞定了;但是很多用户没没接触过相关的内容,具体的该怎么操作…

怎样做音乐相册怎样制作?手把手教你制作

大家平时出门游玩的时候,会拍摄一些好看的照片吗?那你们会将这些照片分享在社交平台上吗?普通的照片分享,有时会显得比较枯燥单调,其实我们可以将这些照片制作成音乐相册,这样就可以丰富照片的内容&#xf…

传输层-用户数据报协议(UDP)

UDP协议概述 用户数据报协议 UDP 是 Internet 传输层协议,提供无连接、不可靠、数据报尽力传输服务。 无连接:因此在支持两个进程间通信时,没有握手过程。不可靠:当应用进程将一个报文发送近 UDP 套接字时,UDP 并不能…

python+vue+elementui固定资产管理系统django mysql

目 录 摘 要 I ABSTRACT I 目 录 III 第1章 绪论 1 1.1开发背景 1 1.2开发意义 1 1.3研究内容 1 第2章 主要技术和工具介绍 3 前端技术:nodejsvueelementui 我们最初的项目结构由五个文件组成: manage.py:使用…

为什么管理类硕士(MBA/MEM/MPA)报考会成为职场人的香饽饽?

没个硕士学位,将来出门可能真的都不好意思打招呼了。近些天传言2023年考研人数达到接近550万的信息满天飞,无论真假,从目前已公布报考人数的院校来看,在去年的457万基础上再涨一波的几率是很大的。这其中,报考管理类、…

电科大离散数学-2-命题逻辑-1

目录 2.1 什么是命题 2.1.1 命题的定义 2.1.2 复合命题 2.2 命题联结词 2.2.1 否定联结词 2.2.2 合取联结词 2.2.3 析取联结词 2.2.4 蕴涵联结词 2.2.5 等价联结词 2.3 命题符号化及应用 2.3.1 命题连接词总结 2.3.2 命题联结词的优先级 2.3.3 命题联接词与开关电…

scala

Scala 概述 Scala是一门以Java虚拟机(JVM)为运行环境并将面向对象和函数式编程的最佳特性结合在一起的 静态类型编程语言(静态语言需要提前编译的如:Java、c、c等,动态语言如:js)。 Scala是一…

4-20mA转RS-485,Modbus数据采集模块 YL121

特点: ● 模拟信号采集,隔离转换 RS-485输出 ● 采用12位AD转换器,测量精度优于0.1% ● 通过RS-485接口可以程控校准模块精度 ● 信号输入 / 输出之间隔离耐压1000VDC ● 宽电源供电范围:8 ~ 32VDC ● 可靠性高,…

equals与==判断相等

一、 判断相等,判断的是物理地址相等。 二、equals 判断相等 equals 与hashCode 都是Object的方法。 所有的类都继承于Object,如果不重写equals。equals判断相等,底层也是使用来判断物理地址相等。 public boolean equals(Object obj) {re…