当前位置: 首页 > 知识库问答 >
问题:

如何检查int是否为空

慕志泽
2023-03-14

我有一个名为< code>Person的对象。

它有几个属性;

int id;
String name;

我设置了一个person对象,比如< code>Person p = new Person(1,“Joe”);。

1.) 我需要检查对象是否为空;以下表达式是否正确;

if (person == null){
}

Or


if(person.equals(null))

2.)我需要知道ID是否包含Int。

if(person.getId()==null){} 

但是,java不允许这样做。我该怎么办?

共有3个答案

燕鸿波
2023-03-14

原语< code>int不能为空。如果需要null,请使用< code>Integer来代替。

燕翼
2023-03-14

原语没有空值。int的缺省值为0。

if(person.getId()==0){}

java中原语的默认值:

Data Type   Default Value (for fields)

byte                0
short               0
int                 0
long            0L
float           0.0f
double          0.0d
char            '\u0000'
boolean         false

对象的默认值为空。

字符串(或任何对象)

1.) 我需要检查对象是否为空;以下表达式是否正确;

if (person == null){
}

上面的代码段检查 person 是否为空。你需要做

if (person != null){ // checks if person is not null
}

if(person.equals(null))

当person为null时,上面的代码会抛出NullPointerException。

柴岳
2023-03-14

int不是null,如果没有初始化,它可能是0

如果希望整数能够为 null,则需要使用 Integer 而不是 int

Integer id;
String name;

public Integer getId() { return id; }

此外,语句< code > if(person . equals(null))不能为true,因为如果< code>person为null,则会引发< code > NullPointerException 。所以正确的表达式是< code>if (person == null)

 类似资料:
  • 问题内容: 我有一个名为的对象。 它具有几个属性; 我将一个人对象设置为。 1.)我需要检查对象是否不为null;以下表达式正确吗? 2.)我需要知道ID是否包含一个Int。 但是,java不允许这样做。我该如何检查? 问题答案: An 不为null,如果未初始化,则可能为null 。 如果您希望整数可以为null,则需要使用代替。 此外该语句不能为真,因为如果为null,则将抛出a。所以正确的表

  • 抱歉发了“修复我的代码”的帖子 编辑:与循环的语法比质数更相关,现在也解决了。 我的任务是从控制台取一个整数,并打印出(在不同的行上)从1到n的所有素数。我的方法从n开始,检查它的素数,然后将n递增1,并循环直到n=2。为了检查一个数字是否是素数,我运行一个循环,检查跳水的余数x等于零,x从2开始,停止在根(n)。现在这一切在理论上都是可行的,阅读我的代码,我看不出哪里出错了。 例如,输入10将返

  • 问题内容: 如何检查是否为空? 问题答案: 您自己说过的,请检查它是: 看,PHP非常简单。您可以简单地写下您的想法;) 这种方法很安全。如果未设置(可能,但可能),则可能会给您提供未定义的变量E_NOTICE 。

  • 我需要在JPA查询中传递这个参数。 我如何才能实现这一点,而不是为IS NULL&IS NOT NULL创建2个单独的查询。

  • 问题内容: 如何检查大pandas是否为空?就我而言,如果终端为空,我想在终端打印一些消息。 问题答案: 您可以使用该属性检查其是否为空: 资料来源:pandas文件

  • 问题内容: 作为非终端操作,我如何检查a 是否为空,如果不是则抛出异常? 基本上,我在寻找与下面的代码等效的东西,但是没有在它们之间实现流。特别是,检查不应在终端操作实际消耗流之前进行。 问题答案: 如果您可以使用有限的并行功能,则以下解决方案将起作用: 这是一些使用它的示例代码: (有效的)并行执行的问题在于,支持对的拆分需要一种线程安全的方式来注意是否有任何片段以线程安全的方式看到了任何值。然