Java面试之数据类型

server/2024/10/18 16:49:35/

在Java中,数据类型用于声明变量并指定变量能够存储的数据类型。Java的数据类型可以分为两大类:基本数据类型和引用数据类型。

一、基本数据类型

1.1、整型:用于表示整数值,包括byte、short、int和long。

  • byte:8位,范围为-128到127。
  • short:16位,范围为-32768到32767。
  • int:32位,范围为-2147483648到2147483647。
  • long:64位,范围为-9223372036854775808到9223372036854775807。

1.2、浮点型:用于表示带有小数部分的数值,包括float和double。

  • float:32位,单精度浮点数。
  • double:64位,双精度浮点数。

1.3、字符型:用于表示单个字符,char类型,16位Unicode字符。

1.4、布尔型:用于表示布尔值,只能取true或false。(注意Java中的关系运算和流程控制语句的运算结果必须是Boolean型)

二、引用数据类型

2.1、类:表示对象的类型。

2.2、接口:表示一组方法的规范。

2.3、数组:表示一组相同类型的数据集合。

2.4、其他引用数据类型:如字符串、日期等。

三、基本数据类型和引用数据类型在Java中有几个重要区别:

基本数据类型直接存储值,引用数据类型存储的是对象的引用,这导致了它们在内存分配、比较和传递等方面有不同的行为。

3.1、存储方式

  • 基本数据类型的变量直接存储的是值本身,它们被存储在栈(stack)内存中。
  • 引用数据类型的变量存储的是对象的引用(内存地址),而不是对象本身的值。对象本身存储在堆(heap)内存中,而引用变量存储的是指向堆内存地址的指针。

3.2、内存分配

  • 基本数据类型的内存分配是固定大小的,不受数据内容的影响。
  • 引用数据类型的内存分配是动态的,根据对象的大小来分配堆内存空间,且可以随着对象的大小变化而变化。

3.3、比较方式

  • 基本数据类型的比较是直接比较它们的值。
  • 引用数据类型的比较是比较它们的引用地址,而不是对象的内容。如果两个引用变量指向的是同一个对象,则它们被认为是相等的。

3.4、传递方式

  • 基本数据类型的传递是按值传递,即传递的是值的副本。
  • 引用数据类型的传递是按引用传递,即传递的是对象的引用,对对象的修改会影响所有引用该对象的变量。


http://www.ppmy.cn/server/14154.html

相关文章

线上线下交友社区系统 可打包小程序 支持二开 源码交付!

社交网络的普及,人们交友的方式发生了巨大的变化。过去,我们主要通过线下的方式来结识新朋友,比如在学校、工作场所、社交活动或者兴趣小组中。然而,随着移动端软件的发展,线上交友也逐渐变得流行。 方便性&#xff1a…

牛客 题解

文章目录 day4_17**BC149** **简写单词**思路:模拟代码: dd爱框框思路:滑动窗口(同向双指针)代码: 除2!思路:模拟贪心堆代码: day4_17 BC149 简写单词 https://www.now…

指针(5)

前言 本节是有关指针内容的最后一节,本节的内容以讲解指针习题为主,那么就让我们一起来开启本节的学习吧! sizeof和strlen的对比 1.sizeof 我们在学习操作符的时候,学习了sizeof。sizeof存在的意义是用来计算变量所占用的内存空…

(救命)Kali Linux或者其他linux系统的触控板右键按下没反应,失效的解决办法

我每次安装kali的时候都会选择gnome桌面,每次安装好右键都是禁用的,按下和左键效果一样,每次都得去调鼠标右键,原来就不好找到那个选项,这次踏马居然连那个选项都没了,如果你去网上找教程你会发现网上根本没…

神经网络与深度学习(四)

目录 一、循环神经网络1.1 门控循环单元(GRU)1.2 长短期记忆网络(LSTM)1.3 深度循环神经网络1.4 双向循环神经网络 二、NLP2.1 序列模型2.2 数据预处理2.3 文本预处理2.4 文本嵌入 三、RNN模型3.1 RNN概要3.2 RNN模型3.3 RNN示例 一、循环神经网络 循环神经网络(RN…

猎聘爬虫(附源码)

废话不多说直接附源码 cookies需要替换成自己的 , 该网站在不登录的情况下只能请求到10页数据 , 想要获得完整数据需要携带登录后的cookies import requests import json from lxml import etree import os import openpyxlheaders {"Accept": "application/…

远程仓库.github/workflow的 yml如何配置

git 远程仓库.github/workflow的 yml如何配置 关于远程仓库 GitHub 的协作开发方法取决于将本地存储库中的提交发布到 GitHub 以便其他人查看、获取和更新。 远程 URL 是 Git 表达“代码存储位置”的奇特方式。该 URL 可以是您在 GitHub 上的存储库,也可以是其他用…

RK3588S和ARM阵列服务器在虚拟化云平台的应用

RK3588是瑞芯微2021年底推出的首款高端8nm旗舰芯片,而RK3588S 则是针对消费端市场在RK3588基础上缩减了部分外围接口,CPU、GPU和NPU等主要参数得到了保留,主要应用范围为高端ARM平板、ARM笔电产品,会议平板类、ARM服务器、智能机器…