Tag Archives: comparar

C# – Comparando Arrays

Não tem jeito. Apesar da imensa blibloteca que o .NET Framework possui, ainda não há (pelo menos até onde consegui pesquisar) um método nativo para comparação de Arrays ou Coleções.

Como esta foi uma necessidade que tive mais de uma vez em sistemas dos quais participei na construção, publicarei um método genérico para comparação de Arrays simples em C#.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/// <summary>
/// Compara dois arrays de string
/// </summary>
/// <param name="arrayA">Array 1</param>
/// <param name="arrayB">Array 2</param>
/// <returns>True se os arrays forem iguais,
/// False do contrário</returns>
public static bool ArrayCompare(string[] arrayA, string[] arrayB)
{
	if (arrayA.Length != arrayB.Length)
	{
		return false;
	}
	for (int i = 0; i < arrayA.Length; i++)
	{
		if (arrayA[i] != arrayB[i])
		{
			return false;
		}
	}
	return true;
}

O código abaixo completo mostra a utilização da função:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
using System;
 
public class testCompareArrays
{
	public static void Main(string[] args)
	{
		string[] array1 = new string[] { "a", "b", "c", "d", "e" };
		string[] array2 = new string[] { "a", "b", "c", "d", "e" };
 
		if (ArrayCompare(array1, array2))
		{
			Console.WriteLine("Os arrays são iguais");
		}
		else
		{
			Console.WriteLine("Os arrays são diferentes");
		}
	}
 
	/// <summary>
	/// Compara dois arrays de string
	/// </summary>
	/// <param name="arrayA">Array 1</param>
	/// <param name="arrayB">Array 2</param>
	/// <returns>True se os arrays forem iguais,
	/// False do contrário</returns>
	public static bool ArrayCompare(string[] arrayA, string[] arrayB)
	{
		if (arrayA.Length != arrayB.Length)
		{
			return false;
		}
		for (int i = 0; i < arrayA.Length; i++)
		{
			if (arrayA[i] != arrayB[i])
			{
				return false;
			}
		}
		return true;
	}
}

O exemplos faz uso de um array de strings, porém é simples alterá-lo para qualquer outro tipo, desde que seja nativo ou que sobrecarregue o operado ==.

Bom proveito!

Tomás

Excel – Comparar pastas de trabalho lado a lado

Um novo método disponível é a comparação lado a lado que permite que você veja mais facilmente as diferenças entre duas pastas de trabalho, sem precisar mesclar todas as alterações em uma única pasta de trabalho. Você pode rolar pelas duas pastas de trabalho ao mesmo tempo para identificar diferenças entre elas. Menu Janela / Comparar Lado a lado com.

  1. Abra as pastas de trabalho que deseja comparar lado a lado.
  2. No menu Janela, clique em Comparar Lado a Lado com.
  3. Na barra de ferramentas Comparar Lado a Lado, siga um destes procedimentos:
    • Para rolar através das pastas de trabalho ao mesmo tempo, clique em Rolagem Sincronizada .
    • Para redefinir as janelas da planilha para as posições em que se encontravam quando você iniciou a comparação das pastas de trabalho, clique em Redefinir Posição da Janela .
  4. Clique em Fechar Lado a Lado para interromper a comparação das pastas de trabalho.

Observação Se você abrir duas pastas de trabalho, o comando no menu Janela incluirá o nome de arquivo de uma dessas pastas de trabalho. Por exemplo, abra “pasta1.xls” e “pasta2.xls”. Durante a exibição de “pasta1.xls”, o menu Janela mostrará o comando como Comparar Lado a Lado com pasta2.xls.

Se você tiver fechado a barra de ferramentas Comparar Lado a Lado mas quiser mostrá-la novamente, clique em Personalizar no menu Ferramentas, clique na guia Barra de Ferramentas e, em seguida, selecione Comparar Lado a Lado na lista Barra de Ferramentas.

Abraços

Tomás Vásquez

Comparar pastas de trabalho lado a lado

Um novo método disponível é a comparação lado a lado que permite que você veja mais facilmente as diferenças entre duas pastas de trabalho, sem precisar mesclar todas as alterações em uma única pasta de trabalho. Você pode rolar pelas duas pastas de trabalho ao mesmo tempo para identificar diferenças entre elas. Menu Janela / Comparar Lado a lado com.

  1. Abra as pastas de trabalho que deseja comparar lado a lado.
  2. No menu Janela, clique em Comparar Lado a Lado com.
  3. Na barra de ferramentas Comparar Lado a Lado, siga um destes procedimentos:
    • Para rolar através das pastas de trabalho ao mesmo tempo, clique em Rolagem Sincronizada .
    • Para redefinir as janelas da planilha para as posições em que se encontravam quando você iniciou a comparação das pastas de trabalho, clique em Redefinir Posição da Janela .
  4. Clique em Fechar Lado a Lado para interromper a comparação das pastas de trabalho.

Observação Se você abrir duas pastas de trabalho, o comando no menu Janela incluirá o nome de arquivo de uma dessas pastas de trabalho. Por exemplo, abra “pasta1.xls” e “pasta2.xls”. Durante a exibição de “pasta1.xls”, o menu Janela mostrará o comando como Comparar Lado a Lado com pasta2.xls.

Se você tiver fechado a barra de ferramentas Comparar Lado a Lado mas quiser mostrá-la novamente, clique em Personalizar no menu Ferramentas, clique na guia Barra de Ferramentas e, em seguida, selecione Comparar Lado a Lado na lista Barra de Ferramentas.

AbraçosTomás Vásquez