基本数据类型

Java中共三种基本数据类型:数值型、字符型、布尔型

数值类型

类型名称 大小 / 格式 范围 说明
整数类型
byte 8 bit -128 ~ 127 位元組整数
short 16 bit -32768 ~ 32767 短整型
int(常用) 32 bit -2147483648 ~ 2147483647 整型
long 64 bit -9223372036854775808 ~ 9223372036854775807 长整型
实数类型(浮点数)
float 32 bit 七位小数 单精度浮点数
double (常用) 64 bit 十五位小数 双精度浮点数
[数值类型]

数值字面量 :字面量是在程序中直接出现的基本类型的数据值。

• int i = 34;

• long l = 1000000L;

• float f = 100.2f; 或 float f = 100.2F; f/F不能省

• double d = 100.2d; 或 double d = 100.2D; d/D可以省

注意:整数型字面量默认是int类型,

浮点型字面量默认为double类型。

字符类型

• 字符数据类型char用于表示单个字符。如:

char c = 'A';

char c = '4';

char c = 98; char c = '\\' 第一个\代表转义字符

布尔类型

布尔数据类型来自布尔代数,它的值域包括两个值: true(真)和 false (假)。

• boolean lightsOn = true;

• boolean lightsOn = false;

数值类型转换

数值类型精度由高到低排序:

• double

• float

• long

• int

• short

• byte

将低精度的值赋给高精度类型的变量(由低向高转)

double i=10;

• 10为低精度(字面量int类型)

• i为高精度double类型

低向高转为自动转换

将高精度的值赋给低精度类型的变量(由高向低转)

int i=10.1;

• 10.1为高精度(字面量double类型)

• i为低精度int类型 高向低转为强制类型转换:int i = (int)10.1

(int)为强制类型转换

Java中当两个类型不同的运算对象进行二元运算时,Java 自动 把精度较低的 类型转换成另一个精度较高的类型。

操作数中:

**1、**如果有double类型为最高精度数据,则都会转换成double类型;

**2、**如果有float类型为最高精度数据,则都会转换成float类型;

**3、**如果有long类型为最高精度数据,则都会转换成long类型;

**4、**其他的低精度运算(byte, short, char, int)

• byte、short、 char、int在一起运算,自动提升为int;

• byte short char 互相运算,也自动提升为int。

相关推荐
karry_k25 分钟前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
karry_k32 分钟前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端
vibecoding日记2 小时前
双非如何快速入职字节等大厂大模型?真实案例分析:推理优化和投机解码
算法·求职·大模型工程师
yszaygr21384 小时前
Verilog参数化游程编码RLE模块
算法
SamDeepThinking4 小时前
从源码到代码:MyBatis-Flex 与 MyBatis-Plus 的逐项对比
java·后端·程序员
望易4 小时前
刚设计的大模型架构-双域耦合认知框架
算法·架构
她的男孩7 小时前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
复杂网络8 小时前
多个 Claude Code 与多个 Codex 协同工作:设计与实现方案
算法
荣码9 小时前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python