尝试将字符串转换为 int (C#)

本文关键字:int 转换 字符串 | 更新日期: 2023-09-27 18:30:30

我正在尝试学习 c# 编码(或任何与此相关的代码)的基础知识。我不明白如何获取用户输入并将其放入一个字符串中,以便以后可以用作整数。我以为我可以这样写

string baseOfTriange = int.Parse(Console.ReadLine));

但它不起作用。我也尝试过浮动思维,也许就是这样,但是,我只是迷失在这个概念上。这就是我到目前为止所拥有的,我只是不知道如何将字符串转换为 int。感谢您的任何帮助。

static void Main(string[] args)
{
    // area of a triangle = base(height)/2
    Console.WriteLine("Welcome, enter your triangle dimensions. ");
    Console.WriteLine();
    Console.Write("What is the base of the triangle? ");
    string baseOfTriangle = int.Parse(Console.ReadLine());
    Console.WriteLine("You answered, " + baseOfTriangle + ". ");
    Console.Write("What is your height of the triangle? ");
    string heightOfTriangle = int.Parse(Console.ReadLine());
    Console.WriteLine("You answered, " + heightOfTriangle + ". ");
    Console.WriteLine("The area of the triangle is " + (baseOfTriangle * heightOfTriangle / 2));
    Console.ReadLine();
}

尝试将字符串转换为 int (C#)

我假设您由于以下行而收到编译时错误:

string baseOfTriangle = int.Parse(Console.ReadLine());

int.Parse的返回类型是int但您尝试将其分配给类型 string 的变量。将baseOfTriangleheightOfTriangle的类型更改为int,这将解决您的问题。

int baseOfTriangle = int.Parse(Console.ReadLine());
^^^

此外,您可能想要一个浮点答案。否则1*1/2会给你一个0的答案。 将其更改为 baseOfTriangle * heightOfTriangle / 2.0 。或者更好的是使用doubledouble.Parse

查看 C# 编程指南:如何:将字符串转换为数字:http://msdn.microsoft.com/en-us/library/bb397679.aspx

另请查看适用于 c# 的大多数内置数字类型的 TryParse 方法。 例如,int32。TryParse():http://msdn.microsoft.com/en-us/library/system.int32.tryparse(v=vs.110).aspx

static void Main(string[] args)
{
    Console.Write("What is the base of the triangle? ");
    int baseOfTriangle = int.Parse(Console.ReadLine());
    Console.Write("What is your height of the triangle? ");
    int heightOfTriangle = int.Parse(Console.ReadLine());
    Console.WriteLine("The area of the triangle is {0}", (baseOfTriangle * heightOfTriangle) / 2);
    Console.ReadLine();
}

转换为 int 的常用方法是使用 Convert.ToInt32()