栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java学习Day3 数据类型的扩展

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java学习Day3 数据类型的扩展

一、整数型扩展

整数型扩展无非包含4种进制:二进制、十进制、八进制和十六进制。

在Java语言中 二进制在数字开头加0b表示,八进制在数字开头加0表示,十六进制在数字开头加0x表示。如图:

输出结果如下:

 其中,十六进制用0-9,A-F表示。

二、浮点数扩展

先看一个例子:

 

f1和f2都是等于0.1

其中f1==f2是判断f1和f2是否相等,输出结果为fasle。

原因是因为浮点数类型能表现的字长数是有限的,离散的,浮点数中一般都会存在一种叫做舍入误差的东西,即没法精确的表示一个数,大约,接近但不等于的意思。所以说,

最好完全避免使用浮点数进行比较!

最好完全避免使用浮点数进行比较!

最好完全避免使用浮点数进行比较!(重要的事情说三遍!)

再看一个例子:

输出结果为:true!

 原因是f3和f4都被浮点数类型舍入误差了,所以是相等的。(一看简洁明了)

  还有一个问题就是,既然浮点数无法进行比较,那么我们平时银行业务,即钱怎么在java中进行表示?这就涉及到了BigDecimal,这是一个数字工具类,后面会学到的。

三、字符类型扩展:

再看一个例子:

输出结果为

哟,当我把字符串类型转化为整数类型时,他还真的输出了一个数字,为什么呢?

首先,要知道。字符串的的本质还是数字,这就涉及到了Unicode编码问题 它占两个字节有0-2的16次方即65536个字符串,他是有涉及到一个表的。每个字符都有对应他的数字,例如a=97,A=65等。

这是unicode详解:彻底弄懂 Unicode 编码 - 简书 (jianshu.com)

这是其他博主整理的编码表:(1条消息) UniCode编码表_俊墨客的博客-CSDN博客_unicode编码https://blog.csdn.net/tgvincent/article/details/93884725

感谢两位大佬。

字符串扩展(二)转义符

上图:

 举个栗子:

输出结果为:

 

最后,留个悬念:

 一个true 一个flase,why?

后面要来回答:(链接放这)

 

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/884374.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号