c# - 直接来自用户在控制台中的动态输入
问题描述
在以下代码中;
for (int i = 0; i < 5; i++)
{
dynamic x;
x = Console.ReadLine(); //readline methode returns string.
Console.WriteLine(x.GetType().ToString());
}
我试图做一个简单的概念,用户想输入 5 个不同类型数据的元素,然后每次都会出现。
问题是,ReadLine 将始终以字符串形式返回值,我可以使用 convert 但仍然会强制用户输入唯一的转换类型。
我一直在寻找,但真的不知道该怎么做,因为我不知道如何表达这个问题。
是否有另一种方法可以从用户或我不知道的属性动态获取输入。
解决方案
不,没有其他方法可以接受来自控制台的用户输入。它总是文本/字符串。
您必须将输入从Console.ReadLine()
字符串解析为您需要的任何类型。您的问题是,如果您只有一个字符串,则无法知道类型是什么。如果用户输入“2”,她的意思是数字 2(int)还是她实际上的意思是“2”(字符串)。
推荐阅读
- numpy - ImportError: numpy.core.multiarray 导入失败-即使我已经安装了 NumPy?
- google-cloud-platform - 如何从谷歌大查询中删除数据集?
- api - 如何基于 http req 方法运行 next.js 中间件功能?就像为“POST”请求而不是“GET”调用中间件函数
- operating-system - thr minix3 proc.c 中的 set_idle_name 有什么作用?
- windows - C# Wuapi 提供了不正确的功能更新信息
- extjs - Sencha ExtJS 为什么选项返回null?
- jquery - 从特定日期在 Jquery 中设置最大日期
- grpc - 如何允许 Java 中的 gRPC Channel 使用多个连接?
- react-native - ReactNative:AsyncStorage 问题:我无法正确检索数据
- mysql - 用密钥 On ExpressJs for mysql 续集多个依赖关联问题