如何在JUnit测试用例中对列表进行断言?不仅列表的大小,而且列表的内容.
我正在尝试使用我选择的键来保存集合中的项目列表.在Java中,我只想使用Map如下:
class Test {
Map<Integer,String> entities;
public String getEntity(Integer code) {
return this.entities.get(code);
}
}
Run Code Online (Sandbox Code Playgroud)
在C#中有相同的方法吗?
System.Collections.Generic.Hashset
不使用哈希并且我无法定义自定义类型键
System.Collections.Hashtable
不是泛型类
System.Collections.Generic.Dictionary
没有get(Key)
方法
我需要一个快速算法从通用列表中选择5个随机元素.例如,我想从a获得5个随机元素List<string>
.
Collection
和List
Java有什么区别?我什么时候应该使用哪个?
当我在我的域中有实体列表的实体时,它们应该作为IList或IEnumerables公开吗?例如Order有一堆OrderLines.
我爱string.IsNullOrEmpty
方法.我很想拥有能够为IEnumerable提供相同功能的东西.有这样的吗?也许一些收集助手班?我问的原因是,在if
语句中,如果模式是代码,代码看起来很混乱(mylist != null && mylist.Any())
.拥有它会更加清洁Foo.IsAny(myList)
.
这篇文章没有给出答案:IEnumerable是空的?.
什么是什么WeakHashMap
时候应该使用它?a WeakHashMap
和a 之间有什么区别HashMap
?
我有Set<String> result
&想要将其转换为逗号分隔的字符串.我的方法如下所示,但也在寻找其他意见.
List<String> slist = new ArrayList<String> (result);
StringBuilder rString = new StringBuilder();
Separator sep = new Separator(", ");
//String sep = ", ";
for (String each : slist) {
rString.append(sep).append(each);
}
return rString;
Run Code Online (Sandbox Code Playgroud) 我对这Map<?,?>
不是一个事实感到惊讶Collection<?>
.
我认为如果宣布这样的话会有很多意义:
public interface Map<K,V> extends Collection<Map.Entry<K,V>>
Run Code Online (Sandbox Code Playgroud)
毕竟,一个Map<K,V>
是集合Map.Entry<K,V>
,不是吗?
那么为什么没有这样实现呢?
感谢Cletus提供了最权威的答案,但我仍然想知道为什么,如果您已经可以查看Map<K,V>
as Set<Map.Entries<K,V>>
(via entrySet()
),它不仅仅是扩展该界面.
如果a
Map
是aCollection
,那么元素是什么?唯一合理的答案是"键值对"
确切地说,interface Map<K,V> extends Set<Map.Entry<K,V>>
会很棒!
但这提供了非常有限(并且不是特别有用)的
Map
抽象.
但如果是这种情况那么为什么entrySet
界面指定?它必须以某种方式有用(我认为这个位置很容易争论!).
您不能询问给定键映射到的值,也不能删除给定键的条目而不知道它映射到的值.
我不是说这就是它的全部内容Map
!它可以而且应该保留所有其他方法(除了entrySet
现在多余的方法)!
我想知道是否有人知道如何使用assertThat()
和检查列表是否为空Matchers
?
我只能使用JUnit的最佳方式:
assertFalse(list.isEmpty());
Run Code Online (Sandbox Code Playgroud)
但我希望在Hamcrest有一些方法可以做到这一点.
collections ×10
java ×7
c# ×3
ienumerable ×2
junit ×2
.net ×1
algorithm ×1
element ×1
generics ×1
hamcrest ×1
ilist ×1
linq ×1
list ×1
oop ×1
random ×1
set ×1
string ×1
unit-testing ×1
weakhashmap ×1