我读到了委托和lambda表达式,但这段代码对我来说仍然很神奇。
OnFailure FailureCallback(string failedFunction){
return failureResponse => Console.Error.WriteLine("Failed to " + failedFunction + " due to: " + failureResponse.Message);
}
OnFailure 是代表签名:
public delegate void OnFailure(FailureResponse failureResponse);
FailureResponse 是一个用失败响应预告行动的类。
是什么让“failureResponse”在回调中无处可见?这不是参数,也没有在任何地方声明,但是它被用作lambda表达式的参数。
答案 0 :(得分:1)
它是lambda表达式参数的声明。它与x
中的someSequence.OrderBy(x => x.SomeProperty)
相同:long millis = smsInboxCursor.getLong(smsInboxCursor.getColumnIndexOrThrow("date"));
String smsDate = (String) DateFormat.format("EEEE, MMMM dd, yyyy h:mm:ss ", new Date(millis));
。