数据类型

简介: 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.

相关文章
|
8月前
|
人工智能 自然语言处理 语音技术
Soul App联合西工大和上交大开源语音合成模型SoulX-Podcast,已登顶Hugging Face TTS趋势榜!
Soul AI Lab联合西工大、上交大开源SoulX-Podcast,支持中英粤川等多语种方言及副语言生成,可稳定输出超60分钟自然流畅的多人对话音频,已在Huggingface登顶TTS趋势榜。
957 0
Soul App联合西工大和上交大开源语音合成模型SoulX-Podcast,已登顶Hugging Face TTS趋势榜!
|
存储 编解码 安全
阿里云高性能企业级甄选Intel第八代计算型c8i、通用型g8i和内存型r8i实例简介
计算型c8i、通用型g8i和内存型r8i实例是阿里云推出的高性能企业级甄选Intel第八代云服务器实例,采用CIPU+飞天技术架构,搭载最新的Intel 第五代至强可扩展处理器(代号EMR),性能进一步大幅提升,同时拥有AMX加持的AI能力增强,并在全球范围率先支持TDX机密虚拟机能力,实现了AI增强和全面安全防护的两大特色优势。本文将为您介绍这三个实例规格的性能、适用场景及最新活动价格以及选择指南,以供选择参考。
641 18
|
Java 测试技术 Android开发
SpringBoot如何写好单元测试
SpringBoot如何写好单元测试
|
算法 C++ 容器
【C++11算法】iota算法
【C++11算法】iota算法
1124 0
|
SQL Java 关系型数据库
SpringBoot+Mybatis Plus+ClickHouse入门教程
SpringBoot+Mybatis Plus+ClickHouse入门教程
1600 0
SpringBoot+Mybatis Plus+ClickHouse入门教程
|
NoSQL Java API
Spring Boot 中集成Redis
主要介绍了 redis 的使用场景、安装过程,以及 Spring Boot 中集成 redis 的详细步骤。在实际项目中,通常都用 redis 作为缓存,在查询数据库的时候,会先从 redis 中查找,如果有信息,则从 redis 中取;如果没有,则从数据库中查,并且同步到 redis 中,下次 redis 中就有了。更新和删除也是如此,都需要同步到 redis。redis 在高并发场景下运用的很多。
|
存储 关系型数据库 数据库
OceanBase数据库常见问题之修改日志盘的数据存储路径后控件不生效如何解决
OceanBase 是一款由阿里巴巴集团研发的企业级分布式关系型数据库,它具有高可用、高性能、可水平扩展等特点。以下是OceanBase 数据库使用过程中可能遇到的一些常见问题及其解答的汇总,以帮助用户更好地理解和使用这款数据库产品。
|
数据采集 机器学习/深度学习 人工智能
python代码大全
python代码大全
584 0
|
人工智能 自然语言处理 搜索推荐
「AIGC」AIGC提供内容生成效率
**AI自动化内容生成**涉及自然语言、图像、视频和音频,如新闻自动生成、GANs创造图像、语音合成和模板化内容。工具如Automated Insights、Articoolo、Synthesia和Replica Studios分别在新闻、视频和音频领域应用。 **内容分发与推广**中,AI提供个性化推荐(如Netflix、Spotify)、社交媒体优化(Buffer、Hootsuite)、自动化广告投放(Google Ads、Facebook Ads),以及SEO优化。
472 0

热门文章

最新文章