Obtener el código hash del rango especificado en C#

La estructura de rango se introduce en C# 8.0. Representa un rango que tiene índices de inicio y fin. Puede obtener el código hash del rango especificado con la ayuda del método GetHashCode() proporcionado por la estructura Range. Este método devuelve el código hash de la instancia especificada.

Sintaxis:

public override int GetHashCode();

Ejemplo 1:

// C# program to illustrate how to find 
// the hash code of the given ranges
// Using GetHashCode() method of Range
// struct
using System;
  
namespace range_example {
  
class GFG {
  
    // Main Method
    static void Main(string[] args)
    {
        // Creating range
        // using Range constructor
        var r1 = new Range(2, 4);
  
        // Creating range
        // using Range operator
        Range r2 = 1..10;
  
        // Creating a range
        // using StartAt() method
        var r3 = Range.StartAt(4);
  
        // Get the hash code of the given ranges
        Console.WriteLine("Hash Code of Range_1: " +r1.GetHashCode());
        Console.WriteLine("Hash Code of Range_2: " + r2.GetHashCode());
        Console.WriteLine("Hash Code of Range_3: " + r3.GetHashCode());
    }
}
}

Producción:

Hash Code of Range_1: -1254614029
Hash Code of Range_2: 853498667
Hash Code of Range_3: -1528050329

Ejemplo 2:

// C# program to illustrate how to find
// the hash code of the given ranges
// Using GetHashCode() method of Range struct
using System;
   
namespace range_example {
   
class GFG {
   
    // Main Method
    static void Main(string[] args)
    {
        // Creating and initializing an array
        int[] arr = new int[8] {100, 200, 300, 400,
                               500, 600, 700, 800};
   
        // Creating a range
        // using StartAt() method
        var r = Range.StartAt(3);
        var new_arr = arr[r];
   
        // Displaying the range
        // and the elements
        Console.WriteLine("Range: " + r);
        Console.Write("HashCodes: ");
   
        foreach(var i in new_arr)
            Console.Write($" [{i.GetHashCode()}]");
    }
}
}

Producción:

Range: 3..^0
HashCodes:  [400] [500] [600] [700] [800]

Publicación traducida automáticamente

Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *