Em uma linguagem fortemente tipada, como C ++ e Java, o Array, List e Set comumente usados podem ser apenas um tipo na coleção (você pode revisar: " Falando sobre a estrutura de dados Java - análise da implementação subjacente e considerações do aplicativo ).
dados int [] = new int [3] List <> pessoa = new ArrayList <> (); Definir <Integer> test = new TreeSet <> ();
Se precisarmos de uma coleção de tamanho fixo de diferentes tipos de valores, precisamos usar tuplas
Introdução a tuplas C ++
Tuple é um contêiner poderoso que permite armazenar vários tipos diferentes de dados e é uma generalização de par. Também pode ser utilizado como uma estrutura geral, sem a necessidade de criar uma estrutura e obter as características da estrutura, podendo em alguns casos substituir a estrutura para tornar o programa mais conciso e intuitivo. Em teoria, std :: tuple pode ter um número infinito de variáveis de membro de qualquer tipo, e std :: pair pode ter apenas 2 membros, então quando você precisa salvar 3 ou mais dados, você precisa usar tuplas de tupla (tupla (elemento Grupo) passou a ser citado em c ++ 11.).
std :: tuple <T1, T2, TN> t1; // Cria um objeto de tupla vazio (usando a construção padrão), os elementos correspondentes são tipos T1 e T2 ... Tn, inicializado pelo valor std :: tuple <T1 , T2, TN> t2 (v1, v2, ... TN); // Cria um objeto tupla, seus dois elementos são T1 e T2 ... tipo Tn; Para obter o valor do elemento, você precisa passar o membro da tupla get <Ith> (obj) para obtê-lo (Ith refere-se a obter o número de elementos na tupla, consulte os exemplos específicos abaixo). std :: tuple <T1 &> t3 (ref &); // O tipo de elemento da tupla pode ser uma referência std :: make_tuple (v1, v2); // Como um par, um objeto de tupla também pode ser criado através de make_tuple
Os objetos na tupla podem ser de qualquer tipo diferente e ter qualquer comprimento
Java Tuple
Tupla, que é um único objeto no qual um conjunto de objetos é diretamente empacotado e armazenado. Este objeto recipiente permite que os elementos nele sejam lidos. Mas não é permitido armazenar novos objetos nele. (Este conceito também é chamado de transferência de dados Objeto ou mensageiro)
tupla python
A lista de tipos de dados coletivos e tupla do Python são muito semelhantes, a diferença é:
A tupla é definida por parênteses (), e o conteúdo do elemento não pode ser editado após a definição (ou seja, imutável), enquanto a lista é definida por colchetes [] e seu conteúdo de elemento pode ser editado (ou seja, alterável). As ações de edição incluem excluir pop () e anexar até o final anexar (), inserir inserir ().
list1 = ['cong', 'rick', 'long'] // list tupe1 = ('Jan', 'Feb', 'Mar') // tupla, os elementos da tupla não podem ser modificados, não podem ser adicionados ou excluídos . tupeformList = tuple (lista1)
A natureza das tuplas em python é semelhante a java
Tuplas, como listas, podem ser usadas para armazenamento de dados e contêm vários dados;
Mas a diferença com a lista é que a lista só pode armazenar o mesmo tipo de dados, mas a tupla é diferente. Ela pode armazenar diferentes tipos de dados, como armazenamento int, string, lista etc. ao mesmo tempo, e pode ser expandida indefinidamente de acordo com as necessidades.
Tupla TypeScript
TypeScript injeta tipagem forte em JavaScript, tornando o JavaScript mais parecido com Java, como:
let sites: string [] ----> String args []
As matrizes de JavaScript podem armazenar qualquer tipo. Mas o TypeScript se torna uma tupla. Na verdade, se você não entende o conceito de tuplas, ainda pode usá-lo. Basta especificar o tipo.
let myTuple: [número, string, booleano] = [1, 'Poplar', true];
Para elementos fora dos limites, seu tipo será limitado ao tipo de união de cada tipo na tupla
As tuplas do TypeScript são herdadas de linguagens de programação funcionais (como F #) - uma família.
Artigo de referência:
Uso básico da tupla C ++ (resumo) https://blog.csdn.net/sevenjoin/java/article/details/88420885
Use tupla em C ++ https://blog.csdn.net/xiahn1a/article/details/41670203
Java元组Tuple介绍与使用 https://blog.csdn.net/u013412772/article/details/74298257
转载本站文章《TS数据类型:从C++/Java/Python到TS看元组tuple—元组的来龙去脉》,
请注明出处:https://www.zhoulujun.cn/html/webfront/ECMAScript/typescript/2020_0413_8380.html