Je voulais ajouter des éléments dynamiquement dans un tableau. Mais il semble que les tableaux et les listes Scala ne fournissent aucune méthode pour ajouter des éléments dynamiquement en raison de leur nature immuable.
J'ai donc décidé d'utiliser le type de données List pour exploiter cette possibilité : : pour y parvenir. Mon code ressemble à ceci
var outList = List(Nil)
val strArray = Array("ram","sam","bam")
for (str<-strArray)
outList = str :: outList
Bien que cela fonctionne d'une certaine manière, le problème est que les nouvelles chaînes sont pré-apposées dans la liste. Mais l'exigence idéale est l'ordre des données. Oui, je sais ce que vous pensez, vous pouvez inverser la liste des résultats finaux pour retrouver l'ordre original. Mais le problème est qu'il s'agit d'un énorme tableau. Et je crois que ce n'est pas une solution, même si elle résout le problème. Je pense qu'il devrait y avoir un moyen simple de résoudre ce problème...
Et la raison pour laquelle j'ai hacké Scala est d'apprendre la manière fonctionnelle de coder. Ayant var (type mutable) et remplir la liste à la volée ne me semble pas être une façon fonctionnelle de résoudre les problèmes.
Comment faire ?
Idéalement, je voudrais obtenir quelque chose comme cela en Scala (en dessous de l'élément C# code)
List<int> ls = new List<int>();
for (int i = 0; i < 100; i++)
ls.Add(i);