基本数据类型

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。

相关推荐
yaoh.wang1 天前
力扣(LeetCode) 1: 两数之和 - 解法思路
python·程序人生·算法·leetcode·面试·跳槽·哈希算法
APIshop1 天前
Java爬虫1688详情api接口实战解析
java·开发语言·爬虫
Code Slacker1 天前
LeetCode Hot100 —— 滑动窗口(面试纯背版)(四)
数据结构·c++·算法·leetcode
brave and determined1 天前
CANN训练营 学习(day8)昇腾大模型推理调优实战指南
人工智能·算法·机器学习·ai实战·昇腾ai·ai推理·实战记录
Evan芙1 天前
Tomcat内存机制以及按场景调优
java·tomcat
总爱写点小BUG1 天前
打印不同的三角形(C语言)
java·c语言·算法
yaoh.wang1 天前
力扣(LeetCode) 27: 移除元素 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·双指针
2401_841495641 天前
【自然语言处理】中文 n-gram 词模型
人工智能·python·算法·自然语言处理·n-gram·中文文本生成模型·kneser-ney平滑
星辰烈龙1 天前
黑马程序员Java基础9
java·开发语言
山沐与山1 天前
【Redis】Redis集群模式架构详解
java·redis·架构