2011-10-20 11 views
19

Google'dan Guava JavaDoc for Iterables:Google Guava'da (Java), neden Iterables.getFirst() ve getLast() tutarsız olur?

static <T> T getFirst(Iterable<T> iterable, T defaultValue) 

-> Yinelenen boşsa, iterable veya defaultValue içindeki ilk elemanı döndürür.

static <T> T getLast(Iterable<T> iterable) 

->iterable öğesinin son öğesini döndürür.

static <T> T getLast(Iterable<T> iterable, T defaultValue) 

-> Yinelenebilir boşsa, iterable veya defaultValue öğesinin son öğesini döndürür.

Bir statik yöntem eksik (bana):

static <T> T getFirst(Iterable<T> iterable) 

->iterable öğesinin ilk öğesini döndürür.

Bu tutarsızlığın sebebini biliyor musunuz?

cevap

19

bir yardımcı yöntemini haklı çıkarmak için çok basit olduğu için. yöntem sadece iterable.iterator().next() olacak ve getLast() tam olarak benzer davranışı olurdu.

+3

Kesinlikle o 'olacağını konuşan iterable.iterator(). Bir sonraki()', ama ben kabul ediyorum. –

+0

Elbette, çok hızlı yazdım. Bunu tamir edeceğim.() 'Iterables.getLast' gibi yöntemler kullanılırken –

+11

Yine, ben sadece kod okunabilirliği ve niyet ifadesi için mevcut olması yöntemini farz ediyorum ... –

İlgili konular