C# TryGetValue(TKey,TValue):获取具有指定键的值

C#中的TryGetValue(TKey,TValue)是一个可以用于Dictionary类的方法。该方法的作用是获取指定键所对应的值,如果不存在则返回默认值。下面是该方法的完整攻略。

方法语法

Dictionary类型的TryGetValue()方法有如下两个重载形式:

public bool TryGetValue(TKey key, out TValue value);
public bool TryGetValue(TKey key, TValue value);

其中第一个方法将尝试获取与指定键关联的值,如果值存在,则将该值作为方法的输出参数,返回true。如果值不存在,则返回false,并将输出参数value设置为值类型或引用类型的默认值。

第二个方法与第一个方法类似,但是它将传递的参数value看作是已经初始化的对象,并会将该参数设置为与指定键关联的值。如果值存在,则返回true,否则返回false。

使用示例

以下是两个使用TryGetValue()方法的示例:

示例1:尝试获取Dictionary的指定键的值

Dictionary<string, int> myDictionary = new Dictionary<string, int>();
myDictionary.Add("One", 1);
myDictionary.Add("Two", 2);
myDictionary.Add("Three", 3);

int value1;
if(myDictionary.TryGetValue("Two", out value1))
{
    Console.WriteLine("Value of key 'Two': {0}", value1);
}
else
{
    Console.WriteLine("Key 'Two' not found");
}

int value2;
if(myDictionary.TryGetValue("Four", out value2))
{
    Console.WriteLine("Value of key 'Four': {0}", value2);
}
else
{
    Console.WriteLine("Key 'Four' not found");
}

输出结果为:

Value of key 'Two': 2
Key 'Four' not found

示例2:初始化一个对象并获取Dictionary的指定键的值

Dictionary<string, string> myDictionary = new Dictionary<string, string>();
myDictionary.Add("One", "First");
myDictionary.Add("Two", "Second");
myDictionary.Add("Three", "Third");

string value3 = "";
if(myDictionary.TryGetValue("Two", out value3))
{
    Console.WriteLine("Value of key 'Two': {0}", value3);
}

string value4 = "";
if(myDictionary.TryGetValue("Four", out value4))
{
    Console.WriteLine("Value of key 'Four': {0}", value4);
}
else
{
    Console.WriteLine("Key 'Four' not found");
}

输出结果为:

Value of key 'Two': Second
Key 'Four' not found

总结

TryGetValue()方法在从Dictionary中获取值时非常有用,这样就可以避免因为键不存在而引发异常。我们可以通过两个重载形式的方法来使用,并且可以根据需要决定是否初始化值类型或引用类型的默认值。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# TryGetValue(TKey,TValue):获取具有指定键的值 - Python技术站

(0)
上一篇 2023年4月19日
下一篇 2023年4月19日

相关文章

  • 字符串阵列String[]转换为整型阵列Int[]的实例

    将字符串数组String[]转换为整型数组int[]是编程中很常见的操作,我们可以使用Java提供的内置函数进行转换。 以下是转换的完整攻略: 1.遍历字符串数组 首先,我们需要遍历字符串数组String[],并且将每个元素转换为整型。 String[] strArray = {"10", "20", "30…

    C# 2023年6月8日
    00
  • C#使用AutoResetEvent实现同步

    C#中使用AutoResetEvent实现同步是一种常见的方式,AutoResetEvent是一个同步对象,它允许一个线程等待另一个线程去发出一个信号,当信号发出后,等待的线程就会恢复执行。 实现方式: 首先需要在代码中创建一个AutoResetEvent实例对象,该对象用于线程间的同步,然后在需要同步的线程中调用WaitOne方法让线程等待信号,当发出信号…

    C# 2023年6月7日
    00
  • 轻松学习C#的ArrayList类

    轻松学习C#的ArrayList类 介绍 ArrayList是C#中的一个动态数组类,可以自动调整大小,支持任意数据类型的添加和移除。本文将提供一个完整的攻略,帮助你轻松学习并应用ArrayList。 创建ArrayList对象 你可以使用以下方法创建一个ArrayList对象: ArrayList list = new ArrayList(); 添加元素 …

    C# 2023年5月31日
    00
  • ASP.NET MVC5网站开发项目框架(二)

    下面我来为您详细讲解“ASP.NET MVC5网站开发项目框架(二)”的完整攻略。 标题 本篇攻略主要讲解MVC5项目框架的使用和配置方法。 代码块 下面是MVC5项目框架配置文件中的示例代码块: <appSettings> <add key="webpages:Version" value="3.0.0.0&…

    C# 2023年6月3日
    00
  • C# Mysql 查询 Rownum的解决方法

    下面就给你详细讲解C#和Mysql查询Rownum的解决方法。 什么是Rownum Rownum是Oracle数据库中的一个概念,用于获取指定条件下的前N条记录,但是在Mysql中并没有Rownum,可以通过一些技巧模拟出来。 解决方法 方法一:使用变量模拟Rownum 通过定义一个变量,然后根据变量的值来返回前N条结果。 SET @num := 0, @r…

    C# 2023年5月15日
    00
  • C#中fixed关键字的作用总结

    下面是详细讲解”C#中fixed关键字的作用总结”的攻略。 什么是fixed? Fixed是一个C#中的关键字,它和指针密切相关。通常用于控制指针的生命周期,避免指针操作引起内存泄露的问题。它在使用指针访问不安全的内存时非常有用。 fixed的作用 限制指针的生命周期 当我们使用指针访问内存的时候,如果不加任何限制,指针操作会导致内存泄露,而fixed关键字…

    C# 2023年6月3日
    00
  • 深入理解C#泛型:new与where关键字全解析

    C#泛型中new和where是重要的关键字,它们都可以用于约束泛型类型参数的限制;它们都用于提高代码的安全性和可用性,它们的作用在很大程度上提高了代码的可读性和可维护性。在这篇文章中,我们将一起了解泛型中的new和where,以及它们之间的区别。 1. new关键字 在C#泛型中,new关键字被用于指定泛型类型参数必须具有公共的无参数构造函数。 使用new关…

    C# 2023年4月30日
    00
  • Java import static及import原理区别解析

    Java import static及import原理区别解析 在Java中,我们可以使用import语句来导入其他类或接口的定义,以便在当前类中使用它们。除了常规的import语句外,Java还提供了import static语句,用于导入静态成员。本文将详细讲解Java import static及import原理区别解析。 import语句 在Java…

    C# 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部