null
和0
和有什么区别nothing
?
我找不到解决所有这三个问题的问题。
例如:
如果我从 a 获取输入string
并将其解析为int
.
return Integer.parseInt(sc.nextLine());
或者,如果我问的是 astring != ""
还是 a,is not nothing
我对何时以及为什么使用哪个感到困惑。
我对在验证数据时使用哪一个感到困惑。
null
意味着变量包含对内存中不包含对象的空间的引用。
0
是数值数据类型,值为 0。
Nothing
并不存在,但是我认为您可能将其视为一个空字符串""
,它只是一种String
不包含值的数据类型。
如果你从一个Javascript
范式来看这个,它可能会令人困惑。在 Java 中,变量不是真假,因此在比较时会考虑类型。
0 是一个数字,您可以使用它来检查数值(int、short、float、double 等)是否为数字 0。
null
是无处指向的引用的值,您使用它来确保引用确实引用了某些东西。
nothing
不是Java的一部分。
最接近无用的事情(因为:根本没有信息)是void
方法的声明。它声明该方法实际上没有返回任何内容。
请注意,0null
和空字符串""
是值,因此包含信息。
例如,0 是“5 减去 5 是多少?”的答案。(除其他外)。
null
是对“这东西指向一个物体吗?”的否定回答。
""
” 可能是“你的名字中最长的‘X’序列是什么?”的答案,除非你的名字是“Xanthippe”。
Java 中没有“无”。有一个null
引用,意思是一个变量不引用任何对象,所以它是一种无,但undefined
在Javascript中没有as it is的概念。
另外,请注意String
应该使用equals
, not !=
or ==
, so进行比较string.equals(otherString)
。
该0
值是 anint
在声明为实例变量时获得的默认值。
"Null"
在 Java 中,对象引用没有指向任何对象,它是空的。
"Nothing"
,Java没有什么叫做“Nothing”
"0"
表示 .string 对象存在,值为“0”
""
表示一个空字符串,即字符串对象存在值“”
“无”在 Java 中没有任何意义。
0 表示大于 -1 且小于 1 的整数值。
“Null”表示如果任何对象引用在内存中无处指向,则称为“Null”引用。
在 Java 中检查 String 对象的最佳方法是使用 org.apache.commons.lang.StringUtils。
如果您不想使用StringUtils
,您可能需要首先检查它sc.nextList()
是否为空(!= null
),如果它不为空,那么您可以检查它与“”(!= ""
)是否不同。
例如:
int s; //s=null
int s = 0 ; //s=0
String s="";// s=nothing
Null 变量未分配任何值。(变量的)内存空间为空或保存垃圾值。当变量为 0 时,该变量保存值“0”。内存空间中存储了值“0”。
NULL 基本上意味着没有值,或者未知,NULL 值可能是空的、无意义的,甚至没有初始化。例如,当我们说员工奖金为空时,这意味着该人没有获得任何奖金或没有资格获得奖金。现在,如果值为 0,则意味着员工获得奖金但当前奖金为零。