c# - 无法将字符串隐式转换为 int
问题描述
我正在尝试做一个小乘法计算器。
我正在尝试做
int a;
a = Console.ReadLine();
然后它告诉我不能将字符串隐式转换为 int。
我希望它读取我的 int 变量并将其与另一个 int 变量相乘,但它不允许我这样做。谢谢
namespace ConsoleApp9
{
class Program
{
static void Main(string[] args)
{
int a;
int b;
Console.WriteLine("Hey I'm a calculator in training and I'd like to test out my skills with you.");
Console.WriteLine("I can only do one type of equation right now but I'm still learning");
Console.WriteLine("What will your first number be?");
a = Console.ReadLine();
Console.WriteLine("So youre first number is ");
Console.Write(a);
Console.WriteLine(" Alrighty then what is your second number ?");
b = Console.ReadLine();
Console.WriteLine(a);
Console.WriteLine("*");
Console.WriteLine(b);
Console.WriteLine("=");
Console.WriteLine(a * b);
}
}
}
解决方案
方法
Console.ReadLine();
实际上返回string
. 而类型变量int
只存储整数而不是整数的字符串表示。因此,您需要将输入从 转换string
为int
. string
由于to没有隐式转换int
,因此您需要显式转换。你可以这样做
int a = Convert.ToInt32(Console.ReadLine());
或者int a = int.Parse(Console.ReadLine());
或者int a = (int) Console.ReadLine();
还有其他方法。有关详细信息,请访问如何:将字符串转换为数字(C# 编程指南)
推荐阅读
- python - 横向打印姓名两次
- javascript - Axios 使用基本身份验证禁用用户名和密码提示
- excel - Excel日期格式问题
- python - Python如何通过引用将字符串传递给函数
- python - Python & Pandas:将多行组合成单个单元格
- algorithm - 美丽片段的最大长度
- python - 无法获取按钮的 id(Kivy 和 Python)
- javascript - 我可以使用自定义样式在@react-google-maps/api 上加载消息吗
- material-ui - 使用 MUI Slider 将步骤映射到超过 100 的线性比例
- jdbc - JBoss connecting to SQL Server: Certificates do not conform to algorithm constraints