Sorting streams containing nulls

Brian Goetz brian.goetz at oracle.com
Wed Nov 7 05:30:03 PST 2012


The exact specification is not yet written, but we are not expecting stream implementations or operations to do anything special with nulls.  This means nulls may be passed to lambdas or inserted into collections that do not support them, resulting in NPE.  



On Nov 7, 2012, at 5:22 AM, Georgiy Rakov wrote:

> Hello.
> 
> When we make sorted(...).iterator() on Stream instance containing one 
> ore more nulls we receive NPE. The example of stack trace is below:
> 
>    java.lang.NullPointerException
>         at java.util.PriorityQueue.offer(PriorityQueue.java:320)
>         at java.util.PriorityQueue.add(PriorityQueue.java:306)
>         at java.util.streams.ops.SortedOp.iterator(SortedOp.java:105)
>         at java.util.streams.ops.SortedOp.wrapIterator(SortedOp.java:97)
>         at
>    java.util.streams.AbstractPipeline.iterator(AbstractPipeline.java:329)
>         ...
> 
> Could you please tell if it is considered as expected behavior or it's 
> going to be fixed somehow.
> 
> Georgiy.
> 



More information about the lambda-dev mailing list