📅  最后修改于: 2021-01-07 05:19:29             🧑  作者: Mango
元组是具有固定数量项的复合数据类型。元组中的每个术语都称为元素。元素的数量是元组的大小。
以下程序显示了如何定义四个术语的元组并使用C#(一种面向对象的编程语言)打印它们。
using System;
public class Test {
public static void Main() {
var t1 = Tuple.Create(1, 2, 3, new Tuple(4, 5));
Console.WriteLine("Tuple:" + t1);
}
}
它将产生以下输出-
Tuple :(1, 2, 3, (4, 5))
下面的程序显示了如何定义四个术语的元组,并使用功能性编程语言Erlang打印它们。
-module(helloworld).
-export([start/0]).
start() ->
P = {1,2,3,{4,5}} ,
io:fwrite("~w",[P]).
它将产生以下输出-
{1, 2, 3, {4, 5}}
元组具有以下优点-
元组本质上是精细的大小,即我们不能向元组中添加元素或从中删除元素。
我们可以搜索元组中的任何元素。
元组比列表快,因为它们具有一组恒定的值。
元组可以用作字典键,因为它们包含不变的值,例如字符串,数字等。
Tuple | List |
---|---|
Tuples are immutable, i.e., we can’t update its data. | List are mutable, i.e., we can update its data. |
Elements in a tuple can be different type. | All elements in a list is of same type. |
Tuples are denoted by round parenthesis around the elements. | Lists are denoted by square brackets around the elements. |
在本节中,我们将讨论可以在元组上执行的一些操作。
is_tuple(tuplevalues)方法用于确定插入的值是否为元组。当插入的值是元组时返回true ,否则返回false 。例如,
-module(helloworld).
-export([start/0]).
start() ->
K = {abc,50,pqr,60,{xyz,75}} , io:fwrite("~w",[is_tuple(K)]).
它将产生以下输出-
True
方法list_to_tuple(listvalues)将列表转换为元组。例如,
-module(helloworld).
-export([start/0]).
start() ->
io:fwrite("~w",[list_to_tuple([1,2,3,4,5])]).
它将产生以下输出-
{1, 2, 3, 4, 5}
方法tuple_to_list(tuplevalues)将指定的元组转换为列表格式。例如,
-module(helloworld).
-export([start/0]).
start() ->
io:fwrite("~w",[tuple_to_list({1,2,3,4,5})]).
它将产生以下输出-
[1, 2, 3, 4, 5]
方法tuple_size(tuplename)返回一个元组的大小。例如,
-module(helloworld).
-export([start/0]).
start() ->
K = {abc,50,pqr,60,{xyz,75}} ,
io:fwrite("~w",[tuple_size(K)]).
它将产生以下输出-
5