【Java】数据类型与变量(二)

news2024/12/26 9:24:13

目录

3.变量

3.1什么是变量(变量的概念)

 3.2语法格式

​编辑​编辑3.3整型变量

3.3.1整型变量如何定义

​编辑

 3.3.2长整型变量

3.3.3短整型变量 

3.3.4字节型变量

3.4浮点型变量 

3.4.1双精度浮点型

 3.4.2单精度浮点型

3.4.3单精度浮点型与双精度浮点型精度范围对比​编辑

3.5字符型变量

3.6布尔型变量


3.变量

3.1什么是变量(变量的概念)

什么是变量?

在程序中,除了有始终不变的常量外,有些内容可能会经常改变,比如:人的年龄、身高、成绩分数、数学函数的计算结果等,对于这些经常改变的内容,在Java程序中, 称为变量。而数据类型就是用来定义不同种类变量的

 3.2语法格式

3.3整型变量

3.3.1整型变量如何定义

方式一: 在定义时给出初始值
inta= 10;
System.Out.println(a);
方式二:在定义时没有给初始值,但使用前必须设置初值,
int b;
b= 10;
System.Out.printIn(b);
使用方式二定义后,在使用前如果没有赋值,则编译期间会报错
int C;
System.Out.println(C);
C= 100;
int型变量所能表示的范围:
System.Out.println(Integer.MIN VALUE);
System.Out.println(Integer .MAX. VALUE);
注意:在定义int性变量时,所赋值不能超过int的范围
int d= 12345678901234; // 编译时报错,初值超过了int的范围

 3.3.2长整型变量

 

3.3.3短整型变量 

注意事项:
1. short在任何系统下都占2个字节
2. short的表示范围为: -32768 ~ 32767
3.使用时注意不要超过范围(一般使用比较少)
4. short的包装类型为Short

 

3.3.4字节型变量

 

 

3.4浮点型变量 

3.4.1双精度浮点型

代码一:思考以下代码是否会输出0.5

答案是不会输出0.5

在Java中, int除以int的值仍然是int(会直接舍弃小数部分)。如果想得到0.5,需要使用double类型计算.

代码二:使用了double类型进行计算即可输出0.5

 

代码三:

为什么会输出这个结果而不是1.21呢,这与浮点型在计算机中的存储方式有关,感兴趣的同学可以学习一下《计算机组成原理》这本书,这里就不详细解释了。

注意事项:

1. double在任何系统下都占8个字节
2.浮点数与整数在内存中的存储方式不同,不能单纯使用2”的形式来计算
3. double的包装类型为Double
4. double类型的内存布局遵守IEEE 754标准(和C语言一样), 尝试使用有限的内存空间表示可能无限的小数,势必会存在一定的精度误差,因此浮点数是个近似值,并不是精确值

 3.4.2单精度浮点型

float类型在Java中占四个字节,同样遵守lEEE 754标准.由于表示的数据精度范围较小,一般在工程上用到浮点数都优先考虑double,不太推荐使用float. float的包装类型为Float。

3.4.3单精度浮点型与双精度浮点型精度范围对比

3.5字符型变量

注意事项:
1. Java中使用单引号+单个字母的形式表示字符字面值.
2.计算机中的字符本质上是一个整数. 在C语言中使用ASCII码表示字符,而Java中使用Unicode表示字符因此一个字符占用两个字节,表示的字符种类更多,包括中文.

上述代码执行javac的时候可能出现以下错误

此时我们在执行javac时加上-encoding UTF-8选项即可:

注意:

char类型的包装类型为Character

3.6布尔型变量

3.Java虚拟机规范中,并没有明确规定boolean占几个字节,也没有专门用来处理boolean的字节码指令,在Oracle公司的虚拟机实现中,boolean占1个字节。

4. boolean的包装类型为Boolean。

 

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

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

相关文章

【大模型开源教程】Git开源教程「动手学大模型应用开发」,学微调也太简单了

LLM 正逐步成为信息世界的新革命力量,其通过强大的自然语言理解、自然语言生成能力,为开发者提供了新的、更强大的应用开发选择。随着国内外井喷式的 LLM API 服务开放,如何基于 LLM API 快速、便捷地开发具备更强能力、集成 LLM 的应用&…

AI搜索“懒人神器”,如何向谷歌和百度发起挑战?

“属于传统搜索的时代,已经彻底落幕了。” 2024年2月,全球IT分析与评估机构Gartner在一份报告中如此判断。同时该机构预测,到2026年,传统搜索引擎的搜索量将减少25%。 与此同时,从最近公布的财报来看&…

源代码加密是什么?给源代码加密如何做?

一、源代码加密是什么? 源代码加密是一种通过特定的加密算法和工具对软件源代码文件进行保护的技术,使得只有授权用户才能解密和访问代码。加密技术可以防止未经授权的访问、阅读、修改或复制源代码。源代码加密,则是对源代码文件进行加密处…

Kubernetes高级调度2

一.Taint和Toleration 1.为什么使用taint (1)不让pod被部署到被设置为污点的节点上。 (2)不让master节点部署业务,只部署系统组件 (3)除了指点pod外,不想让节点部署其他pod 2.为…

解决ESP32 VScode环境报错:Something went wrong while trying to build the project。

当我在vscode开发esp32时,点击构建项目 报了个错。 说明:项目目录包含了中文字符,我给换成全英文路径,再次尝试 成功 改完发现还有问题,来到这个目录,里面的中文也要改成英文。(不止&#xff0…

Qt是不是经常写个QWidget输入参数?

发现Qt自带的一个输入控件QInputDialog类 QInputDialog类提供了一个简单方便的对话框,用于从用户获取单个值。 输入值可以是字符串、数字或列表中的项。必须设置一个标签来告诉用户他们应该输入什么。 提供了五个静态方便函数:getText()、getMultiLineText()、getI…

干货:2024年四大免费PDF编辑器精选指南!

在日常生活工作中,我们几乎每天都会接触到PDF文档。当我们需要对这些文档进行编辑时,一些出色的免费PDF编辑器十分重要。接下来,我将分享自己使用过的几款优秀的免费PDF编辑器! 福昕PDF编辑器:简洁高效的编辑体验 链…

【Python基础】学习Python常见的几种运行报错,看完之后,你就不会再犯错了!!!(附带解析)

学习Python时,遇到运行时错误是很常见的,这些错误通常是因为代码中存在语法错误、逻辑错误或是对Python的某些特性理解不够深入所导致的。 如果你也是刚入门的小伙伴呢,小编为你们准备了入门Python学习籽料和Python入门实践,点击…

期权末日轮的前提——高杠杆特性是怎样的?

今天带你了解期权末日轮的前提——高杠杆特性是怎样的?期权末日轮是临近期权到期行权,期权合约往往出现大的波动涨跌幅。 如何在实际交易过程中艺术的运用期权产品的高杠杆,始终是一个永无止境的话题,结合一些实战上的经验就是&a…

miniQMT怎么获取历史/最新行情?miniQMT原生python环境如何获取历史/最新行情?

原生Python 调用方法 python from xtquant import xtdata xtdata.get_market_data_ex(field_list[],# 字段stock_list[],# 合约代码列表period1d,# 数据周期——1m、5m、1d、tickstart_time,# 数据起始时间%Y%m%d或%Y%m%d%H%M%Send_time,# 数据结束时间%Y%m%d或%Y%m%d%H%M%Sc…

QT中UI实现小功能的步骤

1、新建一个目录 要勾选Generate form,生成一个.ui文件 把Shadow build的勾选取消,避免产生两个文件夹! 2、具体步骤 1.在UI界面中拖拽需要的组件对象 2.修改组件对象的名称 3.保存并运行,根据运行结果适当调整界面布局 4.业…

真正懂耳机的人选了什么?开放式耳机推荐

真正懂耳机的人,在选择耳机时,往往会更注重音质的自然还原、佩戴的舒适度、以及耳机的设计是否符合个人审美和生活习惯。开放式耳机以其独特的开放式设计,能够带来更为自然、宽广的声场体验,同时减少对耳朵的压迫感,成…

宝藏!《联盟作文班配套讲义》(九尾篇)

本文内容,全部选自自动化考研联盟企业店的:独家制作,《联盟作文班配套讲义》(九尾篇)。 Part1:资料封面&目录 Part2:各章节内容展示 第一章 考研英语作文开篇总述 第二章、 小作文(英语一英语二) 第三章、 英语&…

docker拉取镜像并安装mysql

一. linux安装docker 1. 先删除本机旧的或者残留的docker sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine2. 安装依赖 sudo yum update -y && sudo yum i…

相机标定板生成

推荐一个好用的网站: https://calib.io/pages/camera-calibration-pattern-generator 可以生成多种样式的棋盘格, 大小, 行列数也都可以设置, 非常方便。 另外推荐结合相机标定程序使用, 效果更佳!&#x…

分布式中间件

1.Nacos 服务注册和服务发现原理图: 1.服务提供方将集群信息注册到Nacos,并定期心跳包提供健康信息,宕机即剔除 2.服务消费方定期拉取订阅信息,获取服务实例列表 3.服务集群的负载均衡是在消费者一方进行选择 负载均衡&#xf…

使用第三方API打造智能对话:Amazon Lex聊天机器人轻松实现

这是本系列文章的第四篇,旨在通过动手实践,帮助大家学习亚马逊云科技的生成式AI相关技能。通过这些文章,大家将掌握如何利用亚马逊云科技的各类服务来应用AI技术。 那么让我们开始今天的内容吧! 引言 什么是Amazon Lex&#xf…

第十三章- 游戏结束

在这个例子中我们开始研究一个带有记分的真正可玩的游戏。我们给MyWidget一个新的名字GameBoard并添加一些槽。 我们把定义放在gamebrd.h并把实现放在gamebrd.cpp。 CannonField现在有了一个游戏结束状态。 在LCDRange中的布局问题已经修好了。 lcdrange.h包含LCDRange类定…

如何使用ssm实现学生就业管理系统

TOC ssm328学生就业管理系统jsp 绪论 1.1 研究背景 当前社会各行业领域竞争压力非常大,随着当前时代的信息化,科学化发展,让社会各行业领域都争相使用新的信息技术,对行业内的各种相关数据进行科学化,规范化管理。…

AI算力资源池建设重点

I算力资源池建设正当时 随着深度学习和计算机视觉领域的快速发展,各行各业对于AI算力资源的需求也在快速增长。AI算力池化不仅有助于提高资源的利用率,还可以提高工作效率、减少管理成本。今天就我们一起探讨如何组织和管理AI算力资源池、实现算力资源的…