Scala 查找数组的第一个空值[Int]

Scala 查找数组的第一个空值[Int],scala,testing,null,Scala,Testing,Null,我正在使用scala,但如何测试值是否为null?特别是在数组中[Int] 在java中,它是: if( tab[i] == null ) 在scala上,同样的测试,ide说: comparing values of types Int and Null using `==' will always yield false 从文档中感谢您: Null不是值类型的子类型 如果打开Scala会话并创建一个包含5个元素的数组[Int],您可以看到它们都被初始化为默认值0: val a:Array

我正在使用scala,但如何测试值是否为null?特别是在数组中[Int]

在java中,它是:

if( tab[i] == null )
在scala上,同样的测试,ide说:

comparing values of types Int and Null using `==' will always yield false
从文档中感谢您

Null不是值类型的子类型

如果打开Scala会话并创建一个包含5个元素的
数组[Int]
,您可以看到它们都被初始化为默认值
0

val a:Array[Int]=新数组[Int](5)
//>a:Array[Int]=数组(0,0,0,0,0)
因此,要找到第一个未初始化的元素,假设
0
不是数组的有效值,则只需执行
0
的索引,要测试单个元素,只需测试谓词
a(i)==0
,例如:

val a: Array[Int] = new Array[Int](5)             
  //> a  : Array[Int] = Array(0, 0, 0, 0, 0)
//  set some dummy elements for the first few entries
for (i <- 0 to 3) a(i) = (i+ 1)
// find the entry
a indexOf 0                                       
  //> res0: Int = 4
a map (_ == 0)                                    
  //> res1: Array[Boolean] = Array(false, false, false, false, true)
val a:Array[Int]=新数组[Int](5)
//>a:Array[Int]=数组(0,0,0,0,0)
//为前几个条目设置一些虚拟元素
对于(i res0:Int=4
映射(==0)
//>res1:Array[Boolean]=数组(false,false,false,false,true)
来自以下文档:

Null不是值类型的子类型

如果打开Scala会话并创建一个包含5个元素的
数组[Int]
,您可以看到它们都被初始化为默认值
0

val a:Array[Int]=新数组[Int](5)
//>a:Array[Int]=数组(0,0,0,0,0)
因此,要找到第一个未初始化的元素,假设
0
不是数组的有效值,则只需执行
0
的索引,要测试单个元素,只需测试谓词
a(i)==0
,例如:

val a: Array[Int] = new Array[Int](5)             
  //> a  : Array[Int] = Array(0, 0, 0, 0, 0)
//  set some dummy elements for the first few entries
for (i <- 0 to 3) a(i) = (i+ 1)
// find the entry
a indexOf 0                                       
  //> res0: Int = 4
a map (_ == 0)                                    
  //> res1: Array[Boolean] = Array(false, false, false, false, true)
val a:Array[Int]=新数组[Int](5)
//>a:Array[Int]=数组(0,0,0,0,0)
//为前几个条目设置一些虚拟元素
对于(i res0:Int=4
映射(==0)
//>res1:Array[Boolean]=数组(false,false,false,false,true)
来自以下文档:

Null不是值类型的子类型

如果打开Scala会话并创建一个包含5个元素的
数组[Int]
,您可以看到它们都被初始化为默认值
0

val a:Array[Int]=新数组[Int](5)
//>a:Array[Int]=数组(0,0,0,0,0)
因此,要找到第一个未初始化的元素,假设
0
不是数组的有效值,则只需执行
0
的索引,要测试单个元素,只需测试谓词
a(i)==0
,例如:

val a: Array[Int] = new Array[Int](5)             
  //> a  : Array[Int] = Array(0, 0, 0, 0, 0)
//  set some dummy elements for the first few entries
for (i <- 0 to 3) a(i) = (i+ 1)
// find the entry
a indexOf 0                                       
  //> res0: Int = 4
a map (_ == 0)                                    
  //> res1: Array[Boolean] = Array(false, false, false, false, true)
val a:Array[Int]=新数组[Int](5)
//>a:Array[Int]=数组(0,0,0,0,0)
//为前几个条目设置一些虚拟元素
对于(i res0:Int=4
映射(==0)
//>res1:Array[Boolean]=数组(false,false,false,false,true)
来自以下文档:

Null不是值类型的子类型

如果打开Scala会话并创建一个包含5个元素的
数组[Int]
,您可以看到它们都被初始化为默认值
0

val a:Array[Int]=新数组[Int](5)
//>a:Array[Int]=数组(0,0,0,0,0)
因此,要找到第一个未初始化的元素,假设
0
不是数组的有效值,则只需执行
0
的索引,要测试单个元素,只需测试谓词
a(i)==0
,例如:

val a: Array[Int] = new Array[Int](5)             
  //> a  : Array[Int] = Array(0, 0, 0, 0, 0)
//  set some dummy elements for the first few entries
for (i <- 0 to 3) a(i) = (i+ 1)
// find the entry
a indexOf 0                                       
  //> res0: Int = 4
a map (_ == 0)                                    
  //> res1: Array[Boolean] = Array(false, false, false, false, true)
val a:Array[Int]=新数组[Int](5)
//>a:Array[Int]=数组(0,0,0,0,0)
//为前几个条目设置一些虚拟元素
对于(i res0:Int=4
映射(==0)
//>res1:Array[Boolean]=数组(false,false,false,false,true)


Int不能为空。Java
Int
也不能为空。例如,在大小为15的数组中,只有11个第一个元素用值初始化。如何测试第12个值。我想找到数组[Int]的第一个空值如果不初始化
Int
,它将被初始化为
0
Array[Int]
是原始Int,尽管通常是
C[A]
其中一个是Int将导致装箱到整数。原语Int的默认值是0。啊,谢谢你,很抱歉这个愚蠢的问题,
Int
不能为null。Java
Int
也不能为null。例如,在一个大小为15的数组中,只有11个第一个元素用值初始化。我如何测试第12个值。我想找到第一个值数组[Int]的空值如果不初始化
Int
,它将被初始化为
0
Array[Int]
是基本Int,但通常
C[a]
其中一个是Int将导致装箱到整数。原语Int的默认值是0。啊,谢谢你,很抱歉这个愚蠢的问题,
Int
不能为null。Java
Int
也不能为null。例如,在一个大小为15的数组中,只有11个第一个元素用值初始化。我如何测试第12个值。我想找到第一个值数组[Int]的空值如果不初始化
Int
,它将被初始化为
0
Array[Int]
是基本Int,但通常
C[a]
其中一个是Int将导致装箱到整数。原语Int的默认值是0。啊,谢谢你,很抱歉这个愚蠢的问题,
Int
不能为null。Java
Int
也不能为null。例如,在一个大小为15的数组中,只有11个第一个元素用值初始化。我如何测试第12个值。我想找到第一个值数组[Int]的空值如果不初始化
Int
,它将被初始化为
0
Array[Int]
是基元Int,尽管通常
C[a]
其中a是Int会导致装箱到整数。基元Int的默认值是0。谢谢你,抱歉这个愚蠢的问题