Java 提供了8种基本数据类型及封装类型介绍

Java 基本数据类型及封装类型详解

Java 提供了8种基本数据类型,每种都有对应的封装类型(包装类)。以下是详细介绍:

1. byte (8位)

java 复制代码
// 基本类型
byte b1 = 100;
byte b2 = -50;

// 封装类型 - 支持自动装箱
Byte byteObj1 = Byte.valueOf((byte) 100);
Byte byteObj2 = (byte) 100; // 自动装箱

// 使用和打印
System.out.println("byte基本类型 b1: " + b1);
System.out.println("byte封装类型 byteObj1: " + byteObj1);
System.out.println("byte最大值: " + Byte.MAX_VALUE);
System.out.println("byte最小值: " + Byte.MIN_VALUE);

2. short (16位)

java 复制代码
// 基本类型
short s1 = 1000;
short s2 = -2000;

// 封装类型 - 支持自动装箱
Short shortObj1 = Short.valueOf((short) 1000);
Short shortObj2 = (short) 1000; // 自动装箱

// 使用和打印
System.out.println("short基本类型 s1: " + s1);
System.out.println("short封装类型 shortObj1: " + shortObj1);
System.out.println("short最大值: " + Short.MAX_VALUE);

3. int (32位)

java 复制代码
// 基本类型
int i1 = 100000;
int i2 = -50000;

// 封装类型 - 支持自动装箱
Integer intObj1 = Integer.valueOf(100000);
Integer intObj2 = 100000; // 自动装箱

// 使用和打印
System.out.println("int基本类型 i1: " + i1);
System.out.println("int封装类型 intObj1: " + intObj1);
System.out.println("int最大值: " + Integer.MAX_VALUE);

4. long (64位)

java 复制代码
// 基本类型
long l1 = 100000L; // 注意L后缀
long l2 = 123456789012345L;

// 封装类型 - 支持自动装箱
Long longObj1 = Long.valueOf(100000L);
Long longObj2 = 100000L; // 自动装箱

// 使用和打印
System.out.println("long基本类型 l1: " + l1);
System.out.println("long封装类型 longObj1: " + longObj1);
System.out.println("long最大值: " + Long.MAX_VALUE);

5. float (32位)

java 复制代码
// 基本类型
float f1 = 3.14f; // 注意f后缀
float f2 = 1.23e2f; // 科学计数法

// 封装类型 - 支持自动装箱
Float floatObj1 = Float.valueOf(3.14f);
Float floatObj2 = 3.14f; // 自动装箱

// 使用和打印
System.out.println("float基本类型 f1: " + f1);
System.out.println("float封装类型 floatObj1: " + floatObj1);
System.out.println("float最大值: " + Float.MAX_VALUE);

6. double (64位)

java 复制代码
// 基本类型
double d1 = 3.14159;
double d2 = 1.23e-4; // 科学计数法

// 封装类型 - 支持自动装箱
Double doubleObj1 = Double.valueOf(3.14159);
Double doubleObj2 = 3.14159; // 自动装箱

// 使用和打印
System.out.println("double基本类型 d1: " + d1);
System.out.println("double封装类型 doubleObj1: " + doubleObj1);
System.out.println("double最大值: " + Double.MAX_VALUE);

7. char (16位)

java 复制代码
// 基本类型
char c1 = 'A';
char c2 = '\u0041'; // Unicode编码
char c3 = 65; // ASCII码

// 封装类型 - 支持自动装箱
Character charObj1 = Character.valueOf('A');
Character charObj2 = 'A'; // 自动装箱

// 使用和打印
System.out.println("char基本类型 c1: " + c1);
System.out.println("char封装类型 charObj1: " + charObj1);
System.out.println("char数值: " + (int)c1);

8. boolean (1位)

java 复制代码
// 基本类型
boolean flag1 = true;
boolean flag2 = false;

// 封装类型 - 支持自动装箱
Boolean boolObj1 = Boolean.TRUE;
Boolean boolObj2 = false; // 自动装箱

// 使用和打印
System.out.println("boolean基本类型 flag1: " + flag1);
System.out.println("boolean封装类型 boolObj1: " + boolObj1);

关于 decimal 类型

Java 标准库中没有 decimal 基本数据类型。如果需要高精度的十进制计算,可以使用 BigDecimal 类:

java 复制代码
import java.math.BigDecimal;

BigDecimal decimal1 = new BigDecimal("10.5");
BigDecimal decimal2 = BigDecimal.valueOf(20.3);

System.out.println("BigDecimal值 decimal1: " + decimal1);
System.out.println("BigDecimal值 decimal2: " + decimal2);

Java BigDecimal 与 SQL Server 类型映射

BigDecimal 可以映射到 SQL Server 的以下类型:

  1. decimal - 最常用映射,完全匹配
  2. numeric - 与 decimal 等价,可互换使用
  3. money - 用于货币值存储
  4. smallmoney - 用于较小范围的货币值

这种映射保证了在数据库操作中数值的精确性和完整性,特别适用于金融计算等对精度要求极高的场景。

相关推荐
数据知道9 小时前
PostgreSQL实战:详解如何用Python优雅地从PG中存取处理JSON
python·postgresql·json
island13149 小时前
CANN GE(图引擎)深度解析:计算图优化管线、内存静态规划与异构 Stream 调度机制
c语言·开发语言·神经网络
云姜.9 小时前
线程和进程的关系
java·linux·jvm
是码龙不是码农9 小时前
支付防重复下单|5 种幂等性设计方案(从初级到架构级)
java·架构·幂等性
曹牧9 小时前
Spring Boot:如何在Java Controller中处理POST请求?
java·开发语言
heartbeat..9 小时前
JVM 性能调优流程实战:从开发规范到生产应急排查
java·运维·jvm·性能优化·设计规范
浅念-9 小时前
C++入门(2)
开发语言·c++·经验分享·笔记·学习
WeiXiao_Hyy9 小时前
成为 Top 1% 的工程师
java·开发语言·javascript·经验分享·后端
ZH15455891319 小时前
Flutter for OpenHarmony Python学习助手实战:面向对象编程实战的实现
python·学习·flutter
玄同7659 小时前
SQLite + LLM:大模型应用落地的轻量级数据存储方案
jvm·数据库·人工智能·python·语言模型·sqlite·知识图谱