arrayiteratortest.java

来自「BOOK:Beginning Algorithms Code Example」· Java 代码 · 共 62 行

JAVA
62
字号
package com.wrox.algorithms.iteration;import junit.framework.TestCase;/** * Test cases for {@link ArrayIterator}. * */public class ArrayIteratorTest extends TestCase {    public void testIterationRespectsBounds() {        Object[] array = new Object[] {"A", "B", "C", "D", "E", "F"};        ArrayIterator iterator = new ArrayIterator(array, 1, 3);        iterator.first();        assertFalse(iterator.isDone());        assertSame(array[1], iterator.current());        iterator.next();        assertFalse(iterator.isDone());        assertSame(array[2], iterator.current());        iterator.next();        assertFalse(iterator.isDone());        assertSame(array[3], iterator.current());        iterator.next();        assertTrue(iterator.isDone());        try {            iterator.current();            fail();        } catch (IteratorOutOfBoundsException e) {            // expected        }    }    public void testBackwardsIteration() {        Object[] array = new Object[] {"A", "B", "C"};        ArrayIterator iterator = new ArrayIterator(array);        iterator.last();        assertFalse(iterator.isDone());        assertSame(array[2], iterator.current());        iterator.previous();        assertFalse(iterator.isDone());        assertSame(array[1], iterator.current());        iterator.previous();        assertFalse(iterator.isDone());        assertSame(array[0], iterator.current());        iterator.previous();        assertTrue(iterator.isDone());        try {            iterator.current();            fail();        } catch (IteratorOutOfBoundsException e) {            // expected        }    }}

⌨️ 快捷键说明

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