reverseiteratortest.java
来自「BOOK:Beginning Algorithms Code Example」· Java 代码 · 共 62 行
JAVA
62 行
package com.wrox.algorithms.iteration;import junit.framework.TestCase;/** * Test cases for {@link ReverseIterator}. * */public class ReverseIteratorTest extends TestCase { private static final Object[] ARRAY = new Object[] {"A", "B", "C"}; public void testForwardsIterationBecomesBackwards() { ReverseIterator iterator = new ReverseIterator(new ArrayIterator(ARRAY)); iterator.first(); assertFalse(iterator.isDone()); assertSame(ARRAY[2], iterator.current()); iterator.next(); assertFalse(iterator.isDone()); assertSame(ARRAY[1], iterator.current()); iterator.next(); assertFalse(iterator.isDone()); assertSame(ARRAY[0], iterator.current()); iterator.next(); assertTrue(iterator.isDone()); try { iterator.current(); fail(); } catch (IteratorOutOfBoundsException e) { // expected } } public void testBackwardsIterationBecomesForwards() { ReverseIterator iterator = new ReverseIterator(new ArrayIterator(ARRAY)); iterator.last(); assertFalse(iterator.isDone()); assertSame(ARRAY[0], iterator.current()); iterator.previous(); assertFalse(iterator.isDone()); assertSame(ARRAY[1], iterator.current()); iterator.previous(); assertFalse(iterator.isDone()); assertSame(ARRAY[2], iterator.current()); iterator.previous(); assertTrue(iterator.isDone()); try { iterator.current(); fail(); } catch (IteratorOutOfBoundsException e) { // expected } }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?