java 中集合主要分为键值对集合Map(HashMap和TreeMap),集Set(HashSet和TreeSet),列表List(LinkedList和ArrayList),而C#主要分为列表List,队列Queue,栈Stack,字典Dictionary,集Set。
java 中访问集合中元素通常用get(index)方法,而C#通常用数组下标的形式。
java 中的Map对应C#中的Dictionary,只是java分为有序TreeMap和无序HashMap,而在C#中用排序方法来实现有序和无序。同时java 中用put添加键值对,C#中用add。
接上条,TreeSet也是有序的,HashSet是无序的,同时无序的性能都比有序的好。
java不推荐使用Vector实现线程安全,所有集合的线程安全推荐使用Collections工具类实现。
java中实现队列和栈都使用ArrayDeque,作为队列时使用offer和poll入队出队,C#中则使用Queue的Enqueue和Dequeue。而作为栈时使用和C#相同的push和pop入队出队,当然,只取数据的话两者都用Peek。
扫描二维码关注公众号,回复:
2590374 查看本文章
java 中有序集用的TreeSet,而C#中用的SortedSet。
java 中没有二进制数组,C#中有BitArray。