【JavaSE】:数据类型

数据类型

一.总体概论

在Java中数据类型主要分为两类:基本数据类型和引用数据类型

不论是在16位系统还是32位系统,int都占用4个字节,long都占8个字节 。

整形和浮点型都是带有符号的。

整型默认为int型,浮点型默认为double 字符串属于引用类型,该中类型后序介绍。

二.java里与c的区别

1.float

在java和c里1.5都被默认认为是double类型,但是c里这个代码是能够通过的,因为它可以发生截断。在java里这个代码是不被允许的,因为java不允许发生截断。

2.char

在c语言里char类型是4个字节(发生截断后变为1个字节,可以看看我的字符和字符串博客),但在java里char被解释成两个字节。例如;它可以存中文。

3.boolen

在c语言中0表示假,非0表示真。但在java中只有true表示真,只有flase表示假。

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

三.类型转换

Java 作为一个强类型编程语言, 当不同类型之间的变量相互赋值的时候, 会有教严格的校验.

简单来说就是小范围可以隐式转变为大类型,而大类型只能显示强转成小类型。不相干的类型之间不能进行转换。

类型提升

b是long,a是int,当他们进行运算时,a会被提升为long类型,所以用int类型去接收就是大类型转换小类型,在java里是错误的。

byte 和 byte 都是相同类型, 但是出现编译报错. 原因是, 虽然 a 和 b 都是 byte, 但是计算 a + b 会先将 a和 b 都提升成 int, 再进行计算, 得到的结果也是 int, 这是赋给 c,就会出现上述错误.

由于计算机的 CPU 通常是按照 4 个字节为单位从内存中读写数据. 为了硬件上实现方便, 诸如 byte 和 short这种低于 4 个字节的类型, 会先提升成 int, 再参与计算。

四.String类型

java里的字符串没有以/0结尾,它是按照字符个数打印的。

字符串可以直接通过+进行拼接(字符串拼接任何类型都是字符串)。

int转string

string转int

相关推荐
letisgo55 小时前
JAVA 高级进阶05篇《Spring容器机制:Bean生命周期与三级缓存全解》
java·spring·面试·ioc·源码分析
岁月如歌77865 小时前
分布式锁完全指南:从数据库到 Redisson 的演进
java·后端·架构
AI深栈5 小时前
第 8 章 · Tool Calling 与 Tool Search
java·人工智能
写后端的胖头鱼5 小时前
【高频面试题】spring事物失效场景(带原理 + 代码示例)
java·后端·spring·事务·事物失效
小孩玩什么5 小时前
深入理解字符串匹配算法:BF算法,KMP算法
java·c语言·开发语言·数据结构·c++·算法
长谷深风1115 小时前
Agent执行系统中的身份与版本设计
java·大数据·人工智能·ai·大模型·task·aiagent
Wang's Blog5 小时前
Java框架快速入门: Spring Security+OAuth2之UserDetails与JDBC认证实践
java·网络·spring
爱从未走散5 小时前
面试八股题
java·面试·职场和发展
艺杯羹5 小时前
AI编程时代软件工程怎么学:从底层思维认知到驱动智能体的架构跃迁
java·人工智能·ai·架构·软件工程·ai编程
土司大王5 小时前
LeetCode hot100——51.N 皇后:Java 回溯模板、列与对角线剪枝、O(n!) 复杂度分析
java·leetcode·剪枝