在Erlang中返回的to_float是什么,它返回的元组的结构是什么?

时间:2016-01-08 15:29:04

标签: erlang

最近我遇到了一个代码片段,它将字符串作为输入并返回浮点值,但我对3和4构造中的行感到困惑。有人请解释一下。

as_number(S) ->  
  case string:to_float(S) of  
    {error, no_float} -> list_to_integer(S);  
    {N, _} -> N  
  end.

1 个答案:

答案 0 :(得分:2)

函数select column1, ( Case when ABC < 0 then CONVERT(varchar(50), Convert(int,PQR)) + "/" + CONVERT(varchar(50), Convert(int,ABC)) else CONVERT(varchar(50), Convert(int,PQR)) end ) as column2, column3, column4 FROM SAMPLE_TABLE 接受一个字符串(这是erlang中的列表)并尝试将其转换为float。它期望有效的文本代表一个浮点数(ASCII数字),然后是字符串的其余部分。返回值是string:to_float{Float, Rest}的元组,Rest是字符串的剩余部分,不是ASCII数字。在这种情况下,如果字符串无法转换为float,它会尝试将列表转换为整数,这可能不起作用,具体取决于字符串的内容。