Java 收集到可编辑的

Java 收集到可编辑的,java,collections,iterable,Java,Collections,Iterable,如何从集合或列表等集合中获取java.lang.Iterable? 谢谢 A是一个 所以你可以写: public static void main(String args[]) { List<String> list = new ArrayList<String>(); list.add("a string"); Iterable<String> iterable = list; for (String s

如何从
集合
列表等集合中获取
java.lang.Iterable
? 谢谢

A是一个

所以你可以写:

public static void main(String args[]) {
    List<String> list = new ArrayList<String>();
    list.add("a string");

    Iterable<String> iterable = list;
    for (String s : iterable) {
        System.out.println(s);
    }
}
publicstaticvoidmain(字符串参数[]){
列表=新的ArrayList();
添加(“字符串”);
Iterable=列表;
for(字符串s:iterable){
系统输出打印项次;
}
}

我不清楚您需要什么,所以:

这会得到一个迭代器

SortedSet<String> sortedSet = new TreeSet<String>();
Iterator<String> iterator = sortedSet.iterator();
SortedSet-SortedSet=new TreeSet();
迭代器迭代器=sortedSet.Iterator();
集合和列表是可编辑的,因此可以执行以下操作:

SortedSet<String> sortedSet = new TreeSet<String>();
Iterable<String> iterable = (Iterable<String>)sortedSet;
SortedSet-SortedSet=new TreeSet();
Iterable Iterable=(Iterable)sortedSet;

Iterable
集合
的超级接口,因此实现
集合
列表
的任何类(如
集合
也实现
Iterable

java.util.Collection
扩展
java.lang.Iterable
),您不必做任何事情,这已经是一个难以忍受的问题了

groovy:000> mylist = [1,2,3]
===> [1, 2, 3]
groovy:000> mylist.class
===> class java.util.ArrayList
groovy:000> mylist instanceof Iterable
===> true
groovy:000> def doStuffWithIterable(Iterable i) {
groovy:001>   def iterator = i.iterator()
groovy:002>   while (iterator.hasNext()) {
groovy:003>     println iterator.next()
groovy:004>   }
groovy:005> }
===> true
groovy:000> doStuffWithIterable(mylist)
1
2
3
===> null
和接口都扩展了接口,而接口本身扩展了接口。

publicstaticvoidmain(字符串args[]){
public static void main(String args[]) {
    List<String> list = new ArrayList<String>();
    list.add("a string");


    Collection<String> collection = list;
    Iterable<String> iterable = collections;
    for (String s : iterable) {
        System.out.println(s);
    }

list -> collection->iterable
}
列表=新的ArrayList(); 添加(“字符串”); 集合=列表; Iterable=集合; for(字符串s:iterable){ 系统输出打印项次; } 列表->集合->可编辑 }
你是说
迭代器
而不是
Iterable
List
实现了
Iterable
接口。
迭代器
允许您在
列表
的元素中进行迭代。我的界面实际上是SortedSett OP要求的是
Iterable
而不是
迭代器
谢谢,这是一个通用问题我知道OP询问过它,但是对
Iterable
的赋值是完全没有必要的。@nwinkler同意你的意见。谢谢,这是一个通用的issue@myborobudur:您对仿制药有什么问题?谢谢,这是一个仿制药问题。谢谢,这是一个仿制药问题