On 12 January 2018 at 00:51, Gary Gregory <garydgreg...@gmail.com> wrote: > On Thu, Jan 11, 2018 at 5:23 PM, sebb <seb...@gmail.com> wrote: > >> On 11 January 2018 at 15:22, Gary Gregory <garydgreg...@gmail.com> wrote: >> > Hi, >> > >> > Some APIs, either due to age or design, deal out an Iterator and nothing >> > else. And sometimes, all I care about (in tests, for example, or if the >> > list is a set of aliases) is the first object. >> > >> > The method IteratorUtils.first(Iterator) is a shorthand for >> > IteratorUtils.get(Iterator, 0). >> >> The code method is only shorter by one character and that is a space. >> >> This will just add unnecessary code and maintenance costs. >> > > I do not look at it that way. I see it at providing an abstraction that > says "give me the first element" instead of "give me the 0th element". Code > reads better that way. IMO.
So add a comment. Or write your own wrapper. > What maintenance costs are referring to here? All code needs updating from time to time. Remember JUnit3? Javadoc pre-8? Are you sure that the initial commit will be perfect? Or will the Javadoc need adjusting? Will there be questions asking whether first includes null or not? Such queries may occur even if the Javadoc is perfect. And of course it takes a tiny bit longer to run the tests, and the test logs are bigger. And it's a bit harder to navigate the source. etc. > Gary > > > >> >> > I do not plan to add last(), the obvious sibling to such a method, YAGNI >> > for now. >> > >> > Gary >> > >> > >> > On Thu, Jan 11, 2018 at 2:52 AM, sebb <seb...@gmail.com> wrote: >> > >> >> Also, what is the use case for such methods? >> >> How many will there be - i.e. do you plan to add .last, .second, >> .random? >> >> >> >> I'm not keen on methods that save a few lines of code unless there's a >> >> common use case and the behaviour is obvious/unambiguous from the >> >> name. >> >> >> >> On 11 January 2018 at 07:45, Claude Warren <cla...@xenei.com> wrote: >> >> > does first return the first object or the first non-null object? >> >> > >> >> > If the first object how do you distinguish between first() returning a >> >> null >> >> > object and there being an empty container? >> >> > If the first non-null object how do you determine that nulls were >> >> skipped? >> >> > >> >> > Keep in mind that the Optional implementation in Java8 will throw an >> >> > exception if it is constructed with a null object. >> >> > >> >> > On Wed, Jan 10, 2018 at 4:45 PM, Gary Gregory <garydgreg...@gmail.com >> > >> >> > wrote: >> >> > >> >> >> Hi All, >> >> >> >> >> >> I plan on adding methods like: >> >> >> - IteratorUtils.first(Iterator) >> >> >> - IterableUtils.first(Iterable) >> >> >> >> >> >> Gary >> >> >> >> >> > >> >> > >> >> > >> >> > -- >> >> > I like: Like Like - The likeliest place on the web >> >> > <http://like-like.xenei.com> >> >> > LinkedIn: http://www.linkedin.com/in/claudewarren >> >> >> >> --------------------------------------------------------------------- >> >> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org >> >> For additional commands, e-mail: dev-h...@commons.apache.org >> >> >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org >> For additional commands, e-mail: dev-h...@commons.apache.org >> >> --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org