五、Java基本数据类型

Java基本数据类型

    • Java基本数据类型
    • 1.1.整数类型
      • 1.1.1.int型
      • 1.1.2.byte型
      • 1.1.3.short型
      • 1.1.4.long型
    • 1.2.浮点类型
    • 1.3.字符类型
      • 1.3.1.char型
      • 1.3.2.转义字符
    • 1.4.布尔类型

——————————————————————————————————————————————————

Java基本数据类型

在Java中有8种基本数据类型来存储数值、字符和布尔值。
在这里插入图片描述

——————————————————————————————————————————————————

1.1.整数类型

整数类型简称整型,用来存储整数数值,即没有小数部分的数值。它们可以是正数,也可以是负数。整型数据根据它所占内存大小的不同,可分为byte、short、int和long 4种类型。它们具有不同的取值范围。

在这里插入图片描述

分别介绍4种整型数据类型。

——————————————————————————————————————————————————

1.1.1.int型

定义int型变量有以下4种语法:

    int x;                                      //定义int型变量xint x,y;                                    //同时定义int型变量x,yint x = 10, y = -5;                         //同时定义int型变量x,y,并赋予初值int x = 5+23;                               //定义int型变量x,并赋予5+23计算结果的初值

int型变量在内存中占4字节,也就是32位,在计算机中bit是由0和1来表示的,所以int型值5在计算机中是这样显示的:
在这里插入图片描述
int型是Java整型值的默认数据类型。当对多个尚未定义数据类型的整数做运算时,运算的结果将默认为int类型。

例如:
在这里插入图片描述.
等同于如下代码
在这里插入图片描述

——————————————————————————————————————————————————

1.1.2.byte型

byte型的定义方式与int型的定义方式相同。定义byte类型变量:

    byte a;                                  byte a, b, c                            byte a = 19,b = -45                     

——————————————————————————————————————————————————

1.1.3.short型

short型的定义方式与int型的定义方式相同。定义short类型变量:

    short s;short s, t, r;short s = 1000, t = -19;short s = 20000 / 10;                                 

——————————————————————————————————————————————————

1.1.4.long型

由于 long类型变量的取值范围比int类型变量的取值范围大,且 属于高精度数据类型,因此在赋值时要和int型做出区分,需要在整数后加L或者l(小写的L)。定义long类型变量:

    long number;long number, rum;long number = 12345678l, rum= -987654321L;long number = 123456789L * 987654321L;

注意:整数在Java程序中有3种表达形式,十进制、八进制、十六进制。
除了数字0,不能以0作为其他十进制数的开头。
八进制数必须以0开头。
十六进制数必须以0X或0x开头。

——————————————————————————————————————————————————

1.2.浮点类型

浮点类型简称浮点型,用来存储含有小数部分的数值。Java语言中浮点类型分为单精度浮点类型(float)和双精度浮点类型(double),它们具有不同的取值范围。

在这里插入图片描述

在默认情况下,小数都被看作double型,若想使用float型小数,则需要在小数后面添加F或f。另外,可以使用后缀d或D来明确表明这是一个double类型数据,但加不加d或D并没有硬性规定。 而定义float型变量时,如果不加F或f,系统会认为它是一个double类型数据,并出错。

    float f1 = 13.23f;double d1 = 4562.12d;double d2 = 45678.1564;

注意:浮点值属于近似值,在系统中运算后的结果可能与实际有所偏差。

例1:根据身高体重计算BMI指数

创建BMIexponent类;声明double型变量height以记录身高,单位为米;声明int型变量weight以记录体重,单位为千克;根据BMI=体重/(身高×身高)计算BMI指数。

在这里插入图片描述
运行结果如下:

在这里插入图片描述

——————————————————————————————————————————————————

1.3.字符类型

——————————————————————————————————————————————————

1.3.1.char型

字符类型(char)用于存储单个字符,占用16位(两个字节)的内存空间。在定义字符型变量时,要用单引号表示,如’s’表示一个字符。但是"s"则表示一个字符串。

使用char关键字可定义字符变量,语法如下:

    char x = 'a';

由于字符a在Unicode表中的排序位置是97,因此允许将上面的语句写成:

    char x = 97;

同C和C++语言一样,Java语言也可以把字符作为整数对待。由于Unicode编码采用无符号编码,可以存储65536个字符(0x0000~0xffff),因此Java中的字符几乎可以处理所有国家的语言文字。若想得到一个0~65536的数所代表的Unicode表中相应位置上的字符,必须使用char型显式转换。

例2:查看字符与Unicode码互转的结果

在项目中创建类char01,编写如下代码,将Unicode表中某些位置上的字符以及一些字符在Unicode表中的位置输出到控制台上。

在这里插入图片描述
运行结果如下:
在这里插入图片描述

String类型为字符串类型,可以用来保存由多个字符组成的文本内容,其用法与字符类型类似,但文本内容需要用双引号标注。

——————————————————————————————————————————————————

1.3.2.转义字符

转义字符是一种特殊的字符变量,它以反斜杠“\”开头,后跟一个或多个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”。例如,printf函数的格式串中用到的“\n”就是一个转义字符,意思是“回车换行”。Java中的转义字符如表所示。

在这里插入图片描述

将转义字符赋值给字符变量时,与字符常量值一样需要使用单引号。

例3:输出’'字符和’★’字符

在这里插入图片描述

运行结果如下:
在这里插入图片描述

——————————————————————————————————————————————————

1.4.布尔类型

布尔类型又称逻辑类型,简称布尔型,通过关键字boolean来定义布尔类型变量。 布尔类型只有true和false两个值,分别代表布尔逻辑中的“真”和“假”。布尔值不能与整数类型进行转换。布尔类型通常被用在流程控制中,作为判断条件。代码如下:

    boolean b;             //定义布尔型变量b boolean b1, b2;      //定义布尔型变量b1、b2boolean b = true;      //定义布尔型变量b,并赋给初值true  

训练1:统计粮仓的粮食 一个圆柱形粮仓,底面直径为10米,高为3米,该粮仓体积为多少立方米?如果每立方米屯粮750千克,该粮仓一共可储存多少千克粮食?

思路:首先要知道体积的计算公式
定义半径和高,套用公式后进行输出结果。

package sevenbus;

public class liangcang {
public static void main (String [] args){
int rad = 10/2; //地面半径
int height = 3 ; //高
double volume = 3.14 * (radrad) * 3; //计算公式体积=π半径2次方*高
double volume1=volume * 750 ;
System.out.println( “该粮仓的体积为:” +volume+“立方米”);
System.out.println(“该粮仓一共可储存:”+volume1+“千克粮食”);
}
}
在这里插入图片描述
在这里插入图片描述

训练2:谁该缴税 员工a与员工b的月薪分别为4500元和5500元,判断哪位员工需要缴纳个人所得税,哪位员工不需要缴纳个人所得税。(假设工资、薪金所得的个税起征点为5000元)

思路:用个税起征点5000和员工a/b做比较。

package sevenbus;

public class geshui1 {
public static void main(String[] args) {
int salaryA = 4500;
int salaryB = 5500;
int standard = 5000;
System.out.println(“员工a的月薪为4500元,员工a是否需要缴税:” + (standard < salaryA));
System.out.println(“员工b的月薪为5500元,员工b是否需要缴税:” + (standard < salaryB));
}
}
在这里插入图片描述
在这里插入图片描述
代码都是比较灵活的,在来一种。

package sevenbus;
public class geshui1 {
public static void main(String[] args) {
int salaryA = 4500;
int salaryB = 5500;
int salaryC = 5000;
if (salaryA <= salaryC) {
System.out.println(“员工A工资为:” + salaryA + “,” + “不需要缴纳个税.”);
}
if (salaryB <= salaryC) {
System.out.println(“员工B工资为:” + salaryB + “,” + “不需要缴纳个税.”);
}
}
}
在这里插入图片描述

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

详解FreeRTOS:FreeRTOS任务删除过程源码分析(进阶篇—2)

本篇博文讲解FreeRTOS中任务删除过程的源代码,帮助各位更好理解删除任务的原理和流程。 在详解FreeRTOS:FreeRTOS任务管理函数(基础篇—11)中,讲述了可以使用vTaskDelete()函数实现删除任务。 函数源码如下: 程序说明如下: (1)、调用函数 prvGetTCBFromHandle()获取要删…

mysql redis的区别

.mysql和redis的数据库类型 mysql是关系型数据库&#xff0c;主要用于存放持久化数据&#xff0c;将数据存储在硬盘中&#xff0c;读取速度较慢。 redis是NOSQL&#xff0c;即非关系型数据库&#xff0c;也是缓存数据库&#xff0c;即将数据存储在缓存中&#xff0c;缓存的读取…

UI 自动化测试框架:PO 模式+数据驱动 【详解版】

目录 1. PO 设计模式简介 什么是 PO 模式&#xff1f; PO 模式的优点 2. 工程结构简介 工程结构 框架特点 3. 工程代码示例 page 包 action 包 business_process 包 util 包 conf 包 1. PO 设计模式简介 什么是 PO 模式&#xff1f; PO&#xff08;PageObject&am…

PHP8中字符串与数组的转换-PHP8知识详解

在php8中使用explode()函数和implode()函数实现字符串和数组之间的转换。 1、使用explode()函数把字符串按照一定的规则拆分为数组中的元素&#xff0c;并且形成数组。 使用explode()函数把字符串转换数组&#xff0c;示范代码&#xff1a; <?php $string "html,cs…

基于webman的CMS,企业官网通用PHP后台管理系统

2023年9月11日10:47:00 仓库地址&#xff1a; https://gitee.com/open-php/zx-webman-website 还有laravelscui的版本目前还未开源&#xff0c;电商laravel版本差不多&#xff0c;后续在移植webman 算是比较标准的phpvue的项目 CMS&#xff0c;企业官网通用PHP后台管理系统 …

数据库 MVCC 详解

目录 1. 什么是 MVCC&#xff1f; 2. MVCC 的好处&#xff1f; 3. 快照读&#xff1f;当前读分别是什么&#xff1f;怎么理解&#xff1f; 3.1 快照读 3.2 当前读 4. MVCC 实现原理 4.1 隐藏字段 4.2 undo log(版本链) 4.3 readView 5. readView 深层详解 6. 数据库…

企业架构LNMP学习笔记49

Redis数据持久化操作&#xff1a; 数据、持久化&#xff08;数据在服务或者软件重启之后不丢失&#xff09;。 如果数据只存储在内存中&#xff0c;肯定会丢失&#xff0c;实现持久化&#xff0c;就需要把数据存储在磁盘中&#xff08;hdd ssd&#xff09;。 memcached在宕机…

数据集笔记:Beijing-BRT-dataset

XMU-smartdsp/Beijing-BRT-dataset (github.com) 1 数据集介绍 这个数据集包含1,280张图片&#xff0c;标注了16,795名行人&#xff0c;用于人群分析。使用720张图片进行训练&#xff0c;560张图片进行测试。名为"frame"的文件夹包含人群图像。 名为"ground_t…

AB试验(三)一次试验的规范流程

AB试验&#xff08;三&#xff09;一次试验的规范流程 一次完整且规范的A/B试验可参考下图&#xff1a; 确定目标和假设 核心&#xff1a;A/B测试是因果推断&#xff0c;所以我们首先要确定原因和结果。目标决定了结果&#xff0c;而假设又决定了原因。 如何确定 分析问题&am…

【适用于电力系统和音频系统】计算信号的总谐波失真 (THD)(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

深眸科技迭代深度学习算法,以AI机器视觉技术扩围工业应用场景

智能制造是制造业数智化转型升级的发展方向&#xff0c;在当前以高端装备制造为核心的工业4.0时代背景下&#xff0c;越来越多的制造企业意识到机器视觉对于提高效率、降低成本&#xff0c;从而提升企业效益的意义。 目前&#xff0c;机器视觉已成为制造业迈向智能制造过程中极…

激光焊如何更准更稳?维视智造激光焊视觉解决方案助力精密制造

激光焊接是一种高能密度、非接触的焊接技术&#xff0c;它利用激光束对工件进行加热和熔化&#xff0c;然后使其在熔池的情况下形成连接。与传统的焊接方法相比&#xff0c;激光焊具有高密度、熔深小、变形小、焊缝质量高、适用性广、自动化程度高等特点&#xff0c;可以实现焊…

【VisualStudio】NuGet包管理器下载缓存packages文件夹过大怎么清理

使用Visual Studio 开发工具时间长了&#xff0c;会发现整个项目的总大小越来越大&#xff0c;默认是存放在电脑系统盘里的&#xff0c;随着Windows11系统常常更新重启&#xff0c;导致系统盘闲置空间越来越小&#xff0c;该怎么办呢。 描述问题 整个解决方案项目会越变越大&…

JVM调优工具

JVM调优工具 Jmap 查看类信息 此命令可以查看内存信息&#xff0c;实例个数以及占用内存大小。 num&#xff1a;序号instances&#xff1a;实例数量bytes&#xff1a;占用空间大小class name&#xff1a;类名称&#xff0c;[C is a char[]&#xff0c;[S is a short[]&#…

Powdersigner + PostgreSql 同步表结构到pg数据库

要用Powdersigner同步表结构到PostgreSql数据库&#xff0c; Powdersigner 版本是 16.5&#xff0c;当前模型是mysql的 1&#xff0c;修改当前模型内容为postgresql的 Database --> Change Current DBMS 选择PostgreSQL 最大版本的&#xff08;因为Powdersigner内置版本一…

Python实现查询一个文件中的pdf文件中的关键字

要求&#xff0c;查询一个文件中的pdf文件中的关键字&#xff0c;输出关键字所在PDF文件的文件名及对应的页数。 import os import PyPDF2def search_pdf_files(folder_path, keywords):# 初始化结果字典&#xff0c;以关键字为键&#xff0c;值为包含关键字的页面和文件名列表…

chrome实用插件分享

colorzilla&#xff08;网页取色器&#xff09; 滴管取色 可以自动获取网页上任何像素或区域的颜色&#xff0c;也可以获取浏览器外部的颜色。 显示元素信息 显示元素的信息&#xff0c;如标签名称、类、id、大小等。 拾色器面板 类似Photoshop软件上的那些功能。 颜色历史…

Delft3D水动力与泥沙运动模拟

目录 第一部分 Delft3D水动力模型的基本原理 第二部分 构建Delft3D模型的基本流程 第三部分 构建Delft3D水动力模型的网格 第四部分 Delft3D水动力模型的运行和后处理 第五部分 Delft3D泥沙运动模型 第六部分 Delft3D泥沙运动模型举例与练习 第七部分 Delft3D泥沙模型进…

山西电力市场日前价格预测【2023-09-20】

日前价格预测 预测说明&#xff1a; 如上图所示&#xff0c;预测明日&#xff08;2023-09-20&#xff09;山西电力市场全天平均日前电价为334.70元/MWh。其中&#xff0c;最高日前电价为391.75元/MWh&#xff0c;预计出现在19: 15。最低日前电价为277.77元/MWh&#xff0c;预计…

如何使用IP归属地查询API来追踪网络活动

引言 在当今数字化世界中&#xff0c;了解网络活动的源头和位置对于网络安全、市场研究和用户体验至关重要。IP归属地查询API是一种强大的工具&#xff0c;可以帮助您追踪网络活动并获取有关IP地址的重要信息。本文将探讨如何使用IP归属地查询API来追踪网络活动&#xff0c;以…