{"id":93,"date":"2023-03-30T04:19:03","date_gmt":"2023-03-30T04:19:03","guid":{"rendered":"https:\/\/canessaalvamiguel.dev\/?p=93"},"modified":"2023-03-30T16:19:16","modified_gmt":"2023-03-30T16:19:16","slug":"using-map-method-in-java","status":"publish","type":"post","link":"https:\/\/canessaalvamiguel.dev\/index.php\/2023\/03\/30\/using-map-method-in-java\/","title":{"rendered":"Using map method in Java"},"content":{"rendered":"\n<p>En Java, el m\u00e9todo <code>map()<\/code> es una herramienta muy \u00fatil que se utiliza para aplicar una funci\u00f3n a cada elemento de una colecci\u00f3n. Es una funci\u00f3n de orden superior que toma una funci\u00f3n como argumento y devuelve un nuevo Stream con los elementos transformados. En este art\u00edculo, vamos a discutir el m\u00e9todo <code>map()<\/code> en detalle y proporcionar algunos ejemplos pr\u00e1cticos.<\/p>\n\n\n\n<p><strong>Sintaxis del m\u00e9todo map()<\/strong><\/p>\n\n\n\n<p>La sintaxis b\u00e1sica del m\u00e9todo <code>map()<\/code> en Java es la siguiente:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&amp;lt;R&gt; Stream&amp;lt;R&gt; map(Function&amp;lt;? super T,? extends R&gt; mapper)\n<\/pre><\/div>\n\n\n<p>Donde:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>R<\/code>: tipo de retorno del nuevo Stream<\/li>\n\n\n\n<li><code>T<\/code>: tipo de elementos de la colecci\u00f3n original<\/li>\n\n\n\n<li><code>mapper<\/code>: la funci\u00f3n que se aplicar\u00e1 a cada elemento de la colecci\u00f3n original<\/li>\n<\/ul>\n\n\n\n<p>El m\u00e9todo <code>map()<\/code> toma una funci\u00f3n que toma un objeto de tipo <code>T<\/code> como entrada y devuelve un objeto de tipo <code>R<\/code>. La funci\u00f3n se aplica a cada elemento de la colecci\u00f3n original, y el resultado se almacena en un nuevo Stream de tipo <code>R<\/code>.<\/p>\n\n\n\n<p><strong>Ejemplos de uso del m\u00e9todo map()<\/strong><\/p>\n\n\n\n<p>Supongamos que tenemos una lista de n\u00fameros enteros y queremos convertirla en una lista de cadenas. Podemos hacerlo f\u00e1cilmente usando el m\u00e9todo <code>map()<\/code> de la siguiente manera:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: java; title: ; notranslate\" title=\"\">\nList&lt;Integer&gt; numeros = Arrays.asList(1, 2, 3, 4, 5);\nList&lt;String&gt; cadenas = numeros.stream()\n                              .map(n -&gt; String.valueOf(n))\n                              .collect(Collectors.toList());\nSystem.out.println(cadenas);\n\n<\/pre><\/div>\n\n\n<p>En este ejemplo, estamos convirtiendo la lista de enteros en una lista de cadenas usando el m\u00e9todo <em>map()<\/em> y la funci\u00f3n lambda <em>n -&gt; String.valueOf(n)<\/em>. La funci\u00f3n lambda toma un n\u00famero entero como entrada y lo convierte en una cadena usando el m\u00e9todo <code>String.valueOf()<\/code>. Finalmente, usamos el m\u00e9todo <code>collect()<\/code> para almacenar los elementos del nuevo Stream en una lista.<\/p>\n\n\n\n<p>La salida de este programa ser\u00eda:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: plain; title: ; notranslate\" title=\"\">\n&#x5B;&quot;1&quot;, &quot;2&quot;, &quot;3&quot;, &quot;4&quot;, &quot;5&quot;]\n<\/pre><\/div>\n\n\n<p><strong>Ejemplo 2: Convertir una lista de objetos en una lista de valores de propiedad<\/strong><\/p>\n\n\n\n<p>Supongamos que tenemos una lista de objetos y queremos crear una lista de los valores de una propiedad espec\u00edfica de esos objetos. Podemos hacerlo usando el m\u00e9todo map() y una funci\u00f3n lambda que acceda a la propiedad deseada. Por ejemplo:<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: java; title: ; notranslate\" title=\"\">\nclass Persona {\n    private String nombre;\n    private int edad;\n\n    public Persona(String nombre, int edad) {\n        this.nombre = nombre;\n        this.edad = edad;\n    }\n\n    public String getNombre() {\n        return nombre;\n    }\n\n    public int getEdad() {\n        return edad;\n    }\n}\n\nList&lt;Persona&gt; personas = Arrays.asList(new Persona(&quot;Juan&quot;, 30), new Persona(&quot;Mar\u00eda&quot;, 25), new Persona(&quot;Pedro&quot;, 40));\nList&lt;String&gt; nombres = personas.stream()\n                               .map(p -&gt; p.getNombre())\n                               .collect(Collectors.toList());\nSystem.out.println(nombres);\n\n<\/pre><\/div>\n\n\n<p>En este ejemplo, estamos creando una lista de nombres de personas a partir de una lista de objetos <code>Persona<\/code>. Usamos el m\u00e9todo<code> map()<\/code> y la funci\u00f3n lambda <code>p -&gt; p.getNombre()<\/code> para acceder al nombre de cada persona en la lista original. Finalmente, usamos el m\u00e9todo `<\/p>\n","protected":false},"excerpt":{"rendered":"<p>En Java, el m\u00e9todo map() es una herramienta muy \u00fatil que se utiliza para aplicar una funci\u00f3n a<\/p>\n","protected":false},"author":1,"featured_media":101,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[13,14,15],"class_list":["post-93","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-java","tag-java","tag-map","tag-streams"],"_links":{"self":[{"href":"https:\/\/canessaalvamiguel.dev\/index.php\/wp-json\/wp\/v2\/posts\/93","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/canessaalvamiguel.dev\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/canessaalvamiguel.dev\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/canessaalvamiguel.dev\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/canessaalvamiguel.dev\/index.php\/wp-json\/wp\/v2\/comments?post=93"}],"version-history":[{"count":5,"href":"https:\/\/canessaalvamiguel.dev\/index.php\/wp-json\/wp\/v2\/posts\/93\/revisions"}],"predecessor-version":[{"id":102,"href":"https:\/\/canessaalvamiguel.dev\/index.php\/wp-json\/wp\/v2\/posts\/93\/revisions\/102"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/canessaalvamiguel.dev\/index.php\/wp-json\/wp\/v2\/media\/101"}],"wp:attachment":[{"href":"https:\/\/canessaalvamiguel.dev\/index.php\/wp-json\/wp\/v2\/media?parent=93"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/canessaalvamiguel.dev\/index.php\/wp-json\/wp\/v2\/categories?post=93"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/canessaalvamiguel.dev\/index.php\/wp-json\/wp\/v2\/tags?post=93"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}