Get size of an Iterable in Java

前端 未结 10 1215
半阙折子戏
半阙折子戏 2020-12-08 03:48

I need to figure out the number of elements in an Iterable in Java. I know I can do this:

Iterable values = ...
it = values.iterator();
while (i         


        
10条回答
  •  -上瘾入骨i
    2020-12-08 04:02

    Strictly speaking, Iterable does not have size. Think data structure like a cycle.

    And think about following Iterable instance, No size:

        new Iterable(){
    
            @Override public Iterator iterator() {
                return new Iterator(){
    
                    @Override
                    public boolean hasNext() {
                        return isExternalSystemAvailble();
                    }
    
                    @Override
                    public Object next() {
                        return fetchDataFromExternalSystem();
                    }};
            }};
    

提交回复
热议问题