Wie Kann ich Überprüfen, ein Objekt zu Sehen, seine Art und Rückkehr Eine Umgewandelte Objekt

Habe ich eine Methode, durch welche ich ein Objekt übergeben. In dieser Methode überprüfe ich es geben und je nach der Art Mach ich was damit und eine Lange. Ich habe versucht, in jeder Weise, die ich denken kann, dies zu tun und ich bekomme immer mehrere compiler-Fehler sagte mir, dass es erwartet, dass ein bestimmtes Objekt, sondern bekommt eine andere. Kann mir jemand bitte erklären, was ich falsch mache und mich in die richtige Richtung? Was ich versucht habe so weit unten ist:

  override def getInteger(obj:Object) = {
    if (obj.isInstanceOf[Object]) null
    else if (obj.isInstanceOf[Number]) 
      (obj:Number).longValue()
    else if (obj.isInstanceOf[Boolean]) 
      if (obj:Boolean) 1 else 0
    else if (obj.isInstanceOf[String]) 
      if ((obj:String).length == 0 | (obj:String) == "null") 
        null
      else
          try {
            Long.parse(obj:String)
          } catch {
            case e: Exception => throw new ValueConverterException("value \"" + obj.toString() + "\" of type " + obj.getClass().getName() + " is not convertible to Long")        
          }
  }
Schreibe einen Kommentar