Latest web development tutorials

fonction Scala

Est un ensemble de fonctions pour effectuer un énoncé de mission ensemble. Vous pouvez mettre le code dans des fonctions différentes. Comment diviser le code en fonctions distinctes est à vous de décider, mais logiquement divisé habituellement effectuer chaque fonction basée sur une tâche spécifique à réaliser.

Scala a des fonctions et des méthodes, à la fois sur la petite différence dans la sémantique. méthode Scala fait partie d'une classe, et la fonction est un objet qui peut être affecté à une variable. En d'autres termes, la fonction définie dans une classe qui est une méthode.

Nous pouvons définir des fonctions partout, même des fonctions définies (fonction inline) au sein de la fonction. Le point le plus important est Scala nom de la fonction peut consister en des caractères spéciaux suivants:+, +, -, &, -, -, \, /,:, etc.


Déclaration de fonction

Scala déclaration de fonction dans le format suivant:

def functionName ([参数列表]) : [return type]

Si vous n'écrivez le signe égal et le corps de la méthode, la méthode est implicitement déclarée «abstraite (abstract)", contenant le type est alors un type abstrait.


Définition de la fonction

La méthode est définie par un mot-clé start def, suivie par une liste facultative de paramètres, deux points: et le type de la méthode, un nombre égal à "=" retour, et enfin le corps de la méthode "."

fonction Scala est défini dans le format suivant:

def functionName ([参数列表]) : [return type] = {
   function body
   return [expr]
}

Le codetype de retour ci - dessus peut être tout type de données valide Scala.paramètres de la liste des paramètres peuvent être séparés par des virgules.

Caractéristiques La fonction suivante est passé deux paramètres sont additionnés et la somme:

object add{
   def addInt( a:Int, b:Int ) : Int = {
      var sum:Int = 0
      sum = a + b

      return sum
   }
}

Si la fonction ne retourne pas de valeur, vous pouvez retournerl'unité, ce qui est similaire au videdeJava,des exemples sont les suivants:

object Hello{
   def printMe( ) : Unit = {
      println("Hello, Scala!")
   }
}

appel de fonction

Scala offre une variété de différentes façons d'appeler la fonction:

Ce qui suit est la méthode de format standard appel:

functionName( 参数列表 )

Si la fonction est utilisée pour appeler l'instance d'objet, nous pouvons utiliser un format java similaire ( en utilisant lenuméro.):

[instance.]functionName( 参数列表 )

Les exemples ci-dessus démontrent la définition et appelant l'instance de la fonction:

object Test {
   def main(args: Array[String]) {
        println( "Returned Value : " + addInt(5,7) );
   }
   def addInt( a:Int, b:Int ) : Int = {
      var sum:Int = 0
      sum = a + b

      return sum
   }
}

Mise en œuvre du code ci-dessus, la sortie est:

$ scalac Test.scala 
$ scala Test
Returned Value : 12

Scala est un langage fonctionnel, de sorte que la fonction est le noyau de la langue Scala. Voici un concept de fonction va nous aider à mieux comprendre la programmation Scala:

fonction analytique Case concept connexion
Fonction de nom appelant (appel par nom) Indique le nom des arguments de fonction
Fonction - paramètre variable fonction récursive
Les valeurs par défaut de paramètres Fonctions d'ordre supérieur
fonctions imbriquées Anonyme fonction
application de fonction partielle Fonction cari (Fonction Currying)