www sololearn solo sesion playground para pagina oficial learn iniciar español curso course c# java

sololearn - ¿Hay un equivalente de indexador C#en Java?



sololearn pagina oficial (4)

Quiero hacer esto en Java. ¿Es posible?

public string this[int pos] { get { return myData[pos]; } set { myData[pos] = value; } }


No lo creo. AFAIK el enfoque habitual de Java para esto son public string get(int pos) métodos public string get(int pos) y public void set(int pos, String value) .


No, Java no tiene nada similar a los indexadores de C # u operadores sobrecargados. Esa es la razón más probable por la cual la sintaxis de llamada de función se usa en String.charAt , List.get , Map, put , etc.


No. No puede sobrecargar ningún operador en Java, incluida la indexación. (Sobrecarga de String + , pero eso se ha incorporado a la especificación del lenguaje).

Sólo las matrices soportan la sintaxis [] .

Por lo general, escribirías métodos en su lugar:

public String getValue(int position) { return myData[position]; } public void setValue(int position, String value) { myData[position] = value; }


Puede hacerlo directamente de la misma manera, pero puede usar el Collection framework de la Collection framework de Java que proporciona el tipo de funcionalidad que desea, supongo. Como List , Set , etc.