public final void insertElementAt(int value,int at){
  if ((m_firstFree + 1) >= m_mapSize) {
    m_mapSize+=m_blocksize;
    int newMap[]=new int[m_mapSize];
    System.arraycopy(m_map,0,newMap,0,m_firstFree + 1);
    m_map=newMap;
  }
  if (at <= (m_firstFree - 1)) {
    System.arraycopy(m_map,at,m_map,at + 1,m_firstFree - at);
  }
  m_map[at]=value;
  m_firstFree++;
}

public final void insertElementAt ( int value , int at ) { if ( ( m_firstFree + 1 ) >= m_mapSize ) { m_mapSize += m_blocksize ; int newMap [ ] = new int [ m_mapSize ] ; System . arraycopy ( m_map , 0 , newMap , 0 , m_firstFree + 1 ) ; m_map = newMap ; } if ( at <= ( m_firstFree - 1 ) ) { System . arraycopy ( m_map , at , m_map , at + 1 , m_firstFree - at ) ; } m_map [ at ] = value ; m_firstFree ++ ; }
inserts the specified node in this vector at the specified index . each component in this vector with an index greater or equal to the specified index is shifted upward to have an index one greater than the value it had previously .
