Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

245
Vistas
¿Por qué este .split da como resultado un error de matriz fuera de límite?
public class test { public static void main(String[] args) { String[] arr = {"0 1.2.3.4","a bcde"}; System.out.println(arr[0].split(".")[2]); } }

Estoy usando java 8.

la salida esperada es 3 .

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

El argumento para split es una expresión regular , no un literal 'esta es la cadena que debe buscar'. el . el símbolo en expresiones regulares significa 'cualquier cosa', por lo que es como " ".split(" ") - la cadena que está pasando son todos los separadores, por lo tanto, no obtiene ningún resultado.

.split(Pattern.quote(".")) se encargará de ello.

EDITAR: para entrar en detalle, dado que la cadena consta de todos los separadores, la división inicialmente le proporciona una matriz llena de cadenas vacías; uno para cada posición 'entre' cualquier carácter (ya que cada carácter es un separador). Sin embargo, por defecto, la split eliminará todas las cadenas vacías del final, por lo que terminará con una matriz de cadenas de longitud 0.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda