如何找到矩形区域,Convert.ToDouble问题

时间:2019-01-26 19:03:15

标签: c#

问题出在第23和25行。

n

我不知道如何进行从字符串到双精度的转换,以便程序从用户那里获取双精度数字。

我的编程老师曾经做过,但我忘了注意。

double r.length = Convert.ToDouble(Console.ReadLine());

double r.width = Convert.ToDouble(Console.ReadLine());

3 个答案:

答案 0 :(得分:1)

除了阿米尔·阿巴比安(Amir Arbabian)在回答中所说的以外,还有另一个问题。 Rectangle.widthRectangle.length的保护级别未指定,因此默认为私有。要使其可访问,请在length的{​​{1}}和width字段之前添加public关键字。

Rectangle

最后一件事是您在行上有一个额外的右括号(public double length; public double width;

)

只需删除一个右括号即可删除该错误。并删除Amir Arbabian所说的double关键字。

另外,您需要最后double r.width = Convert.ToDouble(Console.ReadLine())); 做些什么?

答案 1 :(得分:1)

有几处要解决的问题:

ChoosenItems = new string[8]

  • Rectanglelength都应为width
  • publiclength都应该是属性
    • 即,他们应该附加width
  • { get; set; }length的名称均应大写,因为它们是属性
    • 这是C#命名约定
  • 重写width来为对象创建描述/字符串

ToString()

  • ExecuteRectangle中引用doubler.length时不需要r.width关键字
  • 要将字符串转换为双精度,请使用ExecuteRectangle
double.TryParse

答案 2 :(得分:0)

您必须将其写为

r.width = Convert.ToDouble(Console.ReadLine());

没有 double 关键字。 仅在声明某些内容时才使用类型,但是在这里,您只是将值分配给对象的字段。 希望有帮助。