title: Reduce multiple arrays to a list
body: <p>I'm trying to filter and reduce a <code>List&lt;Map&lt;String, Object&gt;&gt;</code> to <code>List&lt;String&gt;</code> with Java8 new lambdas by doing this:</p>
  
  <pre><code>List&lt;Map&lt;String, Object&gt;&gt; myObjects = new ArrayList&lt;&gt;();
  myObjects.stream()
      .filter(myObject-&gt; myObject.get("some integer value").equals(expectedValue))
      // myObject.get("some attribute") == ["some string", "maybe another string"]
      .map(myObject-&gt; myObject.get("some attribute"))
      .collect(Collectors.toList());
  </code></pre>
  
  <p>The result is a List but I want to combine all the Strings inside the array to the resulting <code>List&lt;String&gt;</code>.</p>
  
  <p>To clarify it, this is the result I'm getting now:</p>
  
  <pre><code>ArrayList{["some string"], ["another string"]}
  </code></pre>
  
  <p>But I want this:</p>
  
  <pre><code>ArrayList{"some string", "another string"}
  </code></pre>
  
  <p>Can someone give me a hint in which part I have to reduce the <code>String[]</code> to a <code>String</code>? I'd guess its on the <code>.map()</code> part but I don't know what I shall change there.</p>
  
  <p><strong>edit:</strong></p>
  
  <p>That's how the <code>List&lt;Map&lt;String, Object&gt;&gt; myObjects</code> can be generated  for testing purpose:</p>
  
  <pre><code>List&lt;Map&lt;String, Object&gt;&gt; myObjects = new ArrayList&lt;&gt;();
  Map&lt;String, Object&gt; myObject = new HashMap&lt;&gt;();
  myObject.put("some integer value", 1);
  String[] theStringIWant = new String[1];
  theStringIWant[0] = "Some important information I want";
  myObject.put("some attribute", theStringIWant);
  myObjects.add(myObject);
  </code></pre>
  
  <p>Which looks like this:</p>
  
  <pre><code>List&lt;MyObject{"some attribute": 1}&gt;
  </code></pre>
  
  <p><em>Note</em>: That's just an example from my unittest. The list normaly contains more than one element and every map has more attributs and not just <code>some attribute</code>.</p>