java数据类型陷阱_java学习_3.原生数据类型使用陷阱

2023-11-18

原生数据类型使用陷阱 Pitfall of Primitive Data Type

1. Java中的原生数据类型共有8种:

1) 整型:使用int表示。(32位)

2) 字节型:使用byte表示。(表示-128~127之间的256个整数, 8位)。

3)短整型:使用short表示。(16位)

4)长整型:使用long表示。(64位)

5)单精度浮点型:使用float表示。所谓浮点型,指的就是小数,也叫做实数,比如1.2。

6)双精度浮点型:使用double表示。双精度浮点型表示的数据范围要比单精度浮点型大。

7)字符型:使用char表示(char是character的缩写)。所谓字符,就是单个的字符表示,比如字母a,或者中文张,外面用单引号包围上。比如char a = ‘B’; char b = ‘张’;

8)布尔类型,使用boolean表示。布尔类型只有两种可能值,分别是true与false。

2. Java中的所有浮点类型默认情况下都是double。不能将double类型的值赋给float类型的变量,即便该double类型的值处于float类型的范围内也是不可以的。总之,能否成功赋值取决于等号右边的值类型与等号左边的变量类型是否一致。

float a=1.2//该行代码编译错误。

3. 如何将double类型的值赋给float类型的变量?

答案:(1)强制类型转换,将double类型的值强制转换为float类型。

强制转换的语法: 类型 变量名 = (类型)变量值;

如:float a =(float)1.2;

(2)使用java预言的支持。

float a =1.2f

4. 变量在使用前必须要赋值;变量必须要声明其类型方可使用;变量在使用前必须要定义,并且只能定义一次。

5. 如下代码无法通过编译:

int a = 1;

short b = a;

修改: int a=1;

Short b=(short)a;

a是int类型,b是short类型,int类型表示的数据范围要比short类型大,不能将表示范围大的值赋给表示范围小的变量。

6. 如下代码可以通过编译:

short a = 1;

int b = a;

a是short类型,b是int类型,int类型表示的数据范围要比short类型大,可以将表示范围小的值赋给表示范围大的变量。

7.总结:可以将表示范围小的值赋给表示范围大的变量;但不能直接将表示范围大的值赋给表示范围小的变量,只能通过强制类型转换实现。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java数据类型陷阱_java学习_3.原生数据类型使用陷阱 的相关文章

  • 【操作系统】王道考研 p59-60 减少延迟时间的方法、磁盘的管理

    减少延迟时间的方法 磁盘的管理 以下是减少延迟时间的方法的内容 前情回顾 简而言之 如果要读写逻辑上相邻的盘片会延长时间 因为读写完一个盘片后要处理一段时间 处理完已经转过想要读的下一个盘片了 磁盘地址结构的设计 减少寻道时间的方法 物理地
  • mac上使用IntelliJ IDEA运行项目

    一 Mac OSX系统下安装Tomcat 1 下载Tomcat官方下载地址 2 解压Tomcat到目录 Library 中 并把文件夹名由 apache tomcat 6 0 16 改为 Tomcat 3 打开 应用程序 Applicati
  • vue3 中的 toRefs 是什么? 什么时候用?

    定义 toRefs可以将对象 只能接收rective对象 中的属性变成响应式 正常reactive对象数据也是响应式的 如果用toRefs解构出去会更加方便 什么时候用 数据量如果很多 我们一般会用解构来简化代码 那么在vue3 中如果使用
  • 数字电路的时钟(1)-- 时钟抖动和分类

    时钟抖动通常分为时间间隔误差 Time Interval Error 简称TIE 又叫相位抖动 周期抖动 Period Jitter 和相邻周期抖动 cycle to cycle jitter 三种抖动 TIE又称为phase jitter
  • 华为OD机试 - 生日礼物(Java)

    题目描述 小牛的孩子生日快要到了 他打算给孩子买蛋糕和小礼物 蛋糕和小礼物各买一个 他的预算不超过x元 蛋糕cake和小礼物gift都有多种价位的可供选择 请返回小牛共有多少种购买方案 输入描述 第一行表示cake的单价 以逗号分隔 第二行
  • IDEA类和方法的模板注释

    2 1 修改类注释模板 在File gt Settings gt Editor gt File and Code Templates下分别修改Class Interface Enum等注释模板 Class模板部分修改如下 其余的举一反三进行
  • Java字符串左移右移动

    public class MoveTheKnumber public static void main String args String startStr ABCDEF System out println getKnumber lef
  • python plt 绘图详解(plt.版本)

    文章目录 一 plt介绍 二 安装与导入 三 使用说明 1 使用plt plot与plt show绘制并显示图像 1 曲线颜色 color 简写为 c 2 点型 标记marker 3 线型 linestyle 简写为 ls 4 剩余参数说明
  • 基于matlab轴的优化设计,基于MATLAB的转轴可靠性优化设计

    科 技 天 地 56 INTELLIGENCE 基于 MATLAB 的转轴可靠性优化设计 上海理工大学管理学院 郑 红 摘 要 基于 MATLAB 的可靠性优化设计是应用 MATLAB 软件 在优化设计中将设计参数作为随机变量 以产品的可靠
  • 整理了60个 Python 实战例子,拿来即用!

    人生苦短 我用 Python 大家好 最近有一些朋友问我有没有一些 Python 实战小案例 今天我整理排版了一遍 给大家分享一下 喜欢记得点赞 收藏 关注 整理了60个Python小例子 拿来即用 整理了60个 Python 实战例子 拿
  • Ubuntu系统下安装微信

    安装微信实现截图发送图片功能 1 打开终端输入命令 更新软件源 sudo apt get update 2 输入以下命令 一定注意 O 中间是大写字母O 不是0也不是小写o wget O https deepin wine i m dev
  • verilog之状态机详细解释(二)

    一 有限状态机设计的一般步骤 1 逻辑抽象 得出状态转换图 就是把给出的一个实际逻辑关系表示为时序逻辑函数 可以用状态转换表来描述 也可以用状态转换图来描述 这就需要 分析给定的逻辑问题 确定输入变量 输出变量以及电路的状态数 通常是取原因
  • Effective C++ - Implementations

    前言 实现中需要注意的一些问题 尽可能延后变量的定义 尽量少做转型动作 转型语法 尽量避免使用dynamic cast 避免返回handles指向对象内部成分 为异常安全而努力是值得的 透彻了解inlining的里里外外 将文件间的编译依存
  • LaTex将表格居于文档中间

    导入booktabs包 usepackage booktabs 插入表格处 begin table htbp table环境 中换成h 效果相同 centering 表示居中 begin tabular cc 表示两列 toprule 添加
  • 憨批的语义分割重制版2——语义分割评价指标mIOU的计算

    憨批的语义分割重制版2 语义分割评价指标mIOU的计算 注意事项 学习前言 什么是mIOU mIOU的计算 1 计算混淆矩阵 2 计算IOU 3 计算mIOU 计算miou 注意事项 这是针对重构了的语义分割网络 而不是之前的那个 所以不要
  • Ubuntu 开机时间

    1 查看开机启动时间 systemd analyze blame 2 关闭服务 关闭NetworkManager sudo systemctl disable NetworkManager wait online service 网络管理器
  • VM虚拟机 此主机支持Intel VT-x,但Intel VT-x处于禁用状态”

    其实遇到这个问题 我们只需要进主板BIOS中 开启Intel Virtualization Technology选项即可解决 但是由于主板品牌众多 当然设置大同小异 其实花点时间就可以在BIOS中找到Intel Virtualization
  • Python进阶-----面对对象4.0(面对对象三大特征之--继承)

    目录 前言 Python的继承简介 1 什么是继承 2 继承的好处 3 object类 继承的相关用法 1 继承的定义与法则 2 对继承的重写 3 单继承 多层继承 4 多继承 5 多继承重写时调用父类方法 前言 在讲之前 我想说说中国古代
  • 快乐数

    快乐数 happy number 有以下的特性 在给定的进位制下 该数字所有数位 digits 的平方和 得到的新数再次求所有数位的平方和 如此重复进行 最终结果必为1 中文名 快乐数 外文名 happy number 类型 计算方法 属于

随机推荐

  • 列出某个目录下面所有的文件与目录

    import java io File public class wenjian 遍历该对应对应的数组 public static void main String args File file new File d 某银行新规面资料 if
  • Spring-AOP实践 - 统计访问时间

    公司的项目有的页面超级慢 20s以上 不知道用户会不会疯掉 于是老大说这个页面要性能优化 于是 首先就要搞清楚究竟是哪一步耗时太多 我采用spring aop来统计各个阶段的用时 其中计时器工具为StopWatch 文章结构 遇到的问题 创
  • centos7安装nginx 报./configure: error: C compiler cc is not found

    centos7安装nginx 报 configure error C compiler cc is not found CentOS 7 下 安装 nginx 执行配置命令 configure 时提示以下错误 解决 执行以下命令 yum y
  • php伪随机数

    目录 函数介绍 代码测试 考点 1 根据种子预测随机数 2 根据随机数预测种子 函数介绍 mt srand 播种 Mersenne Twister 随机数生成器 mt rand 生成随机数 简单来说mt srand 通过分发seed种子 然
  • 如何学会像优秀程序员一样思考

    如何学会像优秀程序员一样思考 程序员的思考方式比较有意思 并且这些思考方式有时候表现得很好 这些思考方式其实可以概述下 通常包含如下几个点 一切都只是数据 数据本身没有任何意义 如果有意义那么它必须被解释 编程是关于创建和组合抽象 模型是给
  • 内容管理软件——Obsidian、Zettlr学习笔记(附Typora)

    一 Obsidian 1 官网 Obsidian 2 学习教程 Obsidian 中文论坛 3 使用经验 3 1关于markdown常用格式 标题的格式 标题级数 空格 文本内容 这是一段普通的文本 这是一级标题 这是二级标题 这是三级标题
  • ChatGPT在生态保护和可持续发展中的潜在作用如何?

    ChatGPT在生态保护和可持续发展领域具有潜在的重要作用 生态保护和可持续发展是全球性的挑战 涉及到环境保护 资源管理 气候变化应对 生物多样性保护等多个方面 ChatGPT作为一种人工智能技术 可以在以下几个方面发挥积极作用 1 数据分
  • ELK(六)ElasticSearch快速入门_中文分词

    分词 分词就是指将一个文本转化成一系列单词的过程 也叫文本分析 在ElasticSearch中称之为Analysis 举例 我是中国人 gt 我 是 中国人 分词API 指定分词器进行分词 POST analyze analyzer sta
  • 【深度学习】详解 Swin Transformer (SwinT)

    目录 摘要 一 介绍 二 原理 2 1 整体架构 2 1 1 Architecture 2 1 2 Swin Transformer Block 2 2 基于移位窗口的自注意力 2 2 1 非重叠局部窗口中的自注意力 2 2 2 在连续块中
  • 图像分割必备知识点

    文章转自 微信公众号 机器学习炼丹术 文章转载或者交流联系作者微信 cyx645016617 Unet其实挺简单的 所以今天的文章并不会很长 喜欢的话可以参与文中的讨论 在文章末尾点赞 在看点一下呗 0 概述 语义分割 Semantic S
  • GoogleCast 简介

    Google Cast Function 依赖com android support mediarouter v7com google android gms play services cast frameworkCast 过程1 fra
  • 笔记本电池冲不进电或不存电的修复方法

    不少同学的本本 用不到2年电池就坏掉了不存电 几分钟就一泻千里 成了那啥 哈哈 别想多了 还有的本本因为放的太久了 几个月没充电 发现电池冲不进去电了 这个更糟进不去都 哎 这是怎么回事呢 其实电池并没有那么脆弱 电池电芯都是锂离子的 可千
  • 深度学习 训练吃显卡_深度学习为什么需要显卡计算?

    先解释一点 深度学习为什么需要显卡计算 GPU 是为大规模的并行运算而优化 GPU 上则更多的是运算单元 整数 浮点的乘加单元 特殊运算单元等等 GPU 往往拥有更大带宽的显存 因此在大吞吐量的应用中也会有很好的性能 这里有一个很有趣的解释
  • Java对象的实例化过程

    JAVA new流程 实例化过程 java对象的实例化过程
  • 主成分分析法(三):计算步骤

    主成分分析系列 主成分分析 一 基本思想与主成分估计方法 主成分分析 二 特征值因子的筛选 主成分分析法 三 计算步骤 目录 一 主成分分析简述 二 主成分分析法的步骤 1 对原始数据进行标准化处理 2 计算相关系数矩阵R 3 计算特征值和
  • pip install总是报错:ValueError: Trusted host URL must include a host part: ‘#‘

    一 问题现象 报错信息如下 Traceback most recent call last File user name anaconda3 bin pip line 11 in
  • Matlab求解基于RRT算法的自定义垛型的路径避障

    目录 背景 1 RRT搜索算法 2 基于Matlab的RRT搜索算法 3 基于Matlab的自定义垛型绘制 4 基于RRT算法的自定义垛型的路径避障 背景 在码垛机械臂路径规划过程中 需要根据现有箱子的码垛状态 给出下一个箱子的最佳码放无碰
  • 自定义一个softirq

    本文章添加自己定义一个额外的软中断 首先添加软中断种类 MY SOFTIRQ enum HI SOFTIRQ 0 TIMER SOFTIRQ NET TX SOFTIRQ NET RX SOFTIRQ BLOCK SOFTIRQ BLOCK
  • c语言之-umask()函数

    此函数的主要作用是在创建文件时设置或者屏蔽掉文件的一些权限 一般与open 函数配合使用 umask 设置建立新文件时的权限遮罩 相关函数 creat open 表头文件 sys types h sys stat h 定义函数 mode t
  • java数据类型陷阱_java学习_3.原生数据类型使用陷阱

    原生数据类型使用陷阱 Pitfall of Primitive Data Type 1 Java中的原生数据类型共有8种 1 整型 使用int表示 32位 2 字节型 使用byte表示 表示 128 127之间的256个整数 8位 3 短整