在Java中,将`Short`(包装类)或`short`(基本类型)转换为`int`

在Java中,将Short(包装类)或short(基本类型)转换为int有以下几种常用方法:

1. 自动拆箱 + 自动类型提升(最常用)

java 复制代码
Short shortObj = 100;
short shortPrimitive = 200;

// 自动拆箱 + 自动类型提升
int intValue1 = shortObj;        // Short → int
int intValue2 = shortPrimitive;  // short → int

2. 显式调用方法

java 复制代码
Short shortObj = 100;
short shortPrimitive = 200;

// 使用intValue()方法
int intValue1 = shortObj.intValue();

// 使用强制类型转换(实际上不需要,因为short可以自动提升为int)
int intValue2 = (int) shortPrimitive;

3. 处理可能为null的情况

java 复制代码
Short shortObj = null;

// 方法1:使用三元运算符
int intValue1 = shortObj != null ? shortObj : 0;

// 方法2:使用Optional
int intValue2 = Optional.ofNullable(shortObj).orElse((short)0).intValue();

// 方法3:使用Objects.requireNonNullElse(Java 9+)
int intValue3 = Objects.requireNonNullElse(shortObj, (short)0);

4. 字符串转换场景

java 复制代码
String str = "123";
Short shortObj = Short.parseShort(str);  // 先转成Short
int intValue = shortObj.intValue();      // 再转成int

// 或者直接
int intValue = Integer.parseInt(str);    // 直接转成int

推荐做法

日常开发中最推荐使用第一种方法(自动拆箱 + 自动类型提升),因为:

  • 代码简洁
  • 性能良好
  • 可读性强

只有在需要处理null值等特殊情况下,才需要考虑其他方法。

相关推荐
摇滚侠1 分钟前
IDEA 新建 JavaWeb 项目 Tomcat 和 Servlet
java·ide·intellij-idea
码客日记12 分钟前
Spring Boot 全局跨域配置与前后端联调避坑
java·spring boot·后端
兰令水30 分钟前
leecodecode【回溯子集】【2026.6.4打卡-java版本】
java·开发语言·深度优先
fox_lht32 分钟前
14.3.重构
开发语言·后端·rust
牛油果子哥q1 小时前
【C++ const 】全场景深度精讲:修饰规则、底层常量折叠、指针 / 引用 / 成员函数实战、易错坑点与工程代码实现
开发语言·c++
闪电悠米1 小时前
黑马点评-Redisson-02_reentrant_lock
java·spring boot·redis·分布式·缓存
云烟成雨TD1 小时前
Spring AI Alibaba 1.x 系列【67】ReactAgent SSE 流式输出
java·人工智能·spring
天天进步20151 小时前
Python全栈项目--社区问答平台
开发语言·python·django
我登哥MVP1 小时前
Spring Boo从“会用”到“精通”:Spring Boot 入门
java·spring boot·后端·spring·maven·intellij-idea·mybatis
skywalk81631 小时前
Tree-sitter是一个解析器生成器工具和一个增量解析库。它可以为源文件构建具体的语法树,并在编辑源文件时有效地更新语法树
开发语言·编程