在初始化c#中的属性(或字段)时,是否有办法避免两次写入完全相同的类型? (类似于Java中的菱形运算符会做的事情......)
例如,假设我有这段代码:
netsh interface ipv6 set privacy state=disabled store=active
netsh interface ipv6 set privacy state=disabled store=persistent
netsh interface ipv6 set global randomizeidentifiers=disabled store=active
netsh interface ipv6 set global randomizeidentifiers=disabled store=persistent
有没有办法避免写入类型private readonly Dictionary<string, ISomething> _dict =
new Dictionary<string, ISomething>();
或其中的一部分两次?
请注意,该类型已定义为Dictionary<string, ISomething>()
,而不是Dictionary
..
答案 0 :(得分:2)
不,目前在C#中没有类似的东西。明显的潜在修复方法是允许使用List<Human> noDup = humans.stream()
.collect(noDupCollector(superHumans));
System.out.println(noDup); // [Bob, Tylor]
声明字段,但是more complicated than it may sound。
我有点惊讶地看到像Java&#34;钻石运营商&#34;出现在C#中,但我之前感到惊讶......
如果您真的想避免输入,那么我希望Visual Studio在您输入var
后帮助完成作业。 (就个人而言,无论如何我都不认为打字是打字的主要瓶颈,但是......)