Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

373
Visualizações
Java: ¿la forma más fácil de obtener una propiedad única de cada objeto en una lista/matriz?

Digamos que tengo un objeto de persona con propiedades como name , color de hair color y eye color . Tengo la siguiente matriz Person[] people que contiene instancias de objetos person.

Sé que puedo obtener la propiedad de name de uno de los objetos Person con

 // create a new instance of Person Person george = new Person('george','brown','blue'); // <<< make a people array that contains the george instance here... >>> // access the name property String georgesName = people[0].name;

Pero, ¿qué pasa si quiero acceder a la propiedad de name de todos sin usar índices? Por ejemplo, ¿para crear una matriz o una lista de solo nombres o colores de cabello? ¿Tengo que iterar manualmente a través de mi matriz de people ? ¿O hay algo interesante en Java como String[] peopleNames = people.name ?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Dos opciones:

  1. Iteración
  2. Flujos ( Java 8 )

Iteración

 List<String> names = new ArrayList<>(); for (Person p : people) { names.add(p.name); }

Corrientes

 String[] names = Arrays.stream(people).map(p -> p.name).toArray(size -> new String[people.length]);
over 4 years ago · Santiago Trujillo Relatório

0

java 8:

 String[] names = Arrays.asStream(people).map(Person::getName).asArray(String[]::new);
over 4 years ago · Santiago Trujillo Relatório

0

Está buscando una característica funcional en un lenguaje Java inicialmente solo imperativo. Como ya se mencionó en otras respuestas, desde Java 8, también tiene elementos funcionales (por ejemplo, transmisiones). Sin embargo, todavía no se recomienda su uso. Esta publicación de blog explica las desventajas de los flujos sobre los bucles (es decir, rendimiento, legibilidad, mantenibilidad).

Si está buscando un código funcional y seguro sin implicaciones tan importantes, pruebe Scala:

 case class Person(name: String) val persons = Array(Person("george"), Person("michael"), Person("dexter")) val personNames = persons.map(_.name)

La principal diferencia es que este código Scala es fácil de leer y tiene un rendimiento comparable al de un código Java que usa un bucle porque el código traducido de Scala a Java usa un bucle while internamente.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda