⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 iteratorchaintest.java

📁 该原代码是实现机器学习中条件随机场模型的Java代码
💻 JAVA
字号:
package lcrf.stuff;

import java.util.Iterator;
import java.util.List;
import java.util.NoSuchElementException;
import java.util.Vector;

import junit.framework.TestCase;

public class IteratorChainTest extends TestCase {
    public void testWithNoIterators() {
        List<Iterator<Integer>> iterators = new Vector<Iterator<Integer>>();

        IteratorChain<Integer> chain = new IteratorChain<Integer>(iterators);
        assertFalse(chain.hasNext());
        try {
            chain.next();
            fail("No Exception was thrown");
        } catch (NoSuchElementException e) {
            // everything is fine
        }
    }

    public void testWithOneEmptyIterators() {
        List<Iterator<Integer>> iterators = new Vector<Iterator<Integer>>();
        iterators.add(new IntegerIterator(0, -1));

        IteratorChain<Integer> chain = new IteratorChain<Integer>(iterators);

        assertFalse(chain.hasNext());
        try {
            chain.next();
            fail("No Exception was thrown");
        } catch (NoSuchElementException e) {
            // everything is fine
        }
    }

    public void testWithOneFilledIterators() {
        List<Iterator<Integer>> iterators = new Vector<Iterator<Integer>>();
        iterators.add(new IntegerIterator(0, 1));

        IteratorChain<Integer> chain = new IteratorChain<Integer>(iterators);
        assertTrue(chain.hasNext());
        assertEquals(0, chain.next().intValue());
        assertFalse(chain.hasNext());
        assertFalse(chain.hasNext());
        try {
            chain.next();
            fail("No Exception was thrown");
        } catch (NoSuchElementException e) {
            // everything is fine
        }
    }

    public void testWithServeralIterators() {
        List<Iterator<Integer>> iterators = new Vector<Iterator<Integer>>();
        iterators.add(new IntegerIterator(0, 1));
        iterators.add(new IntegerIterator(1, 3));
        iterators.add(new IntegerIterator(3, 2));
        iterators.add(new IntegerIterator(5, 7));
        iterators.add(new IntegerIterator(7, 6));

        IteratorChain<Integer> chain = new IteratorChain<Integer>(iterators);
        assertTrue(chain.hasNext());
        assertEquals(0, chain.next().intValue());
        assertTrue(chain.hasNext());
        assertEquals(1, chain.next().intValue());
        assertTrue(chain.hasNext());
        assertEquals(2, chain.next().intValue());
        assertTrue(chain.hasNext());
        assertEquals(5, chain.next().intValue());
        assertTrue(chain.hasNext());
        assertEquals(6, chain.next().intValue());
        assertFalse(chain.hasNext());
        try {
            chain.next();
            fail("No Exception was thrown");
        } catch (NoSuchElementException e) {
            // everything is fine
        }

    }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -