05/10/2010, 19:08
|
| | Fecha de Ingreso: octubre-2010
Mensajes: 9
Antigüedad: 14 años, 2 meses Puntos: 1 | |
Respuesta: Tratamiento de Strings No sé qué cacao mental llevas en la cabeza, pero en ese código hay una cantidad alta de errores, y viendo tu nick creo saber perfectamente de dónde vienen. Veamos: - No puedes acceder a las componentes de un String como si se tratase de un array. En su lugar, usa String#charAt, que devuelve un valor de tipo char
- El operador de igualdad, ==, cuando se aplica a objetos (String es un objeto), no compara los objetos, sino las referencias, es decir, devuelve true si los dos objetos son EL MISMO. Para comparar objetos, utiliza Object#equals.
- Las cadenas de texto comienzan su indexación en 0, no en 1, y terminan en length()-1
- El objeto String es inmutable, es decir, una vez construido, no puede cambiar. Esto puede ser desconcertante al principio pero es el motivo de que los objetos String se puedan compartir y publicar sin riesgo y sin necesidad de realizar copias defensivas. A la vez añade un nivel de complejidad (tanto computacional como en implementación) a operaciones casi triviales en otros lenguajes, pero hay alternativas (StringBuilder, por ejemplo).
|