IterableString.java Source code

Java tutorial

Introduction

Here is the source code for IterableString.java

Source

import java.util.Iterator;
import java.util.NoSuchElementException;

class IterableString implements Iterable<Character>, Iterator<Character> {
    private String str;
    private int count = 0;

    IterableString(String s) {
        str = s;
    }

    public boolean hasNext() {
        if (count < str.length())
            return true;
        return false;
    }

    public Character next() {
        if (count == str.length())
            throw new NoSuchElementException();

        count++;
        return str.charAt(count - 1);
    }

    public void remove() {
        throw new UnsupportedOperationException();
    }

    public Iterator<Character> iterator() {
        return this;
    }
}

public class MainClass {
    public static void main(String args[]) {
        IterableString x = new IterableString("This is a test.");

        for (char ch : x)
            System.out.print(ch);

        System.out.println();
    }
}