我将对象列表放入共享的内存缓存中,如下所示。
List<Terminology> terminologyList = companyService.getTerminologyList();
MemcacheService memcacheService = MemcacheServiceFactory.getMemcacheService();
memcacheService.put("terminologyList", "terminologyList")
List<Terminology> oldTerminologyList = (List<Terminology>)memcacheService.get("terminologyList");
terminologyList和oldTerminologyList是否会以相同的顺序出现?
最佳答案
是的,它确实保证订单。
实际上,不是保证顺序的不是内存缓存,因为内存缓存仅存储字节数组。它是客户端Java api,它执行对象到字节数组的序列化,仅使用简单的Java serialization。这样可以确保放入的对象与取出的对象相同。
同样,列表中对象的顺序为guaranteed by specification:A List is an ordered Collection (sometimes called a sequence)
。因此,它将按原样保留元素的顺序。