gpt4 book ai didi

C#疑惑,找数据类型

转载 作者:太空宇宙 更新时间:2023-11-03 17:08:01 26 4
gpt4 key购买 nike

我有以下变量:

string str1 = "1";
string str2 = "asd";
string str3 = "3.5";
string str4 = "a";

现在我需要找到每个字符串的数据类型,即如果删除引号,它可以转换成的数据类型。这是我希望每个变量转换为的内容:

str1 - integer
str2 - string
str3 - double
str4 - char

注意:如果字符串只有一个字符,它应该是 char,虽然一个字符串可以有一个字母,但我限制了它。

仅供引用:这些值是从 DataGrid 中获得的,我在其中手动输入了值。所以一切都变成了一个字符串。有什么办法吗?

最佳答案

当然,没有明确的方法可以做到这一点,但如果您创建一个要按优先级排序的数据类型列表,那么类似这样的方法可能会奏效。

object ParseString(string str)
{
int intValue;
double doubleValue;
char charValue;
bool boolValue;

// Place checks higher if if-else statement to give higher priority to type.
if (int.TryParse(str, out intValue))
return intValue;
else if (double.TryParse(str, out doubleValue))
return doubleValue;
else if (char.TryParse(str, out charValue))
return charValue;
else if (bool.TryParse(str, out boolValue))
return boolValue;

return null;
}

只需对每个字符串调用此函数,您就应该返回适​​当类型的对象。一个简单的类型检查就可以告诉您字符串是如何被解析的。

关于C#疑惑,找数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/606365/

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