Java arrays only allow subscripts to range between 0 and N-1 for an array of size N.
The class below aims to remove that constraint by allowing the class user to specify the valid subscripts for a one dimensional array of integers.
public class BoundedIntArray {
private int[] array;
// further state required here
public BoundedIntArray() {…}
public BoundedIntArray(int high) {…}
public BoundedIntArray(int low, int high) {…}
public int length() {…}
public int getElement(int index) {…}
public void putElement(int index, int value) {…}
public void resize(int low, int high) {…}
}
Questa è una domanda che mi è stata data in un recente esame. Sto faticando a capire bene quale sia il problema e cosa stia cercando di ottenere.
Cosa c'è che non va con il solo intervallo tra 0 e N-1? Perché dovresti voler superare la dimensione dell'array e andare oltre N o < 0?
Che cosa basso e alto si riferiscono a?
Queste sono le domande d'esame:
a). The class needs further private members to identify the upper and lower bounds of the array. Provide appropriate declarations for this state. [4 marks]
b). Fornire un'implementazione dei tre costruttori per il Classe BoundedIntArray
[6 punti]c). Fornire un'implementazione per ciascun metodo (con appropriato eccezioni) per la classe BoundedIntArray.
[15 punti]d). Spiega come generalizzare questa classe in modo che gli array di qualsiasi tipo può essere usato piuttosto che solo int.
[5 voti]