首页 >后端开发 >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
上一篇:C# object initializer下一篇:Pointers in C#