数据类型

简介: Java数据类型分基本与引用两类,基本类型含四类八种:整数、浮点、字符、布尔。取值范围从小到大为byte→short→int→long→float→double,long和float赋值需加L/F标识。运算时小范围自动提升为大范围(隐式转换),反之需强制转换。字符串参与“+”即为拼接,字符运算按ASCII码转数字。扩展赋值如+=隐含强制类型转换。关系运算结果为boolean。逻辑运算符&&和||具有短路特性,提高效率。

数据类型:

Java语言的数据类型分为: 基本数据类型, 引用数据类型

基本数据类型的四类八钟(整数,浮点数,字符,布尔)

byte的取值范围: -128~127

整数和小数取值范围大小关系:

double>float>long>int>short>byte

long类型变量:需要加入L标识(大小写都可以)

float类型变量:需要加入F标识(大小写都可以)

六种运算符:

算术运算符, 自增自减运算符, 赋值运算符, 关系运算符, 逻辑运算符, 三元运算符

算术运算符

结论:

1,数字进行运算时,数据类型不一样不能运算,需要转成一样的,才能运算.

类型转换的分类:

1,隐式转换:取值范围小的数转化为取值范围大的数;

2,强制转换:取值范围大的数转化为取值范围小的数

隐式转换(规则):

1,取值范围小的,和取值范围大的进行运算,小的会先提升为大的,再进行运算

2,byte short char三种类型的数据再运算的时候,都会直接先提升为int,然后再进行运算

强制转换:

1,如果把一个取值范围大的数值,赋给取值范围小的变量.是不允许直接赋值的,如果一定要那么做就需要加入强制转换

2,格式: 目标数据类型 变量名 = (目标数据类型) 被强转的数据;

(要转成什么样的数据类型就写在括号里)

3,数据过大进行强转就会发生错误,输出错误的答案

取值范围从小到大:

byte->short->int->long->float->double

字符串"+"操作

1,当"+"操作中出现字符串时,这个"+"是字符串连接符,而不是算术运算符了.会将前后的数据进行拼接,并产生一个新的字符串.

例如 "123" + 123 结果是"123123"

2,连续进行"+"操作时,从左到右逐个进行.

例如: 1 + 99 + "黑马" 结果是"100黑马"

只要有字符串参与+就是拼接的作用

字符 + 字符 (或者 字符 + 数字) 时,会把字符通过ASCII码表查询到对应的数字再进行计算.

扩展的赋值运算符隐含了强制类型转换

例如:

//+=, -=, *=, /=, %= 底层都隐藏了一个强制类型转换

short s = 1;

//把左边和右边进行相加, 得到结果2, 再赋值给左边的变量

s += 1;

//等同于: s = (short) (s + 1);

关系运算符 == != > >= < <=

注意: 关系运算符的结果都是boolean类型, 要么是true, 要么是false. 千万不要把"=="误写成"=".

逻辑运算符

&, |, ^, !

注意事项:

1, & |, 无论左边 true false, 右边都要执行.

2, && ||,如果左边能确定整个表达式的结果,右边不执行.

​ &&: 左边为false,右边不管是真是假,整个表达式的结果一定是false.

​ ||:左边为true,右边不管是是真是假,整个表达式的结果一定是true.

相关文章
|
2月前
|
人工智能 自然语言处理 语音技术
Soul App联合西工大和上交大开源语音合成模型SoulX-Podcast,已登顶Hugging Face TTS趋势榜!
Soul AI Lab联合西工大、上交大开源SoulX-Podcast,支持中英粤川等多语种方言及副语言生成,可稳定输出超60分钟自然流畅的多人对话音频,已在Huggingface登顶TTS趋势榜。
540 0
Soul App联合西工大和上交大开源语音合成模型SoulX-Podcast,已登顶Hugging Face TTS趋势榜!
|
Java 数据库连接 数据库
springboot 集成kingbase的步骤
要在Spring Boot中集成Kingbase数据库,你可以按照以下步骤进行操作: 步骤1:添加Kingbase JDBC驱动 首先,将Kingbase JDBC驱动程序添加到Spring Boot项目的依赖项中。你可以在Maven或Gradle构建文件中添加以下依赖项(根据你使用的构建管理工具进行选择): 对于Maven: ```xml <dependency> <groupId>com.kingbase</groupId> <artifactId>kingbase-driver</artifactId> <version>{驱动版本}</version> </
2205 0
|
Java 测试技术 Android开发
SpringBoot如何写好单元测试
SpringBoot如何写好单元测试
|
Python
利用Python判断一个数是否在列表中
利用Python判断一个数是否在列表中
1340 0
|
Kubernetes 负载均衡 应用服务中间件
k8s学习--ingress详细解释与应用(nginx ingress controller))
k8s学习--ingress详细解释与应用(nginx ingress controller))
2406 0
|
数据采集 存储 分布式计算
ClickHouse大规模数据导入优化:批处理与并行处理
【10月更文挑战第27天】在数据驱动的时代,高效的数据导入和处理能力是企业竞争力的重要组成部分。作为一位数据工程师,我在实际工作中经常遇到需要将大量数据导入ClickHouse的需求。ClickHouse是一款高性能的列式数据库系统,非常适合进行大规模数据的分析和查询。然而,如何优化ClickHouse的数据导入过程,提高导入的效率和速度,是我们面临的一个重要挑战。本文将从我个人的角度出发,详细介绍如何通过批处理、并行处理和数据预处理等技术优化ClickHouse的数据导入过程。
1427 0
|
XML Java 关系型数据库
SpringBoot整合ClickHouse
SpringBoot整合ClickHouse
1572 0
|
关系型数据库 API 数据库
又一款国产接口管理平台 上线了,YesApi接口大师 v5.4.0
YesApi接口大师,作为国产接口管理平台,基于国产的PhalApi开源接口和Vue前后端分离开发。是一套针对API接口进行快速研发、管理、开放以及收费的软件系统、源代码和解决方案。 提供:包含 API管理后台 / 开放平台 / OpenAPI 等; 支持:API接口开发 零代码 / 低代码 / 纯代码 / 迁移导入; 支持:数据库 MySQL / MsServer / PostgreSQL / Oracle等;
|
存储 关系型数据库 数据库
OceanBase数据库常见问题之修改日志盘的数据存储路径后控件不生效如何解决
OceanBase 是一款由阿里巴巴集团研发的企业级分布式关系型数据库,它具有高可用、高性能、可水平扩展等特点。以下是OceanBase 数据库使用过程中可能遇到的一些常见问题及其解答的汇总,以帮助用户更好地理解和使用这款数据库产品。
|
SQL Java 关系型数据库
SpringBoot+Mybatis Plus+ClickHouse入门教程
SpringBoot+Mybatis Plus+ClickHouse入门教程
1461 0
SpringBoot+Mybatis Plus+ClickHouse入门教程