Рубрики

Десятилетний класс в JavaTuples

Десятилетие — это библиотека Tuple из JavaTuples, которая работает с 3 элементами. Так как этот Десятилетие является универсальным классом, он может содержать любой тип значения.

Так как Decade является Tuple, следовательно, он также имеет все характеристики JavaTuples:

  • Они типичны
  • Они неизменны
  • Они повторяемы
  • Они сериализуемы
  • Они сопоставимы (реализует Comparable <Tuple>)
  • Они реализуют equals () и hashCode ()
  • Они также реализуют toString ()

Декларация класса

public final class Decade<A, B, C, D, E, F, G, H, I, J>
extends Tuple
implements IValue0<A&gt, IValue1<B>, IValue2<C>, IValue3<D>, IValue4<E>, 
           IValue5<F, IValue6<G, IValue7<H&gt, IValue8<I, J>

Иерархия классов

Object
  ↳ org.javatuples.Tuple
      ↳ org.javatuples.Decade<A, B, C, D, E, F, G, H, I, J>

Создание декадного кортежа

  • От конструктора :

    Синтаксис :

    Decade<A, B, C, D, E, F, G, H, I, J> decade = 
        new Decade<A, B, C, D, E, F, G, H, I, J>
            (value1, value2, value3, value4, value5, value6, value7, value8, value9, value10);
    

    Пример :

    // Ниже приведена Java-программа для создания
    // кортеж десятилетия от конструктора

      

    import java.util.*;

    import org.javatuples.Decade;

      

    class GfG {

        public static void main(String[] args)

        {

            Decade<Integer, Integer, Integer, Integer, Integer, Integer, Integer, 

                                                Integer, Integer, Integer> decade

                = Decade.with(Integer.valueOf(1),

                            Integer.valueOf(2),

                            Integer.valueOf(3),

                            Integer.valueOf(4),

                            Integer.valueOf(5),

                            Integer.valueOf(6),

                            Integer.valueOf(7),

                            Integer.valueOf(8),

                            Integer.valueOf(9),

                            Integer.valueOf(10));

      

            System.out.println(decade);

        }

    }

    Выход:

    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    
  • Использование метода with () : метод with () — это функция, предоставляемая библиотекой JavaTuples, для создания экземпляра объекта с такими значениями.

    Синтаксис :

    Decade<type1, type2, type3, type4, type5, type6, type7, type8, type9> decade = 
        Decade.with(value1, value2, value3, value4, value5, value6, value7, value8, value9, value10);
    

    Пример :

    // Ниже приведена Java-программа для создания
    // кортеж Decade из with ()

      

    import java.util.*;

    import org.javatuples.Decade;

      

    class GfG {

        public static void main(String[] args)

        {

            Decade<Integer, Integer, Integer, Integer, Integer, Integer, Integer, Integer,

                                                                   Integer, Integer> decade

                = Decade.with(Integer.valueOf(1),

                              Integer.valueOf(2),

                              Integer.valueOf(3),

                              Integer.valueOf(4),

                              Integer.valueOf(5),

                              Integer.valueOf(6),

                              Integer.valueOf(7),

                              Integer.valueOf(8),

                              Integer.valueOf(9),

                              Integer.valueOf(10));

      

            System.out.println(decade);

        }

    }

    Выход:

    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    
  • Из других коллекций : метод fromCollection () используется для создания кортежа из коллекции, а метод fromArray () — для создания из массива. Коллекция / массив должны иметь тот же тип, что и кортеж, а число значений в коллекции / массиве должно соответствовать классу кортежа.

    Синтаксис :

    Decade<type1, type2, type3, type4, type5, type6, type7, type8, type9> decade = 
        Decade.fromCollection(collectionWith_10_value);
    
    Decade<type1, type2, type3, type4, type5, type6, type7, type8, type9> decade = 
        Decade.fromArray(arrayWith_10_value);
    

    Пример :

    // Ниже приведена Java-программа для создания
    // кортеж десятилетия из коллекции

      

    import java.util.*;

    import org.javatuples.Decade;

      

    class GfG {

        public static void main(String[] args)

        {

            // Создание десятилетия из списка

            List<Integer> list = new ArrayList<Integer>();

            list.add(1);

            list.add(2);

            list.add(3);

            list.add(4);

            list.add(5);

            list.add(6);

            list.add(7);

            list.add(8);

            list.add(9);

            list.add(10);

      

            Decade<Integer, Integer, Integer, Integer, Integer, Integer, Integer, 

                                                  Integer, Integer, Integer> decade

                = Decade.fromCollection(list);

      

            // Создание Decade из массива

            Integer[] arr = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

      

            Decade<Integer, Integer, Integer, Integer, Integer, Integer, Integer,

                                               Integer, Integer, Integer> otherDecade

                = Decade.fromArray(arr);

      

            System.out.println(decade);

            System.out.println(otherDecade);

        }

    }

    Выход:

    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    

Получение значения

Метод getValueX () можно использовать для извлечения значения в кортеже по индексу X. Индексация в кортеже начинается с 0. Следовательно, значение по индексу X представляет значение в позиции X + 1.

Синтаксис :

Decade<type1, type2, type3, type4, type5, type6, type7, type8, type9> decade = 
    new Decade<type1, type2, type3, type4, type5, type6, type7, type8, type9>
        (value1, value2, value3, value4, value5, value6, value7, value8, value9, value10);

type1 val1 = decade.getValue0();

Пример :

// Ниже приведена Java-программа для получения
// значение десятилетия

  

import java.util.*;

import org.javatuples.Decade;

  

class GfG {

    public static void main(String[] args)

    {

        Decade<Integer, Integer, Integer, Integer, Integer, Integer, Integer,

                                               Integer, Integer, Integer> decade

            = Decade.with(Integer.valueOf(1),

                          Integer.valueOf(2),

                          Integer.valueOf(3),

                          Integer.valueOf(4),

                          Integer.valueOf(5),

                          Integer.valueOf(6),

                          Integer.valueOf(7),

                          Integer.valueOf(8),

                          Integer.valueOf(9),

                          Integer.valueOf(10));

  

        System.out.println(decade.getValue0());

        System.out.println(decade.getValue2());

    }

}

Выход:

1
3

Установка значения десятилетия

Поскольку кортежи являются неизменяемыми , это означает, что изменение значения при любом индексе невозможно.
Следовательно, JavaTuples предлагают setAtX (значение), которое создает копию кортежа с новым значением в индексе X и возвращает этот кортеж.

Синтаксис :

Decade<type1, type2, type3, type4, type5, type6, type7, type8, type9> decade = 
    new Decade<type1, type2, type3, type4, type5, type6, type7, type8, type9>
                (value1, value2, value3, value4, value5, value6, value7, value8, value9, value10);

Decade<type1, type2, type3, type4, type5, type6, type7, type8, type9> 
    otherDecade = decade.setAtX(value);

Пример :

// Ниже приведена Java-программа для установки
// значение десятилетия

  

import java.util.*;

import org.javatuples.Decade;

  

class GfG {

    public static void main(String[] args)

    {

        Decade<Integer, Integer, Integer, Integer, Integer, Integer, Integer, 

                                               Integer, Integer, Integer> decade

            = Decade.with(Integer.valueOf(1),

                          Integer.valueOf(2),

                          Integer.valueOf(3),

                          Integer.valueOf(4),

                          Integer.valueOf(5),

                          Integer.valueOf(6),

                          Integer.valueOf(7),

                          Integer.valueOf(8),

                          Integer.valueOf(9),

                          Integer.valueOf(10));

  

        Decade<Integer, Integer, Integer, Integer, Integer, Integer, Integer,

                                            Integer, Integer, Integer> otherDecade

            = decade.setAt3(40);

  

        System.out.println(otherDecade);

    }

}

Выход:

[1, 2, 3, 40, 5, 6, 7, 8, 9, 10]

Добавление значения

JavaTuples не поддерживают Tuple с более чем 10 значениями. Следовательно, нет функции для добавления значения в Decade.

Поиск в Десятилетии

Элемент может быть найден в кортеже с помощью предопределенного метода contains () . Возвращает логическое значение, независимо от того, присутствует это значение или нет.

Синтаксис :

Decade<type1, type2, type3, type4, type5, type6, type7, type8, type9> decade = 
    new Decade<type1, type2, type3, type4, type5, type6, type7, type8, type9>
        (value1, value2, value3, value4, value5, value6, value7, value8, value9, value10);

boolean res = decade.contains(value2);

Пример :

// Ниже приведена Java-программа для поиска
// значение в декаде

  

import java.util.*;

import org.javatuples.Decade;

  

class GfG {

    public static void main(String[] args)

    {

        Decade<Integer, Integer, Integer, Integer, Integer, Integer, Integer, 

                                             Integer, Integer, Integer> decade

            = Decade.with(Integer.valueOf(1),

                          Integer.valueOf(2),

                          Integer.valueOf(3),

                          Integer.valueOf(4),

                          Integer.valueOf(5),

                          Integer.valueOf(6),

                          Integer.valueOf(7),

                          Integer.valueOf(8),

                          Integer.valueOf(9),

                          Integer.valueOf(10));

  

        boolean exist = decade.contains(5);

        boolean exist1 = decade.contains(false);

  

        System.out.println(exist);

        System.out.println(exist1);

    }

}

Выход:

true
false

Итерация по Десятилетию

Начиная с Десятилетия реализуем интерфейс Iterable <Object> . Это означает, что они могут повторяться так же, как коллекции или массивы.

Синтаксис :

Decade<type1, type2, type3, type4, type5, type6, type7, type8, type9> decade = 
    new Decade<type1, type2, type3, type4, type5, type6, type7, type8, type9>
            (value1, value2, value3, value4, value5, value6, value7, value8, value9, value10);

for (Object item : decade) {
        ...
}

Пример :

// Ниже приведена Java-программа для итерации
// десятилетие

  

import java.util.*;

import org.javatuples.Decade;

  

class GfG {

    public static void main(String[] args)

    {

        Decade<Integer, Integer, Integer, Integer, Integer, Integer, Integer, 

                                               Integer, Integer, Integer> decade

            = Decade.with(Integer.valueOf(1),

                          Integer.valueOf(2),

                          Integer.valueOf(3),

                          Integer.valueOf(4),

                          Integer.valueOf(5),

                          Integer.valueOf(6),

                          Integer.valueOf(7),

                          Integer.valueOf(8),

                          Integer.valueOf(9),

                          Integer.valueOf(10));

  

        for (Object item : decade)

            System.out.println(item);

    }

}

Выход:

1
2
3
4
5
6
7
8
9
10

Рекомендуемые посты:

Десятилетний класс в JavaTuples

0.00 (0%) 0 votes