如何在F#中打印整个列表?

Jef*_*eff 4 f#

当我使用Console.WriteLine打印列表时,它默认只显示前三个元素.如何让它打印列表的全部内容?

Bri*_*ian 9

你可以使用%A格式说明符和printf来获得'美化'列表打印输出,但是像对象上的Console.WriteLine(它调用.ToString()),它不一定会显示所有元素.为了得到它们,迭代整个列表.下面的代码显示了一些不同的选择.

let smallList = [1; 2; 3; 4]
printfn "%A" smallList // often useful

let bigList = [1..200]
printfn "%A" bigList // pretty, but not all

printfn "Another way"
for x in bigList do 
    printf "%d " x
printfn ""

printfn "Yet another way"
bigList |> List.iter (printf "%d ")
printfn ""
Run Code Online (Sandbox Code Playgroud)


CMS*_*CMS 6

您可以使用该List.iter函数迭代它,并打印每个元素:

let list = [1;2;3;4]
list |> List.iter (fun x -> printf "%d " x)
Run Code Online (Sandbox Code Playgroud)

更多信息: