面试必问:说一下基本数据类型之间的转换操作【Java基础篇】

157 篇文章 1 订阅

数据类型分类

Java语言的变量按数据类型分类如下:

 

整数型

byte(1字节=8bit) 、short(2字节) 、 int(4字节) 、 long(8字节)

① byte范围:-128 ~ 127
② 声明long型变量,必须以"l"或"L"结尾
③ 通常,定义整型变量时,使用int型。
④ 整型的常量,默认类型是:int型

浮点型

float(4字节) 、 double(8字节)

① 浮点型,表示带小数点的数值
② float表示数值的范围比long还大
③ 定义float类型变量时,变量要以"f"或"F"结尾
④ 通常,定义浮点型变量时,使用double型。
⑤ 浮点型的常量,默认类型为:double

浮点数在计算机底层的存储,会丢失精度,所得出的数是一个无限接近于真值的数。如果希望提高精确度,可以用BigDecimal类。

字符串型

char (1字符=2字节)

① 定义char型变量,通常使用一对’’,内部只能写一个字符
② 表示方式:1.声明一个字符 2.转义字符 3.直接使用 Unicode 值来表示字符型常量。

编码表:

① ASCII码表:只能表示128个字符,单字节编码表  a-z(97-123)  \    A-Z  (65-91) \    0-9
② unicode码表,可以表示所有的符号,固定双字节编码表
③ utf-8码表,可以表示所有的符号,可变字节长度编码表。一个英文字母,占1个字节;一个汉字,占3个字节。
④ GBK码表,可以表示中文,但不能表示世界上所有符号。一个英文字母,占1个字节,一个汉字,占2个字节

布尔型

boolean

① 只能取两个值之一:true 、 false
② 常常在条件判断、循环结构中使用

基础类型之间的转换

自动类型转换:容量小的类型自动转换成为容量大的数据类型,数据类型按容量大小排序为:

有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行运算。

byte、short、char之间不会互相转换,它们三者在计算时首先转换成int类型。

即声明为b+c的和时,m必须是int类型。

当任何基础数据类型的值和字符串值进行连接运算时(+),基础数据类型的值将自动转换为字符串类型。

 输出结果为hello1,任何被双引号括起来的就是字符串类型。

 

当需要将大容量的基础数据类型转换成小容量的数据类型时,需要进行强制转换,使用强转符(),但请注意:强制类型转换,可能导致精度丢失。

 

强转只对就近的起作用。

byte a = (byte)3.5 * 10 + 2.5 * 20; //依旧编译出错   

更改为:byte a = (byte)(3.5 * 10 + 2.5 * 20);  //编译正确

通常,字符串类型不能直接转换成基础类型,但通过基础类型对应的包装类则可以将字符串转换成基础类型。

 

字符串转为基本类型需要注意的是:

① 字符串里面的值必须是可以转换成其它的基础类型的。
② String类不能转换为char。
③ 转为boolean,只要是非true的值,结果都是false。

布尔类型不可以转换成其它的基础数据类型

 


我相信现在要找工作的小伙伴很多,而且是面试了很多家都没有找到心仪的就或者说是没有面上的。不过,大家不要灰心,想去的公司没有面上也没关系,因为现在属于是正常现象,现在的互联网对于面试的要求都比较高了。按照你现在拥有的技术和你所背的面试题,是完全不够应付面试官了。所以,大家在面试之前,应该要先巩固自己的知识点,面试必会问道的知识点等。

我最近也整理了一些小伙伴们发给我的面试题以及我的一些最新的面试等学习资料,有需要的小伙伴可以找我领取下。或者点击《2023最新Java后端全套VIP面试学习资源》直接获取以下Java后端架构VIP进阶学习面试资料。

资料里面包含了:Java基础、MySQL、jvm、分布式、性能优化、spring 、spring boot、spring cloud、 MyBatis、Netty源码分析、算法、乙级高并发、Redis、dubbo、Tomcat、集合框架、锁、MQ、百万简历模板等等学习视频资料。

资料如图展示:(知识其中一部分)

同时也欢迎大家关注公众号【Java烂猪皮】,回复【666】,获取最新Java后端架构VIP学习资料以及视频学习教程,然后一起学习,一文在手,面试我有。

公众号【Java烂猪皮】里面每天都会分享很多独家的干货内容,比如:Java后端学习路线,分享实战项目,源码分析,百万级系统设计,系统上线的一些坑,MQ专题,真实面试题,每天都会回答大家提出的问题。

每一个专栏都是大家非常关心,和非常有价值的话题,我相信在专栏中你会学到很多东西,一起共勉。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Java语言程序设计与数据结构(基础)是一本介绍Java编程语言和数据结构基础知识的教材。本书主要包括Java语言基础、面向对象编程数据结构、算法设计等方面的内容。通过学习本书,读者可以掌握Java编程语言的基本语法和面向对象编程的思想,了解常用的数据结构和算法设计方法,并能够运用所学知识进行程序设计和开发。本书适合初学者和有一定编程基础的读者阅读。 ### 回答2: Java语言程序设计与数据结构(基础)是一门综合性的课程,旨在培养学生对Java语言的理解与应用能力,同时深入了解和掌握数据结构的基本概念和操作。 在这门课程中,学生将学习Java编程语言的基本语法和面向对象编程的思想,包括类、对象、继承、封装等概念。通过实际编程练习,学生将掌握Java编程的基本技巧和方法。 除了Java语言的基础知识,这门课程还会涉及数据结构的相关内容。学生将学习常见的数据结构,如线性表、栈、队列和树等,以及它们的特点和操作。同时,学生还将学习数据结构的算法和性能分析方法,了解不同数据结构之间的比较和选择。 在学习过程中,学生需要通过编写实际的Java程序,加深对所学知识的理解和应用。通过实践,学生将逐步掌握如何设计和实现数据结构的相关算法,以及如何利用这些数据结构解决实际问题。 总之,Java语言程序设计与数据结构(基础)是一门重要的课程,它为学生打下了良好的编程基础,培养了学生的编程思维和数据处理能力。在这门课程的学习中,学生将获得扎实的Java编程数据结构的相关知识,为进一步深入学习和应用打下坚实的基础。 ### 回答3: Java语言程序设计与数据结构(基础)是一门关于Java编程语言和基本数据结构的课程。在这门课程中,学生将学习如何使用Java语言来编写程序,并了解不同的数据结构以及如何在Java中实现它们。 在这门课程中,学生将学习Java的基本语法、控制流程和面向对象编程的概念。他们将学习如何定义类和对象,并实现封装、继承和多态等面向对象的特性。学生还将研究Java中的异常处理机制,并学习如何编写可重用的代码。 此外,在这门课程中,学生还将学习基本的数据结构,如数组、链表、栈和队列。他们将学习如何使用这些数据结构来解决实际问题,并学习如何分析算法的时间和空间复杂度。学生还将学习如何使用递归来解决问题,并研究常见的排序和搜索算法。 通过学习这门课程,学生将建立起良好的编程基础,并能够使用Java语言来解决实际问题。他们将学习如何设计和实现高效的算法,并理解数据结构在计算机科学中的重要性。这些知识将对他们今后的学习和职业生涯产生积极的影响。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值