数据类型的分类

news2025/5/24 21:43:35

数据类型的分类

 java中的 变量 按照数据类型来分类:

  • 基本数据类型(8种)(primitive type):
    • 整型:byte、short、int、long、
    • 浮点型:float、double
    • 字符型:char
    • 布尔型:boolean
  • 引用数据类型 (reference type):
    • 类(class)
    • 数组(array)
    • 接口(interface)
    • 枚举(enum)
    • 注解(annotation)
    • 记录(record)

整型变量的使用说明

  •  java的整型常量默认为int型,声明long型常量需后加  ‘l’   或    ‘L’
  •  java程序中变量通常声明为int型,除非不足以表示较大的数,才使用long
类型占用存储空间表数范围
Byte1字节=8bit位(2^{0}-128~127
short2字节(2^{1}-2^{15}~2^{15}-1(2*8-1)
int4个字节(2^{2}-2^{31}~2^{31}-1(4*8-1)(约21亿)
long8字节(2^{3}-2^{63}~2^{63}-1(8*8-1)
  • 计算机中的最小存储单位:bit(每个0或1就是一个位)
  • 计算机中基本存储单元:Byte(是计算机用于计算存储容量的基本单位)
  • 转换关系:

        8 bit = 1 Byte

        1024 Byte = 1KB

        1024 KB = 1MB

        1024 MB =1GB

        1024 GB = 1TB

浮点型变量的使用说明

  • float:单精度,尾数可以精确到7位有效数字。很多情况下,精度很难满足需求
  • double:双精度,精度是float的两倍。通常采用此类型。
  • Java的浮点型常量默认为double型,声明float型常量,须后加  ‘f’ 或   ‘F’
类型占用存储空间表数范围
单精度float4字节(2^{2}-3.403E38~3.403E38
双精度double8个字节(2^{3}-1.798E308~1.798E308

关于浮点型精度的说明

  • 并不是所有的小数都能可以精确的用二进制浮点数表示。二进制浮点数不能精确的表示0.1、0.01、0.001这样10的负次幂。
  • 浮点类型float、double的数据不适合在不容许舍入误差的金融计算领域。如果需要精确数字计算或保留指定位数的精度,需要使用BigDecimal类。
为什么0.1 + 0.2不等于0.3 ?
System.out.println(0.1 + 0.2);//0.30000000000000004
float ff1 = 123123123f;
float ff2 = ff1 + 1;
System.out.println(ff1);//1.2312312E8
System.out.println(ff2);//1.2312312E8
System.out.println(ff1 == ff2);//true
//      定义圆周率并赋值为3.14,现在3个圆的半径分别为 1.2,2.5,6,求它们的面积
        double PI = 3.14;
        double radius1 = 1.2;
        double radius2 = 2.5;
        int radius3 = 6;

        double area1 = PI * radius1 * radius1;
        double area2 = PI * radius2 * radius2;
        double area3 = PI * radius3 * radius3;

        System.out.println(area1);
        System.out.println(area2);
        System.out.println(area3);

//      小明要到美国旅游,可是那里的温度以华氏度为单位记录的,
//      它需要一个程序将华氏温度(80度)转换为摄氏度,并以华氏度和摄氏度为单位分别显示该温度。
        double fahrenheit = 80;
        double centigrade = (fahrenheit - 32) / 1.8;
        System.out.println("华氏度" + fahrenheit);//华氏度80.0
        System.out.println("摄氏度" + centigrade);//摄氏度26.666666666666664

字符类型 

  • char型数据用来表示通常意义上  “字符”  (2字节)(2^{1})(1个字符 = 2个字节)
  • Java中的所有字符都使用Unicode编码,故一个字符可以存储一个字母,一个汉字,或其他书面语一个字符
  • 转义字符说明   Unicode表示方式

    \b(backspace) 

    退格符\u000a
    \n(line)换行符\u0009
    \r(return)回车符\u0022
    \t(table)制表符\u0027
    \ ''双引号\u005c
    \ '单引号\u0008
    \\

    反斜 线

    \u000d

        

  • 字符串变量的三种表现形式:
  1.                 字符常量是用单引号(‘ ’)括起来的单个字符。
  2.                 Java中还允许使用转义字符 ‘\’ 来将其后的字符转变为特殊字符常量。
  3.                 直接使用 Unicode 值来表示字符型常量:‘\uXXXX’。其中,XXXX代表一个十六进制整数。如:\u000a表示 \n
  4.         char c = 97;
            System.out.println(c);//a
  • char类型是可以进行运算的。因为它都对应有 Unicode 码。

 布尔类型(boolean)变量的使用

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/785149.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

/var/empty/sshd must be owned by root and not group or world-writable

/var/empty/sshd must be owned by root and not group or world-writable 这个是权限的问题 可采取以下两步解决 chown -R root.root /var/empty/sshd chmod 744 /var/empty/sshd service sshd restart

80v转5v芯片-电动车/汽车降压芯片方案

Q: 什么是80v转5v芯片?什么它在电动车和汽车中有应用需求? A: 80v转5v芯片是一种电源转换芯片,可以将输入电压范围为9v至100v的直流电源转换为输出电压为5v,并且可以进行可调。这种芯片在电动车和汽车领域有广泛的应用需求。电动…

Python+pytest+requests 自动化测试框架

目录 前言: 环境准备 简单 Demo yml 文件读取功能 数据层 业务层 测试用例层 前言: Python 是一种广泛使用的编程语言,它可以用于开发各种软件和应用程序。pytest 是一个广泛使用的自动化测试框架,它可以帮助我们更轻松地…

【Java】如何理解 Spring 核心概念: 什么是 IoC, 什么是 DI?

文章目录 前言一、什么是Spring1, 什么是容器2, 什么是IoC 二、如何理解IoC1, 传统方式的代码编写2, 控制反转的代码编写3, 再谈IoC 三、什么是DI总结 前言 各位读者好, 我是小陈, 这是我的个人主页, 希望我的专栏能够帮助到你: 📕 JavaSE基础: 基础语法, 类和对象,…

网络安全学习(ing)

根据网站后缀猜测开发语言及服务常见端口及对应的服务 22 ssh 445 smb 漏洞ms17-010 永恒之蓝 3306 mysql 3389 rdp远程桌面连接服务 80 http 443 https (一)SSH爆破—模拟攻击 1.信息收集 nmap扫描目标主机的端口: nmap IP 发现22端口开放…

再次认识结构体

> 作者简介:დ旧言~,目前大一,现在学习Java,c,c,Python等 > 座右铭:松树千年终是朽,槿花一日自为荣。 > 望小伙伴们点赞👍收藏✨加关注哟💕&#x1…

软件工程学术顶会——ICSE 2023 议题(网络安全方向)清单与摘要

按语:IEEE/ACM ICSE全称International Conference on Software Engineering,是软件工程领域公认的旗舰学术会议,中国计算机学会推荐的A类国际学术会议,Core Conference Ranking A*类会议,H5指数74,Impact s…

Android 在一个APP里打开另一个APP

前言 不知道你们有没有注意过,每次打开一些软件的时候都会有广告引导页,有时候手滑点到了,会有进入手机上的另一个APP,这有没有引起你的注意呢? 运行效果图 # 正文 为了测试这个功能,首先要创建两个项目&…

019 - limit

limit:限制返回结果数量; 该LIMIT子句可用于约束SELECT语句返回的行数 。 LIMIT接受一个或两个数字参数,这些参数必须都是非负整数常量,但以下情况除外: 在准备好的语句中,LIMIT 可以使用? 占位符标记指…

双端队列(deque)与优先队列(priority_queue)

文章目录 一.双端队列——deque1.deque的优点与缺点2.deque的原理 二.优先队列——priority_queue1.什么是优先队列?2.优先队列的基本使用3.什么是仿函数?4.优先队列的模拟实现 一.双端队列——deque 在上一章stack、queue的模拟实现中,我们…

疲劳驾驶检测和识别2:Pytorch实现疲劳驾驶检测和识别(含疲劳驾驶数据集和训练代码)

疲劳驾驶检测和识别2:Pytorch实现疲劳驾驶检测和识别(含疲劳驾驶数据集和训练代码) 目录 疲劳驾驶检测和识别2:Pytorch实现疲劳驾驶检测和识别(含疲劳驾驶数据集和训练代码) 1.疲劳驾驶检测和识别方法 2.疲劳驾驶数据集 (1)疲…

whistle代理

安装whistle npm install whistle -g --registryhttps://registry.npm.taobao.org启动w2代理 w2 startchrome浏览器安装插件whistle,并启用代理状态 web端代理到本地 浏览器访问http://127.0.0.1:8899/ 配置代理url [参考] https://blog.csdn.net/u010106375/ar…

C语言:程序环境和预处理

编译一个C程序设计很多步骤,大致为预处理,编译,汇编和链接. 在讲解预处理阶段之前,先简单总述一下程序的编译和链接. 1. 程序的编译和链接 链接是将各种代码和数据片段收集并组合成为一个单一文件的过程,这个文件可被加载(复制)到内存并执行. 这里有两个源文件构成了一个程序…

计算机内存中的缓存Cache Memories

这篇写一下计算机系统中的缓存Cache应用场景和实现方式介绍。 Memory hierarchy 在讲缓存之前,首先要了解计算机中的内存结构层次Memory hierarchy。也就是下图金字塔形状的结构。 从上到下,内存层次结构如下: 寄存器:这是计算机…

自动化测试与手工测试比较

既然现在有了自动化测试,甚至现在许多团队在使用人工智能的方法,逐渐让机器来取代人的测试。那么作为测试工程师的人未来会不会消失?这是一个摆在许多人面前的一个严肃的问题。去年刚刚过世的著名的天体物理学家斯蒂芬威廉霍金(Stephen William Hawking…

Qt - macOS 安装配置

文章目录 一、关于 QT1.2 Qt的发展史1.3支持的平台1.4 Qt版本1.5 Qt 的优点1.6 成功案例 二、软件安装1、保证已 Xcode 和 Command Line Tools2、下载 QT3、下载 [qtcreator](http://download.qt.io/official_releases/qtcreator/)查看qt版本 三、创建工程Qt 常见用法 四、基础…

智能安全配电装置应用场景有哪些?

安科瑞 华楠 一、应用背景 电力作为一种清洁能源,给人们带来了舒适、便捷的电气化生活。与此同时,由于使用不当,维护不及时等原因引发的漏电触电和电气火灾事故,也给人们的生命和财产带来了巨大的威胁和损失。 为了防止低压配电…

音频转换工具怎么使用你了解吗?让我来跟你分享背后原理

相信小伙伴们平时都会听听喜欢的音乐放松心情吧,不过你是否遇到过,想在一个播放设备上放一首歌的时候,却发现不支持该格式?音频转换格式软件在我们的生活中扮演着越来越重要的角色。这些软件可以帮助我们将音频文件转换成不同的格…

炒股最好用的5个指标?_通达信公式

摘要: 炒股市场是一个充满挑战的领域,而找到可靠的指标来辅助投资决策是成功的关键之一。在众多的指标中,神奇指标网提供了五个被广泛认为是炒股最好用的指标。本文将详细介绍这五个指标,包括其原理和如何应用它们来辅助投资决策。 导言: …