在 Java 里,void 不是“空对象”,而是一个关键字 / 返回类型,表示**“这个方法不返回任何值”**。很多初学者会把它和 null 混淆,这里重点区分一下。
void 是什么void 是方法返回类型public void sayHello() {
System.out.println("Hello");
}
调用:
sayHello(); // 不需要接收返回值
void 方法里能不能用 return?✅ 可以,但不能返回数据
public void test(int x) {
if (x < 0) {
return; // 提前结束方法
}
System.out.println(x);
}
❌ 下面这是错误的:
public void test() {
return 1; // 编译错误
}
void ≠ null这是最容易混淆的点:
| 名称 | 含义 |
|---|---|
void |
方法不返回任何值(类型层面) |
null |
引用类型的“空值” |
String s = null; // 合法
void v = null; // ❌ 编译错误,void 不是类型
void 在哪些地方用?public void print() {}
public Person() {}
@FunctionalInterface
interface MyAction {
void doSomething();
}
使用:
MyAction a = () -> System.out.println("执行");
a.doSomething();
❌ 误以为 void 是“空对象”
✅ void 只是“无返回值”
❌ 认为 void 方法可以 return 值
✅ 只能 return;
❌ 用 void 声明变量
✅ void 不能用于变量
你可能想了解的是:
nullOptionalCollections.emptyList())可以告诉我你是方法返回空、对象为空、还是函数式编程中的 void,我可以更针对性讲。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。