Question: Implement a MyArrayList method named contains(). The contains method should take an argument of AnyType, and return an integer indicating whether or not the argument

Implement a MyArrayList method named contains(). The contains method should take an argument of AnyType, and return an integer indicating whether or not the argument is contained in the array field of the MyArrayList.

If the item is not found in the array, return -1. If it is, return the index of the element within the array.

package javaapplication1;

public class MyArrayList implements Iterable { private static final int DEFAULT_CAPACITY = 10; private int theSize; private AnyType [ ] theItems; public MyArrayList() { doClear( ); } public void clear( ) { doClear( ); } public void doClear( ) { theSize = 0; ensureCapacity( DEFAULT_CAPACITY ); } public int size( ) { return theSize; } public boolean isEmpty( ) { return size( ) == 0; } public void trimToSize( ) { ensureCapacity( size( )); } public AnyType get( int idx ) { if( idx < 0 || idx >= size( )) throw new ArrayIndexOutOfBoundsException( ); return theItems[ idx ]; }

public AnyType set( int idx, AnyType newVal ) { if( idx < 0 || idx >= size( )) throw new ArrayIndexOutOfBoundsException( ); AnyType old = theItems[ idx ]; theItems[ idx ] = newVal; return old; } public void ensureCapacity( int newCapacity ) { if( newCapacity < theSize ) return; AnyType [ ] old = theItems; theItems = (AnyType[ ]) new Object[ newCapacity ]; for(int i = 0; i < size( ); i++ ) theItems[ i ] = old[ i ]; } public boolean add( AnyType x ) { add( size( ), x ); return true; } public void add( int idx, AnyType x ) { if( theItems.length == size( )) ensureCapacity( size( ) * 2 + 1 ); for( int i = theSize; i > idx; i-- ) theItems[ i ] = theItems[ i - 1 ]; theItems[ idx ] = x; theSize++; } public AnyType remove( int idx ) { AnyType removedItem = theItems[ idx ]; for( int i = idx; i < size( ) -1; i++ ) theItems[ i ] = theItems[ i + 1 ]; theSize--; return removedItem; } public java.util.Iterator iterator( ) { return new ArrayListIterator( ); } private class ArrayListIterator implements java.util.Iterator { private int current = 0; public boolean hasNext( ) { return current < size( ); } public AnyType next( ) { if( !hasNext( )) throw new java.util.NoSuchElementException( ); return theItems[ current++ ]; } public void remove( ) { MyArrayList.this.remove( --current ); } } public int contains(AnyType x){ } }

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!