Scala pour la boucle | Boucle For dans Scala : Explication

Publié: 2021-02-19

Dans Scala, une boucle for est également connue sous le nom de for-comprehensions . Il peut être utilisé pour itérer, filtrer et renvoyer une collection répétée. La for-comprehension ressemble assez à une boucle for dans les langages impératifs ; cependant, la différence est qu'il dresse une liste des résultats des allitérations.

Il existe plusieurs formes de boucle for dans Scala , décrites ci-dessous :

Table des matières

Boucle for avec plages

Syntaxe

La syntaxe la plus simple d'une boucle for avec des plages dans Scala est illustrée ci-dessous :

for( var x <- Range ){

déclaration(s) ;

}

Comme illustré ci-dessus, la plage peut être n'importe quelle plage de nombres, représentée par i à j ou parfois comme i jusqu'à j . L'opérateur flèche gauche ← est appelé générateur car il génère des valeurs individuelles à partir d'une plage.

Alternativement, on peut également utiliser la syntaxe :

pour(w <- plage){

// Coder..

}

Ici, w est une variable, l'opérateur flèche gauche ← est le générateur et la plage est la valeur qui contient les valeurs de début et de fin. La plage est représentée en utilisant soit i à j, soit i jusqu'à j.

Scala For-Loop Exemple utilisant le mot-clé 'to'

L'utilisation de 'to' avec la boucle for inclut à la fois les valeurs de début et de fin. Dans l'exemple ci-dessous, nous pouvons utiliser 'to' pour imprimer des valeurs comprises entre 0 et n. En d'autres termes, la boucle commence à 0 et se termine à 10, ce qui signifie que nous pouvons imprimer les numéros de page de 0 à 10.

// Programme Scala pour illustrer comment

// crée une boucle for en utilisant to

Objet principal

{

def main(args : Array[String])

{

println("La valeur de w est :");

// Ici, la boucle for commence à partir de 0

// et se termine à 10

pour( w <- 0 à 10)

{

println(w);

}

}

}

Sortir:

Dans l'exemple ci-dessus, la valeur de w est :

0

1

2

3

4

5

6

7

8

9

dix

Lire : Top 10 des compétences pour devenir un développeur full stack

Scala For-Loop Exemple utilisant le mot-clé 'jusqu'à'

La différence entre utiliser jusqu'à et jusqu'à est ; to inclut les valeurs de début et de fin données dans une plage, alors que until exclut la dernière valeur de la plage donnée. Dans l' exemple de boucle for illustré ci-dessous, nous pouvons utiliser jusqu'à pour imprimer des valeurs comprises entre 0 et n-1. En d'autres termes, la boucle commence à 0 et se termine à n-1, ce qui donne 9. Nous pouvons donc imprimer les numéros de page 0 à 9.

// Programme Scala pour illustrer comment

// crée une boucle for en utilisant jusqu'à

Objet principal

{

def main(args : Array[String])

{

println("La valeur de w est :");

// Ici, la boucle for commence à partir de 0

// et se termine à 10

pour( w <- 0 jusqu'à 10)

{

println(w);

}

}

}

Sortir:

Dans l'exemple ci-dessus, la valeur de w est :

0

1

2

3

4

5

6

7

8

9

A lire aussi : Python vs Scala

Valeurs multiples dans la boucle For

Nous pouvons également utiliser plusieurs plages dans une seule boucle for . Ces plages sont séparées par un point-virgule (;). Comprenons cela à l'aide d'une illustration. Dans l'exemple donné ci-dessous, nous avons utilisé deux plages différentes dans une même boucle, c'est-à-dire w <- 0 à 3 ; z <- 8 jusqu'à 10.

// Programme Scala pour illustrer comment

// crée plusieurs plages dans la boucle for

Objet principal

{

def main(args : Array[String])

{

// boucle for avec plusieurs plages

pour( w <- 0 à 3; z<- 8 jusqu'à 10 )

{

println("La valeur de w est :" +w);

println("La valeur de y est :" +z);

}

}

}

Sortir:

La valeur de w est : 0

La valeur de y est : 8

La valeur de w est : 0

La valeur de y est : 9

La valeur de w est : 1

La valeur de y est : 8

La valeur de w est :1

La valeur de y est : 9

La valeur de w est : 2

La valeur de y est : 8

La valeur de w est : 2

La valeur de y est : 9

La valeur de w est : 3

La valeur de y est : 8

La valeur de w est : 3

La valeur de y est : 9

Paiement : salaire d'un développeur Full Stack en Inde

Boucle for avec collections

Dans Scala, nous pouvons utiliser for-loop pour itérer efficacement des collections telles que list, sequence, etc., soit en utilisant une boucle for-each ou une boucle for-comprehensions . La syntaxe d'une boucle for avec des collections dans Scala est la suivante :

Syntaxe

for( var x <- Liste ){

déclaration(s) ;

}

Ici, la liste de variables est un type de collection avec une liste d'éléments et une boucle for parcourt tous les éléments renvoyant un élément dans la variable x à la fois.

Regardons le programme de démonstration ci-dessous pour comprendre une boucle for avec collections . Dans l'illustration, nous avons créé une collection à l'aide de la variable List pour répertorier les auteurs en fonction de leur classement.

// Programme Scala pour illustrer comment

// utilise la boucle for avec la collection

Objet principal

{

def main(args : Array[String])

{

var rang = 0 ;

val liste de classement = Liste(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

// Boucle for avec collection

for( rang <- liste de classement){

println(“Le rang de l'auteur est : ” +rang);

}

}

}

Sortir:

Le rang de l'auteur est : 1

Le classement de l'auteur est : 2

Le classement de l'auteur est : 3

Le classement de l'auteur est : 4

Le rang de l'auteur est : 5

Le classement de l'auteur est : 6

Le classement de l'auteur est : 7

Le classement de l'auteur est : 8

Le classement de l'auteur est : 9

Le classement de l'auteur est : 10

Boucle for avec filtres

For-loop dans Scala vous permet de filtrer les éléments d'une collection donnée en utilisant une ou plusieurs instructions if dans for-loop . Les utilisateurs peuvent également ajouter plusieurs filtres à une expression « for » en utilisant des points-virgules (;) pour les séparer. Vous trouverez ci-dessous la syntaxe de la boucle for avec filtres .

Syntaxe

pour( var x <- Liste

si condition1 ; si condition2…

){

déclaration(s) ;

}

Comprenons mieux cela à l'aide d'un exemple. L'illustration ci-dessous utilise deux filtres pour séparer la collection donnée. Par exemple, dans l'exemple ci-dessous, les filtres éliminent la liste des auteurs avec des rangs supérieurs à 2 et inférieurs à 7.

// Programme Scala pour illustrer comment

// utilise la boucle for avec des filtres

Objet principal

{

def main(args : Array[String])

{

var rang = 0 ;

val liste de classement = Liste(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

// Boucle for avec filtres

pour( rang <- liste de classement

si rang < 7 ; si rang > 2 )

{

println(“Le rang de l'auteur est : ” +rang);

}

}

}

Sortir:

Le classement de l'auteur est : 3

Le classement de l'auteur est : 4

Le rang de l'auteur est : 5

Le classement de l'auteur est : 6

Boucle for avec rendement

Dans Scala, la valeur de retour de la boucle est stockée dans une variable ou peut revenir via une fonction. Pour ce faire, vous devez préfixer le corps de l' expression 'for' avec le mot clé yield . Vous trouverez ci-dessous la syntaxe de la boucle for avec yield .

Syntaxe

var retVal = for{ var x <- Liste

si condition1 ; si condition2…

}

rendement x

Remarque - Les accolades listent les variables et les conditions, et retVal est une variable où toutes les valeurs de x seront stockées sous forme de collection.

Comprenons cela mieux à l'aide d'une illustration. Dans l'exemple ci-dessous, la sortie est une variable où toutes les valeurs de rang sont stockées sous la forme d'une collection. La boucle for affiche uniquement la liste des auteurs dont le rang est supérieur à 4 et inférieur à 8.

// Programme Scala pour illustrer comment

// utilise la boucle for avec des rendements

Objet principal

{

def main(args : Array[String])

{

var rang = 0 ;

val liste de classement = Liste(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

// Boucle For avec rendements

var output = for{ rank <- ranklist

si rang > 4 ; si rang != 8 }

rang de rendement

// Affiche le résultat

pour (rang <- sortie)

{

println(“Le rang de l'auteur est : ” + rang);

}

}

}

Sortir:

Le rang de l'auteur est : 5

Le classement de l'auteur est : 6

Le classement de l'auteur est : 7

Le classement de l'auteur est : 9

Le classement de l'auteur est : 10

Apprenez des cours de développement de logiciels en ligne dans les meilleures universités du monde. Gagnez des programmes Executive PG, des programmes de certificat avancés ou des programmes de maîtrise pour accélérer votre carrière.

Conclusion

Si vous souhaitez en savoir plus sur le développement de logiciels à pile complète, consultez le programme Executive PG de upGrad & IIIT-B en développement de logiciels à pile complète, conçu pour les professionnels en activité et offrant plus de 500 heures de formation rigoureuse, plus de 9 projets, et affectations, statut d'ancien de l'IIIT-B, projets de synthèse pratiques et aide à l'emploi avec les meilleures entreprises.

Qu'est-ce que le langage de programmation Scala ?

Scala est un langage de programmation à usage général conçu pour exprimer des modèles de programmation courants de manière concise, élégante et sécurisée. Il s'agit d'un langage hybride fonctionnel et orienté objet, qui prend en charge les constructions de programmation fonctionnelle telles que les fonctions d'ordre supérieur et l'évaluation paresseuse, mais il possède également les caractéristiques d'un langage orienté objet telles que les classes, les littéraux d'objet et l'inférence de type. Scala est l'un des langages les plus importants conçus pour la machine virtuelle Java (JVM), mais peut également être compilé en code source JavaScript ou utiliser le Common Language Runtime (CLR) .NET.

Que sont les boucles en programmation ?

Les boucles sont des instructions de programmation qui répètent un bloc d'instructions un autre nombre de fois (un nombre entier). Il existe deux types de boucles : for et while. Une boucle répète un bloc de code jusqu'à ce qu'une certaine condition soit remplie. Vous pouvez utiliser une boucle pour effectuer la même tâche encore et encore jusqu'à ce que les critères spécifiés soient remplis. Il existe plusieurs types de boucles telles que la boucle for, la boucle while, la boucle do while et la boucle foreach. Chacun de ces types a ses propres avantages et cas d'utilisation. Par exemple, si vous voulez parcourir un tableau un nombre fixe de fois, vous pouvez utiliser des boucles for. Si vous souhaitez boucler en fonction d'une condition, vous pouvez utiliser des boucles while. Si vous souhaitez accéder aux éléments d'un tableau, vous pouvez utiliser des boucles foreach.

Quel est l'avenir du langage Scala ?

Scala est un langage de programmation à usage général qui intègre des principes de programmation fonctionnelle. Il est indépendant de la plate-forme. Scala est un langage typé statiquement avec inférence de type. Il permet également d'écrire le code dans un style orienté objet. Scala possède de riches bibliothèques et c'est la concision dans le codage. Ces facteurs font de Scala un langage de programmation très populaire. Si vous êtes un programmeur Java, vous pouvez utiliser Scala plus facilement. Si vous n'êtes pas un programmeur Java et que vous souhaitez toujours utiliser Scala, vous pouvez utiliser le système d'interpréteur Scala. Scala a une communauté en pleine croissance et atteindre la première place du classement n'est plus une question de temps.