Использование пар или 2 кортежей в Java [дубликат]

292
задан n611x007 28 February 2014 в 06:54
поделиться

3 ответа

Я не думаю, что в Java есть класс кортежей общего назначения, но создать собственный может быть так же просто, как следующее:

public class Tuple<X, Y> { 
  public final X x; 
  public final Y y; 
  public Tuple(X x, Y y) { 
    this.x = x; 
    this.y = y; 
  } 
} 

Конечно, есть некоторые важные последствия того, как разрабатывать этот класс в отношении равенства, неизменности и т. д., особенно если вы планируете использовать экземпляры в качестве ключей для хеширования.

306
ответ дан 23 November 2019 в 01:40
поделиться

Создайте класс, описывающий концепцию, которую вы фактически моделируете, и используйте ее. Он может просто хранить два Set и предоставлять для них средства доступа, но его следует назвать так, чтобы указывать, что именно представляет собой каждый из этих наборов и почему они сгруппированы вместе.

6
ответ дан 23 November 2019 в 01:40
поделиться

Вот точно такой же вопрос в другом месте, который включает более надежный равен , хэш , на который ссылается maerics:

http://groups.google.com/group/comp.lang.java.help/browse_thread/thread/f8b63fc645c1b487 / 1d94be050cfc249b

Это обсуждение отражает подходы maerics и ColinD: «следует ли мне повторно использовать класс Tuple с неопределенным именем или создавать новый класс с конкретными именами каждый раз, когда я сталкиваюсь с этой ситуацией». Много лет назад я был в последнем лагере; Я превратился в поддержку первого.

17
ответ дан 23 November 2019 в 01:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: