首頁 >後端開發 >C#.Net教程 >C# 物件到字典

C# 物件到字典

WBOY
WBOY原創
2024-09-03 15:06:30819瀏覽

在C#中,物件是所有子類別的根類別和父類別之一;根據要求,我們可以將物件轉換為其他類型,例如字典,像字典這樣的字串是通用集合類別之一,可用於透過使用System.Collections 將資料儲存為鍵/值對.Generic 套件中,當我們將物件引用作為參數傳遞時,將匯入字典類別。它將藉助其引用轉換為字典資料。我們也可以在 Dictionary 類別中傳遞不同的參數集。

文法

在 C# 中,它有一些預先定義的關鍵字、變數和用於存取應用程式的方法。像這樣,我們使用字典作為表示鍵值對的集合類別之一。它有一系列單字及其含義;字典集合將包含與特定英語詞典單字相關的單字。

using System;
Access Modifiers class class name
{
constructor()
{
---some c# code logics----
}
Access Modifiers return type Method name(object reference name)
{
var reference name = new Dictionary<datatypes, Type>();
conditional statements or loops for to convert the object reference to dictionary reference
----some c# code logics depends upon the requirement—
}
}

以上程式碼是將物件值轉換為字典值的基本語法。根據使用者的需求,我們需要呼叫一些預設的方法、關鍵字和變數。

C# 中的物件到字典函數如何運作?

字典是集合類別之一,用於將資料儲存為鍵值對;沒有特定的順序,可以是升序,也可以是降序。 System.Collection.A 通用命名空間用於實作字典類別及其用於實作應用程式的功能。我們也可以使用介面來實作字典類,即 IDictionary 。是使用字典特性的基本介面之一。

無論何時何地,我們在方法上使用的鍵都必須是唯一的,並且不會接受重複的鍵;另外,空鍵不接受字典,但在值的情況下,它接受空值和重複值,就像java中的映射類別一樣。值是關聯的,可以透過參數來存取它們,因此當我們傳遞參數時,它可能是鍵和值,或者也可以透過參數呼叫一些其他類型。此外,可以使用關聯的鍵存取這些值,每個鍵都有單獨的值和用於產生值的索引。當我們使用字典時,我們還可以設定大小限制,並且我們還可以使用不同的資料類型和相同的方法以及兩組不同的參數。

C# 物件到字典的範例

下面是 C# 物件到字典的不同範例:

範例#1

using System;
class demo
{
public string first { get; set; }
public int second { get; set; }
public int third { get; set; }
public override bool Equals(object vars)
{
var vars1 = vars as demo;
if (object.ReferenceEquals(vars1, null))
return false;
return first == vars1.first && second == vars1.second && third == vars1.third;
}
public override int GetHashCode()
{
var vars2 = 234;
if (first != null)
vars2 = first.GetHashCode();
vars2 = unchecked((vars2 * 625) ^ second);
vars2 = unchecked((vars2 * 725) ^ third);
return vars2;
}
public override string ToString()
{
return string.Format("Welcome To My Domain its a first example for dictionary concepts", first, second, third);
}
public static void Main()
{
demo d = new demo();
Console.WriteLine(d.ToString());
Console.WriteLine("Your first example is ended and completed while we can overwride we can also overwrite the method values");
}
}

輸出:

C# 物件到字典

在第一個範例中,我們使用字典類,其命名空間將用於將物件轉換為字典資料。我們還根據翻譯資料所需的要求使用了一些預設方法來建立應用程式。

範例#2

using System;
using System.Collections.Generic;
namespace Examples
{
public class demo
{
static void Main(string[] args)
{
dem01 d = new dem01()
{
num=76325,
strings="welcome to my domain its a first object creation for  example2"
};
dem01 d1 = new dem01()
{
num=7792,
strings="welcome to my domain its a second object creation for  example2"
};
Dictionary<int, dem01> dvalues = new Dictionary<int, dem01>();
dvalues.Add(d.num, d);
dvalues.Add(d1.num, d1);
dem01 d3 = dvalues[7792];
Console.WriteLine("dem01 7792 in dem01 dictionary");
Console.WriteLine("num=435376, strings=Thank you user for entering the second example values",
d3.num, d3.strings);
Console.WriteLine();
Console.WriteLine("Thank you user for entering the second example values");
foreach (KeyValuePair<int, dem01> vars1 in dvalues)
{
Console.WriteLine("vars = " + vars1.Key);
dem01 d4 = vars1.Value;
Console.WriteLine("num=8799, strings=Thank you user for entering the second example values",
d4.num, d4.strings);
}
Console.WriteLine();
Console.WriteLine("Thank you user for entering the second example values");
foreach (var vars1 in dvalues)
{
Console.WriteLine("vars = " + vars1.Key);
dem01 d5 = vars1.Value;
Console.WriteLine("num=86234, strings=Thank you user for entering the second example values",
d5.num, d5.strings);
}
Console.WriteLine();
Console.WriteLine("Thank you user for entering the second example values");
foreach (int vars in dvalues.Keys)
{
Console.WriteLine(vars + "Thank you users ");
}
Console.WriteLine();
Console.WriteLine("Thank you user for entering the second example values");
foreach (int vars in dvalues.Keys)
{
Console.WriteLine(vars + " ");
dem01 d6 = dvalues[vars];
Console.WriteLine("num=86234, strings=Thank you user for entering the second example values",
d6.num, d6.strings);
}
Console.WriteLine();
Console.WriteLine("Thank you user for entering the second example values");
foreach (dem01 d7 in dvalues.Values)
{
Console.WriteLine("num=86234, strings=Thank you user for entering the second example values",
d7.num, d7.strings);
}
if (!dvalues.ContainsKey(86234))
{
dvalues.Add(86234, d);
}
Console.WriteLine();
if (dvalues.ContainsKey(7792))
{
dem01 d4 = dvalues[7792];
}
else
{
Console.WriteLine("vars does not exist in the dictionary");
}
Console.ReadKey();
}
}
public class dem01
{
public int num { get; set; }
public string strings { get; set; }
}
}

輸出:

C# 物件到字典

在第二個範例中,我們在兩個不同的物件中使用了字典。也就是說,我們可以將二類實例和物件轉換為字典。

範例#3

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Examples
{
class demo
{
static void Main(string[] args)
{
string[] str = new string[]
{
"Siva",
"Raman",
};
var vars = str.ToDictionary(vars1 => vars1,
vars1 => false);
foreach (var vars2 in vars)
{
Console.WriteLine("Welcome To my Domain",
vars2.Key,
vars2.Value);
}
Console.Read();
}
}
}

輸出:

C# 物件到字典

在最後一個範例中,我們使用了 string[] 陣列類,我們可以使用該物件來字典值。使用 forEach 循環,我們可以迭代字串值並將它們列印在輸出控制台上。

結論

在C#中,我們可以將類別物件轉換為其他類型,如字典等。根據需求,我們可以在這裡轉換資料;我們對字典類型值使用了 C# 的預設類別或其他一些預定義或內建類別;這是一個非常快速的資料結構。

以上是C# 物件到字典的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn