当我使用Console.WriteLine打印列表时,默认只显示前三个元素。如何让它打印列表的全部内容?
答案 0 :(得分:8)
你可以使用%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 ""
答案 1 :(得分:6)
您可以使用List.iter
函数迭代它,并打印每个元素:
let list = [1;2;3;4]
list |> List.iter (fun x -> printf "%d " x)
更多信息:
答案 2 :(得分:0)
这是使用String.Join的简单替代方法:
open System
let xs = [1; 2; 3; 4]
let s = "[" + String.Join("; ", xs) + "]"
printfn "%A" s