【Java面试题-基础知识01】Java数据类型四连问?
一、Java中的基础数据类型有哪些?
Java中的基本数据类型包括:
1. byte:8位有符号整数,范围为-128到127。
2. short:16位有符号整数,范围为-32768到32767。
3. int:32位有符号整数,范围为-2147483648到2147483647。
4. long:64位有符号整数,范围为-9223372036854775808到9223372036854775807。
5. float:32位浮点数,范围为3.402823e+38到1.40239846e-45。
6. double:64位浮点数,范围为1.7976931348623157e+308到4.9406564584124654e-324。
7. boolean:表示true或false。
8. char:16位Unicode字符,范围为\u0000到\uFFFF。
二、Java中的基础数据类型包装类型有哪些?
Java中的基本数据类型都有对应的包装类型,用于在需要对象而不是原始类型时使用
1. byte:Byte
2. short:Short
3. int:Integer
4. long:Long
5. float:Float
6. double:Double
7. boolean:Boolean
8. char:Character
三、Java中的基本数据类型和包装类型的区别和联系
1. 数据类型:
a、基本数据类型是原始数据类型,直接存储数据值,不具备对象的属性和方法。它们在内存中占据固定大小的空间。
b、包装类型是基于对应的基本数据类型创建的类,是对象,具有属性和方法。它们在内存中占据更多的空间,因为除了存储数据值外还要存储对象的额外信息。
2. 存储方式:
a、基本数据类型的值直接存储在堆栈(Stack)内存中。
b、包装类型的对象存储在堆(Heap)内存中,而引用(Reference)存储在堆栈内存中。
3. 性能:
a、基本数据类型的操作通常比包装类型更高效,因为它们不涉及对象的创建和销毁,直接操作数据值。
b、包装类型的操作可能会产生性能开销,因为涉及对象的创建和销毁,以及额外的内存空间开销。
4. 空值处理:
a、基本数据类型不支持null值。
b、包装类型可以为null,因为它们是对象。
5. 使用场景:
a、在需要存储单个简单值或进行简单算术运算时,通常使用基本数据类型。
b、在需要将数据值作为对象处理,或者需要使用对象的属性和方法时,可以使用包装类型。
四、Java拆箱和装箱如何理解?
Java中的拆箱(Unboxing)和装箱(Boxing)是与基本数据类型和对应的包装类相关的概念。
装箱是指将基本数据类型转换为对应的包装类对象,而拆箱则是将包装类对象转换为基本数据类型。
int num = 10;
Integer integerObject = Integer.valueOf(num); // 手动装箱 Integer integerObject = 20;
int num = integerObject.intValue(); // 手动拆箱 Integer integerObject = 30; // 自动装箱
int num = integerObject; // 自动拆箱
【Java面试题-基础知识01】Java数据类型四连问?的更多相关文章
- Java面试题-基础知识
参考文章:Java面试题-基础知识 基础能力 什么是值传递和引用传递 线程状态有哪些,它们之间是如何转换的 进程与线程的区别,进程间如何通讯,线程间如何通讯? HashMap的数据结构是什么?如何实现 ...
- 漫漫Java路1—基础知识—初涉java
前言 主学信息安全,在编程的路上还是一个孩子,还在一步一步探索,有些东西可能是站在自己的位置思考的,很可能会出现一些啼笑皆非的错误,如果有误,还希望各位斧正. Java安装 jdk的安装 甲骨文官网选 ...
- Java面试题基础知识(收集)
1.集合类:list和Set比较,各自的子类比较(Arraylist,Vector,inkedLIst,HashSet,TreeSet) List:存入元素有序,元素可以重复,允许null值得存在,主 ...
- Java并发(基础知识)—— Java中断机制
上文讲解了Java线程的创建.启动以及停止,在讲到停止线程时说到了Java中断,Java中断是停止线程的一种协作机制,本文打算对Java中断机制进行详细讲解. 在网上搜索Java中断机制,发现两篇好文 ...
- 【JAVA】【基础知识】Java程序执行过程
1. Java程序制作过程 使用文本编辑器进行编辑 2. 编译源文件,生成class文件(字节码文件) javac源文件路径. 3.运行程序class文件.
- 【Java面试】基础知识篇
[Java面试]基础知识篇 Java基础知识总结,主要包括数据类型,string类,集合,线程,时间,正则,流,jdk5--8各个版本的新特性,等等.不足的地方,欢迎大家补充.源码分享见个人公告.Ja ...
- 020 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 14 变量与常量 知识总结
020 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 14 变量与常量 知识总结 本文知识点:变量与常量 知识总结 Java中的标识符 Java中的关键字 目前常 ...
- 068 01 Android 零基础入门 01 Java基础语法 08 Java方法 06 参数传递问题——基本数据类型传值
068 01 Android 零基础入门 01 Java基础语法 08 Java方法 06 参数传递问题--基本数据类型传值 本文知识点:参数传递问题--基本数据类型传值 说明:因为时间紧张,本人写博 ...
- 053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结
053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结 本文知识点: 流程控制知识总结 流程控制知识总结 选择结构语句 循环结构语句 ...
- 010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二——变量类型——即Java中的数据类型
010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二--变量类型--即Java中的数据类型 Java中变量的三要素 变量名 变 ...
随机推荐
- 力扣603(MySQL)-连续空余座位(简单)
题目: 几个朋友来到电影院的售票处,准备预约连续空余座位. 你能利用表 cinema ,帮他们写一个查询语句,获取所有空余座位,并将它们按照 seat_id 排序后返回吗? 对于如上样例,你的查询语句 ...
- 让微服务开源更普惠,阿里云微服务引擎MSE全球开服
简介:MSE 于2020年10月在国内开启商业化服务,目前已吸引近万客户使用,用于在云上更低成本构建.更稳定运行微服务架构.此次,MSE 向阿里云国际站开放服务,旨在帮助更多客户享受到更加普惠的微服 ...
- 基于 EventBridge 构建数据库应用集成
简介:本文重点介绍 EventBridge 的新特性:数据库 Sink 事件目标. 作者:赵海 引言 事件总线 EventBridge 是阿里云提供的一款无服务器事件总线服务,支持将阿里云服务.自定 ...
- 知乎的 Flink 数据集成平台建设实践
简介: 本文由知乎技术平台负责人孙晓光分享,主要介绍知乎 Flink 数据集成平台建设实践.内容如下: 1. 业务场景 : 2. 历史设计 : 3. 全面转向 Flink 后的设计 : 4. 未来 F ...
- MaxCompute跨境访问加速解决方案
简介: MaxCompute联合全球加速服务,为有跨境访问需求的MaxCompute客户提供一套高效稳定的跨境访问加速方案. MaxCompute联合全球加速服务,为有跨境访问需求的MaxComput ...
- [Cryptocurrency] (XMR) Monero GUI 连接远程节点 操作方式
Monero 官网下载的钱包,在 高级设置 的节点里支持 "本地节点" 和 "远程节点". 本地节点就是同步区块链数据到本地电脑,安全性高,占用空间大. 远程节 ...
- Photoshop批量替换图层的方法
平时做图片,应该有遇到这样的场景,比如P奖状.P邀请函,内容是一样的,但是图片上的名字是不一样的,要是要P100张的话,一个个手动复制改名字肯定会吐血(╯°□°)╯︵ ┻━┻ Photoshop里有个 ...
- C++ Grammar Focus
一.结构体 1.基础模板 struct Node { <变量类型1> 变量名1; <变量类型2> 变量名2; ... } <定义变量名1>,<定义变量名2&g ...
- [python] 基于PyWaffle库绘制华夫饼图
华夫饼图Waffle chart是一种独特而直观的图表,用于表示分类数据.它采用网格状排列的等大小方格或矩形,每个方格或矩形分配不同的颜色或阴影来表示不同的类别.这种可视化方法有效地传达了每个类别在整 ...
- JWT 构建Rails API 授权登录
目录 安装jwt组件 创建base_controller.rb控制器 配置路由 用户登陆-api接口 验证用户token信息-api接口(*) 参考下面的连接 使用Rails构建JSON-API ht ...