Рубрики

Класс октетов в JavaTuples

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

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

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

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

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

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

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

Создание Octet Tuple

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

    Синтаксис :

    Octet<A, B, C, D, E, F, G, H> octet = 
        new Octet<A, B, C, D, E, F, G, H>
            (value1, value2, value3, value4, value5, value6, value7, value8);
    

    Пример :

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

      

    import java.util.*;

    import org.javatuples.Octet;

      

    class GfG {

        public static void main(String[] args)

        {

            Octet<Integer, Integer, Integer.Integer, Integer, Integer, Integer, Integer> octet

                = Octet.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));

      

            System.out.println(octet);

        }

    }

    Выход:

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

    Синтаксис :

    Octet<type1, type2, type3, type4, type5, type6, type7> octet = 
        Octet.with(value1, value2, value3, value4, value5, value6, value7, value8);
    

    Пример :

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

      

    import java.util.*;

    import org.javatuples.Octet;

      

    class GfG {

        public static void main(String[] args)

        {

            Octet<Integer, Integer, Integer.Integer, Integer, Integer, Integer, Integer> octet

                = Octet.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));

      

            System.out.println(octet);

        }

    }

    Выход:

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

    Синтаксис :

    Octet<type1, type2, type3, type4, type5, type6, type7> octet = 
        Octet.fromCollection(collectionWith_8_value);
    
    Octet<type1, type2, type3, type4, type5, type6, type7> octet = 
        Octet.fromArray(arrayWith_8_value);
    

    Пример :

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

      

    import java.util.*;

    import org.javatuples.Octet;

      

    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);

      

            Octet<Integer, Integer, Integer, Integer, Integer, Integer, Integer> octet

                = Octet.fromCollection(list);

      

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

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

      

            Octet<Integer, Integer, Integer, Integer, Integer, Integer, Integer> otherOctet

                = Octet.fromArray(arr);

      

            System.out.println(octet);

            System.out.println(otherOctet);

        }

    }

    Выход:

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

Получение ценности

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

Синтаксис :

Octet<type1, type2, type3, type4, type5, type6, type7> octet = 
    new Octet<type1, type2, type3, type4, type5, type6, type7>
        (value1, value2, value3, value4, value5, value6, value7, value8);

type1 val1 = octet.getValue0();

Пример :

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

  

import java.util.*;

import org.javatuples.Octet;

  

class GfG {

    public static void main(String[] args)

    {

        Octet<Integer, Integer, Integer.Integer, Integer, Integer, Integer, Integer> octet

            = Octet.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));

  

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

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

    }

}

Выход:

1
3

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

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

Синтаксис :

Octet<type1, type2, type3, type4, type5, type6, type7> octet = 
    new Octet<type1, type2, type3, type4, type5, type6, type7>
      (value1, value2, value3, value4, value5, value6, value7, value8);

Octet<type1, type2, type3, type4, type5, type6, type7> 
    otherOctet = octet.setAtX(value);

Пример :

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

  

import java.util.*;

import org.javatuples.Octet;

  

class GfG {

    public static void main(String[] args)

    {

        Octet<Integer, Integer, Integer.Integer, Integer, Integer, Integer, Integer> octet

            = Octet.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));

  

        Octet<Integer, Integer, Integer.Integer, Integer, Integer, Integer, Integer> otherOctet

            = octet.setAt3(40);

  

        System.out.println(otherOctet);

    }

}

Выход:

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

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

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

Синтаксис :

Octet<type1, type2, type3, type4, type5, type6, type7> octet = 
    new Octet<type1, type2, type3, type4, type5, type6, type7>
        (value1, value2, value3, value4, value5, value6, value7, value8);

Octet<type 1, type 2, type 3, type 4, type 5, type 6, type 7> octet = 
    octet.addAtx(value);

Пример :

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

  

import java.util.*;

import org.javatuples.Octet;

import org.javatuples.Ennead;

  

class GfG {

    public static void main(String[] args)

    {

        Octet<Integer, Integer, Integer.Integer, Integer, Integer, Integer, Integer> octet

            = Octet.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));

  

        Ennead<Integer, Integer, Integer, Integer.Integer, Integer, Integer, Integer, Integer> ennead

            = octet.addAt8(9);

  

        System.out.println(ennead);

    }

}

Выход:

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

Поиск в октете

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

Синтаксис :

Octet<type1, type2, type3, type4, type5, type6, type7> octet = 
    new Octet<type1, type2, type3, type4, type5, type6, type7>
        (value1, value2, value3, value4, value5, value6, value7, value8);

boolean res = octet.contains(value2);

Пример :

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

  

import java.util.*;

import org.javatuples.Octet;

  

class GfG {

    public static void main(String[] args)

    {

        Octet<Integer, Integer, Integer.Integer, Integer, Integer, Integer, Integer> octet

            = Octet.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));

  

        boolean exist = octet.contains(5);

        boolean exist1 = octet.contains(false);

  

        System.out.println(exist);

        System.out.println(exist1);

    }

}

Выход:

true
false

Итерация по октету

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

Синтаксис :

Octet<type1, type2, type3, type4, type5, type6, type7> octet = 
    new Octet<type1, type2, type3, type4, type5, type6, type7>
            (value1, value2, value3, value4, value5, value6, value7, value8);

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

Пример :

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

  

import java.util.*;

import org.javatuples.Octet;

  

class GfG {

    public static void main(String[] args)

    {

        Octet<Integer, Integer, Integer.Integer, Integer, Integer, Integer, Integer> octet

            = Octet.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));

  

        for (Object item : octet)

            System.out.println(item);

    }

}

Выход:

1
2
3
4
5
6
7
8

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

Класс октетов в JavaTuples

0.00 (0%) 0 votes