1
我需要打印出一個值,如果它是零以上:打印值,如果它是不爲零
info({mail, BoxPid, Messages, MessageCount, MessageDropCount}, Req, S) ->
if MessageDropCount > 0 ->
io:format("dropped=~p~n", [MessageDropCount]);
true -> true
end,
...,
{loop, Req, S};
我不喜歡if
表達的true -> true
一部分。有沒有辦法避免它?有沒有一個成語呢?
我想甚至可以說更通用的變種是: '如果(假的,_) - > 確定; 。 如果(真,動作) - > 動作()' 使用等: '如果(MessageDropCount> 0,有趣() - > IO:格式( 「下降=〜P〜n」 個,[MessageDropCount] )end雖然實際上我的印象是你和我的解決方案對於一般用法來說過於冗長/繁瑣,而且MessageDropCount> 0,並且io:format(「dropped =〜p〜n」 ,[MessageDropCount])'勝。 – erszcz
是的,但我試圖直接回答Akonsu問題。我懷疑問題與應用程序中發生的某些事件的日誌有關;我已經使用了多種解決方案,從無條件控制檯打印到具有一堆事件處理程序的gen_event的使用,以便在控制檯,文件或圖形界面中進行登錄。提供比詢問更多的信息總是一種誘惑,但......簡短是美好的 – Pascal