程序设计

专业和发烧友程序员的问答

13
如何在WPF中绑定反向布尔属性?
我所拥有的是具有IsReadOnly属性的对象。如果此属性为true,我想将IsEnabledButton(例如)上的属性设置为false。 我想相信我可以像IsEnabled="{Binding Path=!IsReadOnly}"WPF 一样轻松地做到这一点。 我是否不得不经历所有样式设置?对于将一个布尔值设置为另一个布尔值的倒数这样的简单操作来说,似乎太罗word了。 <Button.Style> <Style TargetType="{x:Type Button}"> <Style.Triggers> <DataTrigger Binding="{Binding Path=IsReadOnly}" Value="True"> <Setter Property="IsEnabled" Value="False" /> </DataTrigger> <DataTrigger Binding="{Binding Path=IsReadOnly}" Value="False"> <Setter Property="IsEnabled" Value="True" /> </DataTrigger> </Style.Triggers> </Style> </Button.Style>
377 wpf  .net-3.5  styles 



29
用Java增加Map值的最有效方法
我希望这个问题对于本论坛来说不是太基本了,但是我们会看到的。我想知道如何重构一些代码以获得更好的性能,而这些性能已经运行了很多次。 假设我正在使用地图(可能是HashMap)创建一个单词频率列表,其中每个键是一个带有要计算单词的String,值是一个Integer,每次找到该单词的标记时都会增加。 在Perl中,增加这样的值非常容易: $map{$word}++; 但是在Java中,它要复杂得多。这是我目前的操作方式: int count = map.containsKey(word) ? map.get(word) : 0; map.put(word, count + 1); 当然,哪个依赖于较新的Java版本中的自动装箱功能。我想知道您是否可以建议一种更有效的递增此值的方法。避开Collections框架并改用其他东西,甚至有良好的性能原因吗? 更新:我已经测试了几个答案。见下文。

26
Java:再次遍历notify()与notifyAll()
Наэтотвопросестьответына 堆栈溢出нарусском:Вчемотличие通知,notifyAll的? 如果“之间的区别一个谷歌notify()和notifyAll()”,那么很多的解释,会弹出(除了留下javadoc的段落)。这一切都归结于被唤醒等待的线程数:一个是notify()和所有notifyAll()。 但是(如果我确实正确理解了这两种方法之间的区别),总是只选择一个线程来进行进一步的监视器获取;在第一种情况下,由VM选择,在第二种情况下,由系统线程调度程序选择。程序员不知道它们的确切选择过程(在一般情况下)。 然后notify()和notifyAll()的有用区别是什么?我想念什么吗?

8
在C#中使用Global Mutex的良好模式是什么?
Mutex类非常容易被误解,而全局互斥体更是如此。 创建全局互斥锁时,可以使用哪种良好,安全的模式? 一个会起作用的 无论我的机器位于哪个区域 保证正确释放互斥锁 如果没有获取互斥,可以选择不永久挂起 处理其他进程放弃互斥锁的情况
377 c#  concurrency  mutex 

19
Java的Eclipse IDE-全黑主题
有什么方法可以将Eclipse完全转变为黑暗的IDE?这是我要问的图片: 我不介意花1个小时做这样的事情:D 编辑: 正如Konstantin Komissarchik所说,我必须修改操作系统的颜色。通过将自定义视觉样式添加到Windows,可以实现此目的。借助Windows 7的自定义主题和自定义视觉样式(我做了一些更改),我的Eclipse如下图所示: 更新2019: Eclipse的最新版本现在带有深色主题。只需转到General -> Appearance -> Theme并根据您的操作系统选择“深色”或其他合适的版本。 当然,您仍然可以在Windows上启用深色视觉样式或在其他操作系统上更改主题,但是默认的深色主题在大多数情况下就足够了。
377 eclipse  themes 


18
将单个项目作为IEnumerable <T>传递
是否有一种常见的方法将单个类型的项目传递给T需要IEnumerable&lt;T&gt;参数的方法 ?语言是C#,框架版本2.0。 当前,我正在使用辅助方法(它是.Net 2.0,所以我有一堆类似于LINQ的强制转换/投影辅助方法),但这似乎很愚蠢: public static class IEnumerableExt { // usage: IEnumerableExt.FromSingleItem(someObject); public static IEnumerable&lt;T&gt; FromSingleItem&lt;T&gt;(T item) { yield return item; } } 当然,其他方法是创建并填充a List&lt;T&gt;或an Array并将其传递给而不是IEnumerable&lt;T&gt;。 [编辑]作为扩展方法,它可以命名为: public static class IEnumerableExt { // usage: someObject.SingleItemAsEnumerable(); public static IEnumerable&lt;T&gt; SingleItemAsEnumerable&lt;T&gt;(this T item) { yield return item; } } 我在这里想念什么吗? [Edit2]我们发现someObject.Yield()(如@Peter在下面的评论中所建议的)是此扩展方法的最佳名称,主要是为了简洁起见,因此,如果有人想要抓住它,它与XML注释一起使用: public …
377 c#  .net  generics  ienumerable 

29
使用LINQ将列表拆分为子列表
有什么方法可以将item用作每个拆分的定界符,将a List&lt;SomeObject&gt;分为几个单独的列表SomeObject? 让我举例说明: 我有一个List&lt;SomeObject&gt;和我需要一个List&lt;List&lt;SomeObject&gt;&gt;或List&lt;SomeObject&gt;[],以便每个结果列表将包含一组3个原始列表(依次)。 例如。: 原始清单: [a, g, e, w, p, s, q, f, x, y, i, m, c] 结果列表: [a, g, e], [w, p, s], [q, f, x], [y, i, m], [c] 我还需要将结果列表的大小作为此函数的参数。
377 c#  linq  data-structures 


14
仅检索MongoDB集合中对象数组中的查询元素
假设您的收藏夹中包含以下文档: { "_id":ObjectId("562e7c594c12942f08fe4192"), "shapes":[ { "shape":"square", "color":"blue" }, { "shape":"circle", "color":"red" } ] }, { "_id":ObjectId("562e7c594c12942f08fe4193"), "shapes":[ { "shape":"square", "color":"black" }, { "shape":"circle", "color":"green" } ] } 进行查询: db.test.find({"shapes.color": "red"}, {"shapes.color": 1}) 要么 db.test.find({shapes: {"$elemMatch": {color: "red"}}}, {"shapes.color": 1}) 返回匹配的文档(文档1),但始终包含以下所有数组项shapes: { "shapes": [ {"shape": "square", "color": "blue"}, {"shape": "circle", "color": …




By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.