Java中数据类型详解

2023-11-06

一,数据类型的作用

程序中有很多数据,每个数据都是有相关类型的,不同的数据类型占用的空间大小不同
在这里插入图片描述

二,两种数据类型

1,基本数据类型

基本数据类型包括四大类八小种
在这里插入图片描述

(1)第一类:整数型

byte,short,int,long四种
①.int整型,用于存储整数4个节-2147483648~21474836470
②.byte,Java中最小的数据类型1个字节-128~1270
③.short短整型,2个字节-32768~327170
④.long长整型,8个字节-263~263-10L
由上可以看出 byte、short 的取值范围比较小,而long的取值范围时最大的,所以占用的空间也是最多的。int 取值范围基本上可以满足我们的日常计算需求了,所以 int 也是我们使用的最多的一个整型类型

(2)第二类:浮点型

float,double两种
①.float浮点型,用于存储带小数点的数字4个字节/0.0f
②.double双精度浮点型,用于存储带有小数点的数字8个字节/0.0d
通常的浮点型数据在不声明的情况下都是double型的,如果要表示一个数据时float 型的,可以在数据后面加上 “F”
浮点型的数据是不能完全精确的,有时候在计算时可能出现小数点最后几位出现浮动,这时正常的。

(3)第三类:布尔型

boolean布尔类型,用于判断真或假1个字节仅有两个值,即true、falsefalse

(4)第四类:字符型

char字符型,用于存储单个字符2个字节0~65535空
字符型(Character)数据是不具计算能力的文字数据类型,用字母C表示。
它包括中文字符、英文字符、数字字符和其他ASCⅡ字符,其长度(即字符个数)范围是0-255个字符,即0x00至0xFF。

2,引用数据类型

Java中的引用类型共有三种,分别是类,数组,接口这些引用类型的默认值都是null

(1)类

几个java库中的类
Object :Object是一个很重要的类,Object是类层次结构的根类,每个类都使用Object作为超类,所有对象(包括数组)都实现这个类的方法。用Object可以定义所有的类
如: Object object= new Integer (1); 来定义一个Interger类
Integer i=(Integer) object; 在来把这个Object强制转换成Interger类
String :String类代表字符串,Java 程序中的所有字符串字面值(如"abc")都作为此类的实例来实现。检查序列的单个字符、比较字符串、搜索字符串、提取子字符串、创建字符串副本、在该副本中、所有的字符都被转换为大写或小写形式。

(2)数组

数组:存储在一个连续的内存块中的相同数据类型(引用数据类型)的元素集合。
数组中的每一个数据称之为数组元素,数组中的元素以索引来表示其存放的位置,索引(下标)从0开始。
数组的定义
第一种方式:类型[] 数组名; 如 int[] nums;
第二种方式:类型数组名[]; 如 int nums[];
数组的初始化
Java中数组必先初始化后才能使用.
初始化就是给数组元素分配内存,并为每个元素赋初始值

(3)接口

几个java库中的接口interface
**List<>**列表 ,此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引 (在列表中的位置)访问元素,并搜索列表中的元素。List 接口提供了两种搜索指定对象的方法。

三,基本数据类型之间的转化

1,八种基本数据类型除了布尔类型,其他类型都可以相互转换
2,小容量向大容量转换,称为自动类型转换
注:任何浮点型不管占用多少字节,都比整数型容量大
3,与自动类型转换相反,从取值范围大的数据类型转换至取值范围小的数据类型,如果不进行强制类型转换则会引发报错,同时在强制类型转换的过程中,也需要考虑能否接受精度缺失
4,byte,short,char混合运算的时候,各自先转化int类型运算
5,多种数据类型混合运算,先转化成容量大的类型再做运算
6、字符串与其它类型间的转换:
⑴其它类型向字符串的转换

①调用类的串转换方法:X.toString();
②自动转换:X+“”;
③使用String的方法:String.valueOf(X);

⑵字符串作为值,向其它类型的转换
①先转换成相应的封装器实例,再调用对应的方法转换成其它类型
例如,字符中“32.1”转换double型的值的格式为:new Float(“32.1”).doubleValue()。

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

Java中数据类型详解 的相关文章

随机推荐

  • JAVA里面的“指针”(对象引用)

    众所周知 在java里面是没有指针的 那为何此处还要说java里面的 指针 呢 我们知道在C C 中 指针是指向内存中的地址 该地址就是存储变量的值 该地址所存储的变量值是 公有 的 此处的 公有 是对于拥有该地址的变量而言 它们都可以访问
  • 原生JS实现ajax详解

    原生js写ajax可以类比打电话 打电话分下面4步 1 拿出手机 2 拨号 3 说话 4 听对方说话 ajax也分下面4步 1 创建ajax对象 2 连接到服务器 3 发送请求 告诉服务器我要什么文件 4 接收返回值 下面是原生js写aja
  • 使用MathJax在博客园里添加数学公式

    简单来说就是直接使用MathJax提供的JavaScript文件来生成数学公式 具体来说就是在页首加入粘贴如下JavaScript代码
  • 一文学会使用MethodHandle

    MethodHandle方法句柄 第一次看到这个类是在看Mybatis源码 自以为对java很熟悉 反射很熟的我 看到这个API竟然不知道是干什么用的 因此花了很多时间去了解这个东西 发现网上的资料是很少的 特别是对刚接触这个api的人很不
  • LeetCode_6_树----对称二叉树

    大家好 我是你们的好朋友 大数据老虾 相遇是缘 既然来了就拎着小板凳坐下来一起唠会儿 如果在文中有所收获 请别忘了一键三连 你的鼓励 是我创作的动力 废话不多说 直接开干 吧 先别急着走 文末干货 记得拎着小板凳离开的时候也给它顺走 树 对
  • 以太网ARP测试实验

    1 1 ARP测试整体框架 当上位机发送ARP请求时 FPGA返回ARP应答数据 当按下FPGA的触摸按键时 FPGA发送ARP请求 上位机返回ARP应答数据 PLL时钟对eth rxc的输入时钟进行相位调整 GMII TO RGMI 模块
  • uniapp微信小程序订阅消息发送服务通知

    版权声明 本文为博主原创文章 遵循 CC 4 0 BY SA 版权协议 转载请附上原文出处链接和本声明 本文链接 https blog csdn net qq 44718932 article details 126130702 uniap
  • 爬虫发送带headers报错内容为ValueError: too many values to unpack (expected 2)

    这个是我报错的代码 author li lee import requests 变量url接收访问地址 url http www baidu com 加headers 将浏览器的用户代理 写到headers中 用于重置User Agent
  • 《C++ Primer Plus 第六版》编程练习参考答案(第四章)

    第四章 第一题 include
  • NativeWindow 妙用,截取windows消息

    namespace System Windows Forms using System using System ComponentModel using System Drawing using System Drawing Design
  • linux设置VT模式,android – 如何在Linux上的BIOS和KVM模块中启用VT-x?

    KVM Installation I referred the instructions from Ubuntu community documentation page to get KVM installed To see if you
  • C#使用FFmpeg的总结

    上篇文章提到FFmpeg解决项目中视频和语音问题 说道C 和FFmpeg不得不提的2个类库 1 Xabe FFmpeg 简单查看了下源码和demo 发现基于ffmpeg exe的命令行参数进行处理 2 FFmpeg AutoGen 把C语言
  • sqlserver日期格式转换yyyymmdd_8个案例,玩转时间合并转换运算和提取,3个函数就够了...

    大家好 上一篇文章分享了关于日期时间的提取函数和判定 讲解了如何对日期是否是周末进行判定 今天继续分享关于日期时间方面的合并 提取方面的剩余内容 以及如何根据身份证号求算年龄 如何根据入职时间计算员工工龄两个案例 那么就让我们开始吧 操作一
  • jmeter errstr :“unsupported field type for multipart.FileHeader“

    在使用jmeter测试接口的时候 提示errstr unsupported field type for multipart FileHeader 如图所示 这是因为我们 在HTTP信息头管理加content type参数有问题 直接在HT
  • VS社区版许可证过期更新

    VS社区版许可证过期更新 VS社区版是免费使用的 然而会有许可证过期的问题 这时候就需要登录 再进行更新许可证 在登录时卡顿了一天还没有解决问题 我们无法下载许可证 请检查你的网络连接或代理设置 查找方案 有一个方案比较普遍 1 在VS安装
  • brk(), sbrk() 用法详解

    贴上原文地址 好不容易找到了 brk sbrk 改变数据段长度 brk sbrk 的声明如下 include
  • 机器学习实验 - MeanShift聚类

    目录 一 报告摘要 1 1 实验要求 1 2 实验思路 1 3 实验结论 二 实验内容 2 1 方法介绍 2 2 实验细节 2 2 1 实验环境 2 2 2 实验过程 2 2 3 实验与理论内容的不同点 2 3 实验数据介绍 2 4 评价指
  • Spring5 框架 详解 (一) ---- IOC控制反转

    Spring5 框架 spring 框架概述 IOC 容器 1 什么是 IOC 2 IOC底层原理 IOC 过程 IOC 接口 IOC 操作 Bean 管理 IOC 操作 Bean 管理 xml 注入其他类型属性 IOC 操作 Bean 管
  • PHP底层工作原理

    原文地址 http www cnblogs com phphuaibei archive 2011 09 13 2174927 html 最近搭建服务器 突然感觉lamp之间到底是怎么工作的 或者是怎么联系起来 平时只是写程序 重来没有思考
  • Java中数据类型详解

    文章目录 一 数据类型的作用 二 两种数据类型 1 基本数据类型 1 第一类 整数型 2 第二类 浮点型 3 第三类 布尔型 4 第四类 字符型 2 引用数据类型 1 类 2 数组 3 接口 三 基本数据类型之间的转化 一 数据类型的作用