[JAVA] Essayez d'utiliser la liste F #

Au début

J'ai joué avec la liste F #

Source de l'échantillon

module File1
//Essayez d'utiliser une liste
//Déclarer une liste
let strs= ["dogs";"cats";"bird"]

//Essayez de déclarer le format avec printfn
printfn "%A" strs //["dogs"; "cats"; "bird"]Est affiché
printfn "%O" strs //[dogs; cats; bird]Est affiché

//Accéder à la liste en utilisant la correspondance de modèles
//Correspondance de motif 1
let rec accessList strs =
    match strs with
    |x::xs->printfn "%O " x;printfn "%O " (accessList xs);x+" a"
    |[]->printfn "La fin";"b"

//Correspondance de motif 2
let rec accessList2 strs =
    match strs with
    |x::xs->printf "%O " x; accessList2 xs
    |[]->printfn "La fin";

in
//Il y a une valeur de retour, vous devez donc lier le résultat avec let
let a=accessList strs
//dogs
//cats
//bird
//La fin
//b
//bird a
//cats a
//Est affiché

printfn  "Afficher le résultat lié par let"
printfn "%s" a
//Afficher le résultat lié par let
//dogs a
//Est affiché

accessList2 strs
//chiens chats oiseau La fin est affichée

Note

À propos de l'image d'exécution de la partie 1 "Pattern Match Part 1"

Il semble que le résultat de sortie du programme soit vu, et il ressemble à la figure ci-dessous. image Si vous partez de la partie correspondante avec [] ->, il peut être plus facile de saisir l'image d'exécution du traitement récursif.

À propos de la liste des langages fonctionnels

C'est une image qui a à la fois les propriétés de Java List et Deque (Stack). Les listes dans les langages fonctionnels semblaient avoir une opération de liste plus fluide que les listes en Java, mais si elles ont également les propriétés de Deque (Stack), cela peut être naturel.

Recommended Posts

Essayez d'utiliser la liste F #
Essayez d'utiliser libGDX
Essayez d'utiliser Maven
Essayez d'utiliser SwiftLint
Essayez d'utiliser Log4j 2.0
Essayez d'utiliser le Framework Axon
Essayez d'utiliser l'API REST de JobScheduler
Essayez d'utiliser la méthode java.lang.Math
Essayez d'utiliser la WhiteBox de PowerMock
Essayez d'utiliser Talend Part 2
Essayez d'utiliser Talend Part 1
Essayez d'utiliser la méthode each_with_index
Essayez d'utiliser Spring JDBC
Essayez d'utiliser GloVe avec Deeplearning4j
Essayez de gratter en utilisant Java [Note]
Essayez d'utiliser Cocoa de Ruby
Essayez d'utiliser IntelliJ IDEA car vous ne devez le faire qu'une seule fois
Essayez d'utiliser Spring Boot Security
[Rails] Essayez d'utiliser le middleware de Faraday
[Traitement] Essayez d'utiliser GT Force.
[Programmation complète] §2 Essayez d'utiliser Ruby
Énumération des modèles de combinaison à l'aide de List
Essayez Redmine sur le docker Mac
Essayez d'utiliser Redis avec Java (jar)
[Java] Essayez de mettre en œuvre à l'aide de génériques
Essayez d'utiliser le système de messagerie Pulsar
Essayez d'utiliser le traçage de méthode IBM Java
Essayez d'utiliser le SDK Java d'Hyperledger Iroha
[Java] Où avez-vous essayé d'utiliser java
Comment trier une liste à l'aide du comparateur
Essayez d'utiliser le framework Java Nablarch [Application Web]
Essayez d'utiliser || au lieu de l'opérateur ternaire
Essayez d'utiliser le service sur Android Oreo
Essayez d'utiliser l'API Stream en Java
Étude de Java Essayez d'utiliser un scanner ou une carte
Essayez d'utiliser l'API au format JSON en Java
Essayez d'utiliser Spring Boot avec VS Code
Essayez d'utiliser MT Loader de Reladomo (chargeur de matrices multi-threads)
Essayez d'utiliser l'API Emotion d'Android
Essayez d'utiliser la télécommande Wii en Java
Essayez d'utiliser simple_form / modifier même les modèles enfants
Essayez d'implémenter un serveur GraphQL en utilisant grahpql-java-tools (+ kotlin)