2. ¿Podemos utilizar Object para los elementos de la tabla Hash? Sí, habría diferentes formas de poder hacerlo: Podemos hacerlo creando una clase contenedor(con la clave) para la tabla Hash, y usar el método hashCode() de Object. Otra forma sería crear una Interfaz con un método getClave() para poder obtener la clave necesaria para la tabla Hash. Otra forma sería utilizar el método hashCode() de la clase String, que redifine la de Object.
3. ¿Cómo es y donde se implementa la función de diepersión? Para la función de dispersión se utilizará el método hashCode(), que mediante una fórmula y con la clave que se le pasa, devolverá un entero que será la posición de la tabla Hash en la que se meterá el objeto de la clave. La función con la que trabaja hashCode() de la clase String es la siguiente: s[0]*31^(n-1) + s[1]*31^(n-2) + ... + s[n-1]
4. ¿Cómo es y donde se implementa la función de diepersión?