Scala 将数组转换为WrappedArray

Scala 将数组转换为WrappedArray,scala,Scala,我尝试使用WrappedArray并将其初始化为null var classes:WrappedArray [String]= null var classe = ENTEleveClasses.apply(0) if(!classe.isEmpty()) { var cls = classe.split(",") for(c <- cls){ classes = classes :+ c //

我尝试使用WrappedArray并将其初始化为null

var classes:WrappedArray [String]= null
 var classe = ENTEleveClasses.apply(0)
         if(!classe.isEmpty()) {
           var cls = classe.split(",")
           for(c <- cls){
             classes =   classes :+ c  //  the error 
           }
           classes
         }else ENTEleveClasses
当我添加一个WrappedArray元素时,发生了一个错误


谢谢

当我将一个元素添加到包装中时,出现了一个错误

您并没有将元素添加到WrappedArray,而是将元素添加到null值,这确实是不可能的,并生成一个NPE


要向WrappedArray添加元素,您必须实际提供一个元素,因此使用
var-classes:WrappedArray[String]=null
,而不是
var-classes:WrappedArray[String]=new-WrappedArray()
(我不确定WrappedArray的构造函数是什么,您可能需要更改它!)

您应该始终避免使用
null
初始化变量,因为这会导致大量
NullPointerException

您应该将
WrappedArray
类初始化为

var classes:mutable.WrappedArray [String]= mutable.WrappedArray.empty[String]

谢谢@Ramesh,我删除了mutable,这样变量就变成了var类:WrappedArray[String]=WrappedArray.empty[String]我很高兴它帮助了你@MounirHamdane:)一次投票也会帮助我:)“甚至会破坏整个系统。”?@JosiahYoder
var classes:mutable.WrappedArray [String]= mutable.WrappedArray.empty[String]