Java基本数据类型

2023-05-16

这节博客将向大家讲解java的数据类型,在讲解数据类型前,先来看一下变量。

(一)变量

java语言是强类型语言,强类型包含两方面的含义。

1:所有的变量必须先声明,后使用。

2:指定类型的变量只能接受类型与之匹配的值。

这意味着每个变量和每一个表达式都有一个在编译的时候就确定的类型。类型限制了一个变量能被赋的值,限制了一个表达式可以产生的值,限制了这些值上可以进行的操作,并确定了这些操作的含义。

强类型语言可以在编译的时候进行更严格的语法检查,从而减少编程错误。

声明变量的语法如下:

type varName [=初始值];

type变量的类型。

varName 变量的名字。

后面初始值既可以指定,也可以不指定。随之变量的作用范围不同(成员变量和局部变量),变量还可以使用其它修饰符。不论是哪种变量,定义变量必须要指定变量类型和变量名两个部分。

定义变量是时候,变量类型需要时java支持的类型。也就是说,当创建变量的时候,需要在内存中申请空间。

内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据。

(二)java数据类型分类

每种语言都有它所支持的数据类型、运算符和控制结构。

Java语言中既有基本数据类型,又有引用数据类型,同时支持丰富的运算符。

1 基本数据类型

2 引用数据类型

我们可以看下面的图:

(三)

整数类型:

1 byte

byte 数据类型是a8位、有符号的,以二进制补码表示的整数;

最小值是 -128-2^7

最大值是 1272^7-1

默认值是 0

byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一;

 

2 short

short 数据类型是 16 位、有符号的以二进制补码表示的整数

最小值是 -32768-2^15

最大值是 327672^15 - 1

Short 数据类型也可以像 byte 那样节省空间。一个short变量是int型变量所占空间的二分之一;

默认值是 0

 

3 int

int 数据类型是32位、有符号的以二进制补码表示的整数;

最小值是 -2,147,483,648-2^31

最大值是 2,147,483,6472^31 - 1

int是最常用的整数类型,一般地整型变量默认为 int 类型。

默认值是 0 ;

 

 

4 long

long 数据类型是 64 位、有符号的以二进制补码表示的整数;

最小值是 -9,223,372,036,854,775,808-2^63

最大值是 9,223,372,036,854,775,8072^63 -1

这种类型主要使用在需要比较大整数的系统上;

默认值是 0L

 

(四)浮点型

浮点型的数就是通常所说的实数。在Java中有两种浮点类型的数据:float型和double型。这两种类型的数据在JVM中所占的位数不同,float型占32位,double型占64位。因此,通常将float型称为单精度浮点型,将double型称为双精度浮点型。它们符合IEEE-754标准。

1 float:

float 数据类型是单精度、32位、符合IEEE 754标准的浮点数;

float 在储存大型浮点数组的时候可节省内存空间;

默认值是 0.0f;

对于float型数值,第一位是符号位,接下来8位表示指数,在接下来的23位表示位数。

浮点数不能用来表示精确的值,如货币;

 

2  double:

double 数据类型是双精度、64 位、符合IEEE 754标准的浮点数;

浮点数的默认类型为double类型;

对于double型数值,第1位是符号位,接下来11位表示指数,在接下来的52位表示位数。

double类型同样不能表示精确的值,如货币;

默认值是 0.0d;

System.out.println(f1);

 

3   特殊的浮点数值

正无穷大:POSITIVE_INFINITY

负无穷大:NEGATIVE_INFINITY

非数:NAN   P54也读一下:

 

(五)boolean:

1

boolean数据类型只有一个boolean类型,表示一位的信息,用来表示逻辑的真或者假。

只有两个取值:true 和 false;不能用0或者非0来代表。其它基本数据类型的值也不能转换成为boolean型。

虽然Booleanl类型的值仅仅需要一位,大部分计算机在分配内存的时候分了最小的内存单元一个字节,也就是8位。

这种类型只作为一种标志来记录 true/false 情况;

默认值是 false;

 

char:

Java语言使用Unicode(统一码)为字符编码,它是由Unicode Consortium建立的一种编码方案。char类型是一个单一的 16 位 Unicode 字符;新版Unicode 4.0标准使用UTF-16为字符编码,可以表示更多的字符,它可以表示世界各国的语言符号,包括希腊语、阿拉伯语、日语以及汉语等。ASCII码字符集是Unicode字符集子集。

java语言里面:

最小值是 \u0000(即为0);

最大值是 \uffff(即为65,535);

char 数据类型用来储存字符;

字符型值的表示:

1 直接通过单个字符来指定字符型值。

2 通过转义字符表示特殊字符型值。

3 直接使用unicode值来表示字符型值,格式’\uXXXX’,其中XXXX代表一个16进制的整数。

字符型变量使用char定义,在内存中占16位,表示的数据范围是0~65535。

 

 

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

Java基本数据类型 的相关文章

  • 天网、雪亮类安防监控项目经验总结

    天网 雪亮类安防监控项目经验总结 个人经历过三个天网 两个雪亮项目 现仅就这类项目做一个总结 xff0c 以下纯属个人观点 首先要说的是制约天网或者雪亮项目工期的因素 xff0c 往往会是电力和网络运营商 很多时 候 xff0c 乙方前端立
  • 在ROS下利用OpenCV的Mat类,将激光点云展开为深度图像(从零开始,超详细)

    激光雷达3D目标检测任务需要将地面滤除 xff0c 滤除地面的方法多种多样 xff1a 基于深度学习 基于栅格 基于平面拟合 基于条件随机场 基于深度图像等等 关于将点云转化为深度图像 xff0c PCL库中有相关函数 xff0c 但使用起
  • 最佳技术面试流程,总有一款适合你!

    编程测评是一种快速评估开发人员技能的有效方法 但是为了最大限度地发挥它们对候选人的影响 xff0c 你必须知道在招聘流程中何时以及如何使用它们 设计合理的测评至关重要 xff0c 为候选人找到合适的角色进行评估也同样重要 当他们对你的评估接
  • 我招了个程序员:他什么都好,就是不太会写程序

    我招了个程序员 xff1a 他什么都好 xff0c 就是不太会写程序 多年以后 xff0c ShowMeBug 的创始人李亚飞站在医院产房前 xff0c 依然会想起大学刚毕业时面试的第一家公司 1 当时 xff0c CTO 面试到他 xff
  • 想招到合适的程序员,为什么我建议你一定要笔试

    寒窗苦读十数载 xff0c 毕业之后 xff0c 你还愿意考试吗 xff1f 相信绝大多数人都是不愿意的 但有一种考试 xff0c 却是在招聘过程中不可避免的 xff0c 那就是笔试 笔试 xff0c 说白了就是出一套题 xff0c 打印出
  • 资深 iOS 开发工程师教你5 道题全面考察候选人

    伯乐相 码 专栏三 xff1a 资深 iOS 开发工程师教你5 道题全面考察候选人 hello 大家好 xff0c 本期是我们伯乐相 码 专栏第三期节目 xff0c 今天给大家分享的是一位7年资深的IOS开发工程师如何简单通过5道题来全面考
  • ShowMeBug 荣膺「2021年中国人力资源科技创新产品奖」

    9月10日 xff0c 由中国领先的人力资源科技平台 HRTech China 发起的 2021年中国人力资源科技年度峰会 暨表彰大会在深圳隆重举办 HRTech China 盛大揭晓了2021年度中国人力资源科技大奖 xff0c 从公开征
  • 全球软件案例研究峰会,今日13:30线上开幕,ShowMeBug B站联合直播,赶紧扫码关注占坑位吧

    往期案例分享 案例 加快技术招聘步伐 xff0c 小鹏汽车选择使用ShowMeBug 案例 省去繁琐简历筛选 xff0c 微伴助手 选择 ShowMeBug 在线笔试提高人才精准度 案例丨秋招之下 xff0c 乐言科技如何通过 ShowMe
  • 瞄准程序员招聘痛点,ShowMeBug让面试代码操作可“回放”

    程序员虽然是建设互联网的职业之一 xff0c 但他们的招聘工作的线上化却有不少难题 疫情加速了市场对远程办公 远程面试 远程教学等模式的接受程度 xff0c 但程序员招聘涉及到代码能力测试 xff0c 甚至不同企业有不同的产品代码基础 xf
  • 这些IT行业趋势,将改变2023

    上一周 xff0c 你被 34 AI 34 刷屏了吗 xff1f 打开任何一家科技媒体 xff0c 人工智能都是不变的热门话题 周初大家还在用ChatGPT写论文 查资料 写代码 xff0c 到周末的时候大家已经开始用GPT 4图像识别来做
  • 基于惯性导航的(IMU,MEMS)的室内定位

    大家都知道惯导随着时间误差会不断积累 xff0c 所以这个方法往往不会单独使用 xff0c 而是和其他技术一起进行融合 由其他的绝对定位技术提供校正信息 xff0c 而惯导的信息提供连续的定位和起到对其他位置的平滑作用 针对行人而言 xff
  • 服务器初次跑YOLO数据集总结

    服务器跑模型时候遇见的部分问题 一 Pycharm 1 torch版本号相比于YOLO版本号过高 现象 xff1a Runtime xff1a result type float can t be cast to the desired o
  • 技术招聘漫谈 | Java工程师招聘难?你可能需要这份独家指南

    两周前 xff0c 我们发布了一篇关于怎样招聘前端工程师的文章 xff08 点击此处顾 xff09 在文章中 xff0c 我们分析了前端岗位有哪些必不可少的考察要点 xff0c 以及如何在面试中考核对方是否能写出高质量的代码 xff0c 这
  • 技术招聘演化论:怎样从纸上答题升级到实战编程?

    创新赛道的出现 一些企业或许已经对招聘管理系统 xff08 Applicant Tracking System xff0c 简称 ATS xff09 有一定了解 xff0c ATS 可以帮助企业管理招聘流程 xff0c 其中包括发布招聘信息
  • 一次查找分子级Bug的经历,过程太酸爽了

    Debugging is like trying to find a needle in a haystack except the needle is also made of hay Debug调试就像是在大片的干草堆中找针一样 xff
  • k8s 内部实现服务注册和服务调用

    k8s内部的服务注册主要是依靠几个组件 coreDns service和pod的标签选择器 服务注册的流程 pod创建完以后 xff0c 一般我们都会打算一组标签 xff0c 标签是key value形式的 如下 apiVersion v1
  • 使用Jetson Nano向PX4提供T265位置信息,实现室内定点飞行

    使用的Jetson Nano镜像版本 xff1a 4 6 xff08 2021 08 04发布 xff09 NVIDIA官方镜像下载链接 1 安装 ROS Melodic 参考官网安装教程 设置sources list sudo sh c
  • 结束,也是开始。

    三年时光转眼即逝 xff0c 临到毕业才幡然醒悟 xff0c 自己掌握的专业技能太少 xff0c 最后几个月才养成了几个好习惯 在上班利用空闲时间多学学其他的技术 xff0c 希望自己可以不停的努力 xff0c 充实自己的每一天
  • win10 和ubuntu双系统设置启动顺序和时间

    安装了ubuntu18 04后 xff0c 默认启动项是ubuntu xff0c 如果希望默认启动项是windows xff0c 修改方法如下 xff1a 1 进入Ubuntu系统 xff0c 打开终端 xff0c 输入 sudo gedi
  • 论 "张筱雨"

    当今网络谁最红 xff1f 当今网络谁最裸 xff1f 当今网络谁征服了大多数男人们的眼球 xff1f 当今网络谁最具创新 xff0c 引领时尚潮流 xff0c 当今网络谁敢和日本AV女优叫板 那么她就是 张筱雨 张筱雨 xff01 xff

随机推荐

  • PostgreSQL 性能优化--参数的配置

    nbsp nbsp nbsp PostgreSQL的配置参数作为性能调优的一部分 起着重要的位置 有时候一个简单的配置参数就会觉得应用的性能 因此有必要简单了解下其相关的配置参数 查询Linux服务器配置 在进行性能调优之前 需要清楚知道服
  • EJB指导教程前言

    前言 xff1a 本人将通过EJB tutorialspoint 网站学习EJB相关知识 xff0c 并将一部分知识翻译整理写为博客 xff0c 加入自己的见解 xff0c 供分享和交流 一 EJB指导 企业级Java Beans EJB
  • RTOS概念介绍

    事件标志组 事件标志组是实现多任务同步的有效机制之一 也许有不理解的初学者会问采用事件标志组多麻烦 xff0c 搞个全局变量不是更简单 xff0c 其实不然 在裸机编程时 xff0c 使用全局变量的确比较方便 xff0c 但是在加上 RTO
  • EJB概述

    EJB含义为企业Java Beans EJB是J2EE平台的重要组成部分 开发者可以在J2EE平台使用基于组件的体系结构 xff0c 该结构目的为企业级应用程序提供多层 分布式和高度事务性等特性 EJB提供了一种开发和部署基于组件的企业应用
  • EJB - 环境设置

    一 本博客将根据tutorialspoint文档的指导进行EJB环境的设置 二 系统需求 EJB是Java的一个框架 xff0c 所以第一个要求是在您的机器上安装一个Java开发工具包 xff08 JDK xff09 JDK1 5 or a
  • EJB--应用创造上

    为了创建一个简单的EJB模块 xff0c 我们将使用NetBeans New project 向导 在下面给出的示例中 xff0c 我们将创建一个名为Component的EJB模块项目 一 创建项目 在NetBeans IDE中 xff0c
  • EJB-应用创造中

    一 构建项目 在项目资源管理器窗口中选择EjbComponent项目 右键单击它打开context菜单 选择clean and build 您将在NetBeans控制台输出中看到以下输出 ant f C EJB EjbComponent c
  • EJB--应用创造下

    创建客户端以访问EJB 一 创建客户端以访问EJB 在NetBeans IDE中 xff0c 选择File gt New Project gt 在 Java类别 下选择 项目类型 xff0c 将 项目类型 选为 Java应用程序 单击下一步
  • iptables 原来这么简单

    你在找一个完整的iptables教程吗 xff1f 在本文中 xff0c 我们将向您展示如何在linux系统上安装和使用iptables 通过了解这个Linux防火墙工具 xff0c 您可以使用命令行界面更好的保护Linux xff0c 免
  • zabbix 事件通知--邮件媒体配置

    一 概述 假设我们已经配置了一些项 xff08 items xff09 和触发器 triggers xff0c 并且现在由于一些事件而引起触发器的状态改变 xff0c 那么现在是时候考虑去做一些操作了 首先 xff0c 我们不想一直盯着触发
  • zabbix 事件通知--警告脚本配置

    一 概述 假设我们已经配置了一些项 xff08 items xff09 和触发器 triggers xff0c 并且现在由于一些事件而引起触发器的状态改变 xff0c 那么现在是时候考虑去做一些操作了 首先 xff0c 我们不想一直盯着触发
  • shell 脚本统计文件数

    下面这段代码展示了通过shell 脚本统计某个目录下的文件数 xff0c 并输出到文本文件中 bin sh declare x num1 61 0 read dir for file in 96 ls a 1 96 do echo 1 if
  • 文件传输命令(持续更新中)

    文件传输是非常常用的命令 xff0c 今天小编就带大家整理一下自己常用的一些文件传输命令 xff1a rsync 命令 rsync是可以实现增量备份的工具 配合任务计划 xff0c rsync能实现定时或间隔同步 xff0c 配合inoti
  • 滑模控制

    滑模控制 举例说明滑模控制 对于一个典型的二阶系统 x 1 61 x
  • wildfly软件介绍

    WildFly是什么 xff1f Wildfly是一个开源的基于JavaEE的轻量级应用服务器 xff0c 目前 xff0c 最新版本是Wildfly 15 xff0c wildfly遵循LGPL2 1许可 xff0c 意味着可以在任何商业
  • JDK介绍与安装

    xff08 一 xff09 JDK 简介 JDK Java SE Development kit JDK java开发工具包 JDK 全称Java SE Development kit JDK xff0c 即java 标准版 开发包 xff
  • 一个简单的java程序

    xff08 一 xff09 简单的java程序 public class MyFirstApp public static void main String args System out print 34 Hello world 34 x
  • Java 注释

    xff08 一 xff09 注释的重要性 编写程序的时候 xff0c 总需要为程序添加一些注释 xff0c 用以说明某段代码的作用 xff0c 或者说明某个类的用途 xff0c 某个方法的工能 xff0c 以及该方法的的参数和返回值的数据类
  • java 标识符,分隔符,关键字

    xff08 一 xff09 标识符的介绍 Java语言中 xff0c 对于变量 xff0c 常量 xff0c 函数 xff0c 语句块也有名字 xff0c 我们统统称之为Java标识符 标识符是用来给类 对象 方法 变量 接口和自定义数据类
  • Java基本数据类型

    这节博客将向大家讲解java的数据类型 xff0c 在讲解数据类型前 xff0c 先来看一下变量 xff08 一 xff09 变量 java语言是强类型语言 xff0c 强类型包含两方面的含义 1 xff1a 所有的变量必须先声明 xff0