gpt4 book ai didi

c# - 字符串与一组字符串值的比较

转载 作者:行者123 更新时间:2023-11-30 13:14:58 25 4
gpt4 key购买 nike

我有一个像这样的函数(foo):我需要比较输入字符串并相应地执行任务。任务相同,但仅适用于选定的一组值。对于所有其他值,什么也不做。

function foo(string x)

{
if(x == "abc")
//do Task1

if(x == "efg")
//do Task1
if(x == "hij")
//do Task1
if(x == "lmn")
//do Task1
}

除此之外还有其他检查方法吗?或者将 OR 运算符放在 if 中?

什么是首选方式?

最佳答案

有很多方法可以做到这一点。一个是这样的:

var target = new HashSet<string>{ "abc", "efg", "lmn" };
if (target.Contains(x)) {
...
}

At max [my list of strings] can grow to 50 strings which is a rare possibility.

然后你应该让target在你的类中成为一个static readonly,像这样:

private static readonly StringTargets = new HashSet<string>{ "abc", "efg", "lmn" };

这样做可以确保集合只创建一次,并且不会在每次执行使用它的方法时都重新创建。

关于c# - 字符串与一组字符串值的比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18059474/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com