+1!

I thought RandomAccess was implemented by way more classes, but looking at
the list of implementors, I guess checking for RandomAccess is the best
choice.

2011/5/14 Jakob Korherr (JIRA) <dev@myfaces.apache.org>

>
>    [
> https://issues.apache.org/jira/browse/MYFACES-3130?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13033496#comment-13033496]
>
> Jakob Korherr commented on MYFACES-3130:
> ----------------------------------------
>
> +1 for that Jan-Kees.
>
> But I would check for (instanceof RandomAccess) rather than ArrayList (see
> [1]).
>
> [1]
> http://download.oracle.com/javase/1,5.0/docs/api/java/util/RandomAccess.html
>
> > [PERF] Avoid unnecessary AbstractList$Itr instances
> > ---------------------------------------------------
> >
> >                 Key: MYFACES-3130
> >                 URL: https://issues.apache.org/jira/browse/MYFACES-3130
> >             Project: MyFaces Core
> >          Issue Type: Improvement
> >          Components: JSR-314
> >         Environment: myfaces core trunk
> >            Reporter: Martin Kočí
> >         Attachments: MYFACES-3130-example.patch
> >
> >
> > Similar issue: MYFACES-3129
> > loop from java 5:
> > for (Object object: objects)
> > creates new instance of AbstractList$Itr, if objects are instance of
> ArrayList.
> > Similar situation is with explicit .iterator() call.
> > In my testcases, it is about ~ 100 000 instances per request/response.
> Creation itself is cheap, but triggers GC lately.
> > I suggest to use old index-style for (i = 0; i < childCount;   i++) if
> possible. Are there any rawbacks of index-based iteration?
> > Children is List and as implementation detail we  know that it is
> instance of ArrayList.
>
> --
> This message is automatically generated by JIRA.
> For more information on JIRA, see: http://www.atlassian.com/software/jira
>

Reply via email to