Int et String F#
J'ai une fonction en F#, où je prends un int
valeur et le retour de la int
comme un string
.
let inttostring (x:int):string =
""+x
Je ne peux pas obtenir ToString de travail. Toute aide serait appréciée.
N'est-ce pas le travail?
Le vote pour la fermer. Si vous ne savez pas F# est fortement typé ou sur
Il n'est pas fortement typé. C# est fortement typé, mais il a conversion implicite, de sorte que vous pouvez ajouter des entiers pour les cordes. Ce ne serait pas mon approche préférée en C#, mais il serait procédé. Je ne pense pas que ses nécessairement un RTFM moment si quelqu'un ne sait pas F# ne pas faire les conversions implicites.
Si il voulait savoir pourquoi cela ne fonctionne pas, ou pourquoi F# n'a pas de conversion implicite comme en C#, ce sont des questions raisonnables. Le problème est qu'il dit qu'il n'arrive pas à convertir un int en string, ce qui suggère qu'il n'a même pas fait une fouille superficielle.
let inttostring (i: int): string = i.ToString()
Le vote pour la fermer. Si vous ne savez pas F# est fortement typé ou sur
object.ToString
il est temps de lire les docs.Il n'est pas fortement typé. C# est fortement typé, mais il a conversion implicite, de sorte que vous pouvez ajouter des entiers pour les cordes. Ce ne serait pas mon approche préférée en C#, mais il serait procédé. Je ne pense pas que ses nécessairement un RTFM moment si quelqu'un ne sait pas F# ne pas faire les conversions implicites.
Si il voulait savoir pourquoi cela ne fonctionne pas, ou pourquoi F# n'a pas de conversion implicite comme en C#, ce sont des questions raisonnables. Le problème est qu'il dit qu'il n'arrive pas à convertir un int en string, ce qui suggère qu'il n'a même pas fait une fouille superficielle.
OriginalL'auteur user1090614 | 2012-08-30
Vous devez vous connecter pour publier un commentaire.
Chaîne vide
""
n'est pas compatible avecx
qui est deint
type. Vous pouvez utiliserou
i.ToString()
ouConvert.ToString(i)
ouString.Concat("", i)
...C'est probablement la peine de dire que pour les nouvelles recrues pour F# que les types sont implicitement converti entre les uns des autres (c'est ce pad est dit ci-dessus). Vous devez explicitement la conversion d'un type à l'autre pour obtenir le code à compiler.
Je crois que tu veux dire pas.
mes excuses, vous êtes tout à fait correct. F# les types de pas implicitement converti comme ils le sont dans d'autres langues (par exemple, C#)
OriginalL'auteur pad