草庐IT

COLLECTION

全部标签

java - 这是 Java SynchronizedCollection 类中的错误吗?

有一个内部类SynchronizedCollection-在java.util.Collections里面有两个构造函数。第一个获取集合,另一个获取集合和互斥锁。前构造函数检查参数是否为空。但后来不要!这是实现。SynchronizedCollection(Collectionc){if(c==null)thrownewNullPointerException();this.c=c;mutex=this;}SynchronizedCollection(Collectionc,Objectmutex){this.c=c;this.mutex=mutex;}通过这个实现,我可以通过将nul

java - 如何在 Java 中将 java.util.Map 转换为 scala.collection.immutable.Map?

我发现很多人都在尝试这样做,并询问这个问题,但问题总是根据scala代码来回答。我需要调用一个需要scala.collection.immutable.Map的API,但我有一个java.util.Map,如何在我的java代码中将后者干净地转换为前者?编译器不同意它是隐式转换的观点,因为当我尝试它时它拒绝了!谢谢! 最佳答案 获得一个不可变的Scala映射有点棘手,因为集合库提供的转换返回所有返回可变的,你不能只使用toMap因为它需要一个隐式参数,Java编译器当然不会提供。使用该隐式参数的完整解决方案如下所示:importsc

java - Spring @Async : null hibernate session on LAZY collection

我在服务层方法上使用了@Async注释。当我EAGERLY加载@OneToMany集合字段时一切正常,但是当我尝试访问LAZY加载元素时我发现HibernateSessionImplementor对象session为空。这显然给了我一个异常(exception):org.hibernate.LazyInitializationException:failedtolazilyinitializeacollectionofrole:....这是我的Collection字段:@OneToMany(mappedBy="abc",fetch=FetchType.LAZY,cascade=Casc

java - 从 ArrayList 到 Collection 的转换

我在转换过程中遇到了困难。我不知道是否存在语法错误,或者这甚至是不可能的。我需要从——转换privatestaticfinalListCONTACTS=Arrays.asList(newContact("text1","name1"),newContact("text2","name2"),newContact("text3","name3"));到--Collectionc=newArrayList(Arrays.asList(--?--))--?---->(我不明白这里是什么)通过这样做,我打算避免UnsupportedOperationException。感谢任何帮助,谢谢!嘿,

java - "Set"和 "Collection"接口(interface)的最佳可序列化替代品是什么?

我必须序列化Collection和Set接口(interface)。哪些是Java上这些接口(interface)的最佳可序列化替代品? 最佳答案 Set是一个接口(interface)。使用实现集合的哈希集和可序列化的哈希集。只需确保Set中的所有对象都是可序列化的。了解更多信息Whyjava.util.SetisnotSerializable?附言。它不一定是HashSet;使用任何可序列化并实现Set或Collection的具体类。 关于java-"Set"和"Collection

java - 如何在项目中搜索返回 Collection 接口(interface)实现的所有方法?

我一直在阅读JoshBloch的“EffectiveJava2ndEdition”。第43条指出“返回空数组或集合,而不是空值”。我的问题是如何在项目中搜索返回java.util.Collection接口(interface)实现的所有方法?使用的IDE是Eclipse,但任何找到正确结果的方法都是可以接受的,例如正则表达式或其他一些IDE。 最佳答案 在Eclipse帮助中找到:要搜索具有特定返回类型的方法,请使用“*”,如下所示:打开搜索对话框并点击Java搜索选项卡。输入“*”和返回类型,由a分隔空格,在搜索字符串中。选择区分

java - 如何从 Collection 中返回 N 个连续的元素?

我收到了一个对象集合(在我的例子中是一些Contact类)并且需要从该集合返回一个页面。我的代码感觉比需要的要长得多。我是否缺少一些库,这些库可以比像下面这样一次迭代每个元素更优雅地执行此操作?protectedCollectiongetPageOfContacts(Collectioncontacts,intpageIndex,intpageSize){if(pageIndexcontacts.size()){returncontacts;}intfirstElement=pageIndex*pageSize;intlastElement=(pageIndex+1)*pageSize

java - Collection 是 Java 中 Object 的子类型吗?

是CollectionObject的子类型在java?这可能是一个愚蠢的问题,但不是Object每个类的根? 最佳答案 没有。Collection是一个接口(interface),接口(interface)不能从类继承——因此它们不能从Object继承。(没有实现的接口(interface)从可以有实现的类继承是没有意义的。)但是,任何实现Collection的类显然都必须继承自Object。因此,您可以将实现Collection的对象视为继承自Object,因为最终它们将不得不这样做。这是语义上的差异,但是OO理论中的一个重要区别

java - List<List<String>> 是 Collection<Collection<T>> 的实例吗?

我编写了这个方便的通用函数,用于将集合的集合转换为单个集合:publicstaticSetmakeSet(Collection>a_collection){Iterator>it=a_collection.iterator();Setresult=newHashSet();while(it.hasNext()){result.addAll(it.next());}returnresult;}然后我试着调用它:List>resultLists=...;SetlabelsSet=CollectionsHelper.makeSet(resultLists);我收到以下错误:makeSet(j

java - jUnit 和 Guava,比较 transform() 后的列表相等性

在jUnit测试中,我想根据name列从数据库中获取一些行。然后我想测试我得到的行是否具有我期望的名称。我有以下内容:SettypesToGet=MyClassFactory.createInstances("furniture","audioequipment");CollectionnamesToGet=Collections2.transform(typesToGet,newNameFunction());ListtypesGotten=_svc.getAllByName(typesToGet);assertThat(typesGotten.size(),is(typesToGe