JavaTuples中的八进制类

A. 八重奏 是来自 Java元组 处理3个元素的库。因为这个八位元是一个泛型类,所以它可以包含任何类型的值。 由于八进制是一个元组,因此它也具有JavaTuple的所有特征:

null
  • 他们是 类型安全
  • 他们是 不变的
  • 他们是 可迭代的
  • 他们是 可序列化
  • 他们是 可比较的 (实现可比较的
  • 他们实施 等于 hashCode()
  • 他们还实施 toString()

类别声明

public final class Octet<A, B, C, D, E, F, G, H> extends Tupleimplements IValue0<A>, IValue1<B>, 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<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

// Below is a Java program to create
// a Octet tuple from Constructor
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

// Below is a Java program to create
// a Octet tuple from with() method
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

// Below is a Java program to create
// a Octet tuple from Collection
import java.util.*;
import org.javatuples.Octet;
class GfG {
public static void main(String[] args)
{
// Creating Octet from List
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);
// Creating Octet from Array
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

// Below is a Java program to get
// a Octet value
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());
}
}


输出:

13

设置八位组值

因为元组是 不变的 ,这意味着不可能修改索引中的值。因此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

// Below is a Java program to set
// a Octet value
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表示要添加值的索引。这个方法返回一个比被调用元组多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);Octet<type 1, type 2, type 3, type 4, type 5, type 6, type 7> octet =     octet.addAtx(value);

实例 :

JAVA

// Below is a Java program to add
// a value
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]

八进制搜索

可以使用预定义的方法在元组中搜索元素 包含() 。它返回一个布尔值,无论该值是否存在。 语法 :

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

// Below is a Java program to search
// a value in a Octet
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);
}
}


输出:

truefalse

在八进制中迭代

自从八进制实现 Iterable 界面这意味着它们可以像集合或数组一样进行迭代。 语法 :

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

// Below is a Java program to iterate
// a Octet
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);
}
}


输出:

12345678

© 版权声明
THE END
喜欢就支持一下吧
点赞14 分享