我正在通過編程Elixir(PragProg)的示例問題。問題是寫一個函數返回from
到to
。我的解決方案如下。但是,有時它們會返回字符(相當於它們的ascii)。我怎樣才能避免這種情況,並只返回數字。如何防止作爲字符返回的數字?
defmodule MyList do
def span(), do: []
def span(from), do: [from]
def span(from, to) when from == to, do: [from]
def span(from, to) when from > to, do: [from] ++ span(from - 1, to)
def span(from, to) when from < to, do: [from] ++ span(from + 1, to)
end
MyList.span(31,34) #=> [31,32,33,34]
MyList.span(-5,-8) #=> [-5,-6,-7,-8]
MyList.span(65,68) #=> 'ABCD' (I need a list with numbers 65 to 68)
'> MyList.span(65,68)== [65,66,67,68]#=> TRUE',這是控制檯如何解釋帶有'charcodes'的列表。 http://stackoverflow.com/questions/32804904/how-to-print-out-a-maps-array-values-in-elixir – sobolevn
確定有一個模式匹配,但我想打印數字(想象一下,技術用戶使用它,他們會引發一個缺陷...... lol) – Bala
然後'IO.inspect [65,66,67,68],char_lists :: as_lists' – sobolevn