Rumah > pembangunan bahagian belakang > Tutorial C#.Net > Bagaimana untuk mendapatkan nilai daripada koleksi HashTable dalam C# menggunakan kunci yang ditentukan

Bagaimana untuk mendapatkan nilai daripada koleksi HashTable dalam C# menggunakan kunci yang ditentukan

王林
Lepaskan: 2023-08-28 23:09:06
ke hadapan
709 orang telah melayarinya

如何使用指定键从 C# 中的 HashTable 集合中获取值

Jadual cincang ialah koleksi pasangan kunci−nilai. Kita boleh mengakses pasangan nilai kunci menggunakan iterator. Kami juga boleh mengakses kekunci jadual hash dalam koleksi. Begitu juga, kita boleh mengakses nilai dalam jadual hash. Memandangkan jadual hash, ia juga mungkin untuk mengakses nilai kunci yang ditentukan atau kunci yang sepadan dengan nilai yang ditentukan.

让我们讨论一下如何在给定键的哈希表集合中访问一个值。

如何使用指定的键从Hashtable集合中获取值?

Di sini, kita perlu mendapatkan nilai daripada pasangan kunci−nilai hashtable apabila kunci diberikan.

考虑以下哈希表。

{“US", "New York"}
{"FR", "Paris"}
{"UK", "London"}
{"IN", "Mumbai"}
{"GER", "Berlin"}
Salin selepas log masuk

Di sini, katakan kita perlu mencari nilai untuk kunci "UK". Jadi kita perlu merentasi jadual hash untuk mengetahui sama ada jadual hash mengandungi kunci = UK. Sebaik sahaja kunci = "UK" ditemui, kami boleh mengakses nilai yang sepadan sebagai jadual hash[kunci].

Contoh

Atur cara yang betul-betul melaksanakan operasi di atas ditunjukkan di bawah −

using System;
using System.Collections;
class MyHashTable {
   // Main Method
   static public void Main() {

      // Create a hashtable instance
      Hashtable Citytable = new Hashtable();

      // Adding key/value pair in the hashtable using Add() method
      Citytable.Add("US", "New York");
      Citytable.Add("FR", "Paris");
      Citytable.Add("UK", "London");
      Citytable.Add("IN", "Mumbai");
      Citytable.Add("GER", "Berlin");
      
      String key;
      Console.WriteLine("Enter the key whose value is to be printed:");
      key = Console.ReadLine();
      if(key != ""){
         if(Citytable.Contains(key) == true){
         string keyval = (string)Citytable[key];
         Console.WriteLine("The value of key {0} = {1}", key,keyval);
      }
      else
         Console.WriteLine ("Value for the key= {0} does not exist", key);
      }    
      Console.ReadKey();
   }
}
Salin selepas log masuk

在上面的程序中,我们定义了一个哈希表。然后用户输入要获取们的键了一个哈希表。然后用户输入要获取们的键一一梗行们首先确定键是否为null或空。这是因为哈希表的键不应为null。因此,如果用户输入一个空值,我们将不会继续查找值。

因此,如果键不为空,我们将检查哈希表是否包含指定的键。为此,我们将检查哈希表是否包含指定的键。为此,我们将检查哈希表是否包含指定的键。为此,我们使使用的我们使用说法 Mengandungi() ,如果键存在于哈希表中则返回benar,如果键不存在则返回palsu。

如果 Mengandungi() 方法返回 benar,则我们只需访问该特定键的值。

string keyval = (string)Citytable[key];
Salin selepas log masuk

Kemudian nilai ini dipaparkan kepada pengguna.

Output

Enter the key whose value is to be printed:
FR
The value of key FR = Paris
Salin selepas log masuk

在这个输出中,用户执行了程序并输入了键值为FR。由于这个键已经存在中存在了应的值成功返回。

现在,如果我们输入一个在哈希表中不存在的键值?

Jom laksanakan lagi program ini. Sekarang kami tidak mempunyai kunci dalam jadual hash kami untuk negara Kanada. Mari masukkan kunci sebagai BOLEH untuk Kanada. Output ditunjukkan di bawah.

Output

Enter the key whose value is to be printed:
CAN
Value for the key= CAN do not exist
Salin selepas log masuk

在这里,由于哈希表中不包含 key=CAN,程序返回值不存在的消息。

以这种方式,我们可以开发一个交互式程序,从哈希表集合中找到指定键的值。

Mari kita ambil contoh lain untuk mencari nilai yang diberi kunci menggunakan jadual cincang.

Di sini kami akan mempertimbangkan jadual hash berikut yang mengandungi nombor dan nama nombor yang sepadan.

{“1.1", "One point One"}
{"1.2", "One point Two"}
{"1.3", "One point Three"}
{"1.4", "One point Four"}
{"1.5", "One point Five"}
Salin selepas log masuk

类似于前面的示例,这里我们也会要求用户输入要查找例的键,然后在哈也会要求用户输入要查找例的键,然后在哈也会要求用户输入要查找例的键,然后在哈中希行显示其值。

Contoh 2

Di bawah diberikan adalah program untuk melakukan perkara yang sama.

using System;
using System.Collections;
class MyHashTable {
   // Main Method
   static public void Main() {

      // Create a hashtable instance
      Hashtable Numbernames = new Hashtable();

      // Adding key/value pair in the hashtable using Add() method
      Numbernames.Add("1.1", "One point One");
      Numbernames.Add("1.2", "One point Two");
      Numbernames.Add("1.3", "One point Three");
      Numbernames.Add("1.4", "One point Four");
      Numbernames.Add("1.5", "One point Five");

      String key = "1.4";
      if(key != ""){
          if(Numbernames.Contains(key) == true){
              string keyval = (string)Numbernames[key];
              if(keyval != "")
                 Console.WriteLine("The value of key {0} = {1}", key,keyval);
              else
                 Console.WriteLine("The value for key = {0} does not exist", key);
          }
          else
             Console.WriteLine ("The key= {0} does not exist in the NumberNames hashtable", key);
      }    
      Console.ReadKey();
   }
}
Salin selepas log masuk

Program ini adalah sama seperti contoh sebelumnya kecuali untuk jadual hash dan syarat tambahan yang telah kami tentukan untuk menyemak nilai kosong. Ini kerana ia boleh berlaku bahawa kunci yang ditentukan mungkin terdapat dalam jadual hash, tetapi nilai yang sepadan mungkin kosong. Kedua, kami tidak membaca input pengguna dalam program ini, sebaliknya, kami telah menggunakan terus kekunci = "1.4" dan kami mencetak nilai kunci ini. Jadi kami memperkenalkan satu lagi cek dalam program ini. Oleh itu program ini kini menyemak −

  • Jika kunci yang dinyatakan kosong

  • Jika kunci tidak kosong, program menyemak sama ada jadual hash mengandungi kunci.

  • Jika jadual hash mengandungi kunci, maka ia mendapatkan semula nilai untuk kunci itu. Jika nilai tidak kosong, maka program memaparkan nilai.

  • Jika nilai kosong, mesej yang sesuai dipaparkan.

Output

The value of key 1.4 = One point Four
Salin selepas log masuk
Output ini dijana apabila kami menentukan kunci yang betul yang terdapat dalam jadual hash.

在本文中,我们看到了如何通过键从哈希表集合中获取们看到了如何通过键从哈希表集合中获取值。我们还通纇示忘通纇社了不同的输出,以清晰地说明概念。在我们接下来的文章中,我们将继续讨论哈希表的相关主题。

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan nilai daripada koleksi HashTable dalam C# menggunakan kunci yang ditentukan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan