### Question:
StringStack implements Iterable<String> { public String get(int index) { if (0 <= index && index + 1 < start_byte.size()) { int offset = start_byte.get(index); int length = start_byte.get(index+1) - offset; return new String(block.buffer, offset, length); } else { return null; } } StringStack(String... xs);  StringStack(Iterable<String> xs); int size(); boolean isEmpty(); boolean contains(String o); boolean add(String e); void clear(); String get(int index); int indexOf(String o); Iterator<String> iterator();  }### Answer:
@Test public void testGet() { StringStack ss = new StringStack("moo", "far"); assertEquals(null, ss.get(-1)); assertEquals("moo", ss.get(0)); assertEquals("far", ss.get(1)); assertEquals(null, ss.get(2)); }