草庐IT

my_awesome_func

全部标签

java - 无法在 Java 中复制 "My Documents"

我正在尝试将文件、文件夹、子文件夹、zip文件等从给定位置复制到另一个位置。我使用了下面的代码。importjava.io.File;importjava.io.FileInputStream;importjava.io.FileOutputStream;importjava.io.IOException;importjava.io.InputStream;importjava.io.OutputStream;publicclassCopyDirectoryExample{publicstaticvoidmain(String[]args){FilesrcFolder=newFile(

c# - 在单个元素级别应用 Linq Func<T, TResult> 键选择器

对不起,如果标题有误导性,不知道如何描述这个。我的最终目标是拥有一个IQueryable的扩展方法以及某种形式(例如见下文)的表达式,它允许我返回一个IQueryable>(或类似),其中包含原始T在Entity字段,以及包含由某种形式的表达式描述的元素的数组/可枚举。我知道这没有什么意义,希望在举个例子之后它会...这是我到目前为止:classEntityIndex{TEntity{get;set;}//Doesn'thavetobeIEnumerable,whateveriseasierIEnuermableIndex{get;set;}}staticclassElsewhere{

c# - 高级 : How to optimize my complex O(n²) algorithm

我有以下人员和地点数据:Person实体有IList每个都有IList可能的地方Schedule即日模式。10天可用4天不可用在特定的DateRangePlaces内日期范围必须遵守Schedule人是否可以去特定地方的模式。Place实体有IList每个定义每个日期范围内的开始/结束时间重叠的日期范围作为LIFO。因此,对于之前已经定义的每一天,新的时间定义优先。问题现在我需要做这样的事情(用伪代码):foreachPlace{foreachDaybetweenminimumandmaximumdateinIList{getasetofPeopleapplicableforPlace

c# - 以 Func 为键的字典

我想知道这是否是字典键的明智选择?我想要做的是使用表达式作为字典中的键,例如:varmap3=newDictionary,int>();map3.Add((x)=>x%2==0,1);map3.Add((x)=>x%10==0,2);//...varkey=map3.Keys.SingleOrDefault(f=>f(2));//key=(x)=>x%2//map3[key]=1这个想法比使用大的if-else或switch语句更简洁。这有意义吗?它会工作吗?有没有更简单的方法? 最佳答案 考虑到您使用map的方式,使用List,i

c# - Func 委托(delegate)不链接方法

让我们想象一下简单的委托(delegate)调用:voidMain(){Functfunc=null;tfunc+=Add;//bindfirstmethodtfunc+=Sub;//bindsecondmethodConsole.WriteLine(tfunc(2,2));}privatestringAdd(inta,intb){return"Add:"+(a+b).ToString();}privatestringSub(inta,intb){return"Sub:"+(a-b).ToString();}这个程序的结果是:Sub:0那么,为什么Add方法没有被调用呢?我希望先调用方

c# - Func<> 与委托(delegate)和 lambda 表达式之间的区别

这个问题在这里已经有了答案:delegatekeywordvs.lambdanotation(6个答案)关闭9年前。在深入了解C#的更多高级功能时,我遇到了一些代码,但我并不清楚它们之间的区别。这是关于这两行:FuncgiveLength=(text=>text.Length);和FuncgiveLength=delegate(stringtext){returntext.Length;};这可以用同样的方式使用:Console.WriteLine(giveLength("Arandomstring."));所以基本上..这两行有什么区别?这些行是否编译为相同的CIL?

c# - Func<T, TResult> 和 Converter<TInput, TOutput> 有什么区别?

查看Func和Converter委托(delegate)的签名,publicdelegateTResultFunc(Targ);publicdelegateTOutputConverter(TInputinput);我很难看出两者之间的区别。当然,如果我们重命名泛型类型参数,它们本质上是一样的吗?有人能解释一下为什么它们都存在吗? 最佳答案 没有区别。它们存在的原因是历史性的。Converter在.NET2.0中已经可用,但整个范围Func稍后添加了委托(delegate)类型。为了保持一致性,Func已添加,但它与Converte

c# - 使用静态工厂 Func<T> 为 ASP.NET 应用程序创建 "Ambient Context"(UserContext)

我发现几乎每个类(Controller、View、HTML帮助程序、服务等)我都需要当前登录的用户数据。所以我考虑创建一个“环境上下文”而不是直接注入(inject)IUserService或用户。我的方法看起来像那样。publicclassBootstrapper{publicvoidBoot(){varcontainer=newContainer();//thecalltoIUserService.GetUseriscachedperHttprequest//byusingadynamicproxycachingmechanism,thatalsohandlescaseswhere

c# - 封装 Action<T> 和 Func<T>?

我正在尝试为某种IExecutable接口(interface)进行设计。我不会详细介绍,但重点是我有几个需要从基类执行的操作。它们可能采用不同的参数(没什么大不了的),并且它们可能会/可能不会返回值。到目前为止,这是我的设计:publicabstractclassActionBase{//...snip...}publicabstractclassActionWithResultBase:ActionBase{publicabstractTExecute();}publicabstractclassActionWithoutResultBase:ActionBase{publicab

c# - 将 Func 转换为委托(delegate)

这个问题在这里已经有了答案:CastdelegatetoFuncinC#(8个答案)关闭7年前。我定义了以下委托(delegate):publicdelegateobjectMyDelegate(dynamictarget);我有一个Func对象:FuncmyFunc如何转换myFunc至MyDelegate?我已经尝试过这些说明,但没有一个奏效:MyDelegatemyDeleg=myFunc;MyDelegatemyDeleg=(MyDelegate)myFunc;MyDelegatemyDeleg=myFuncasMyDelegate;