Ios 创建用于计算矩形面积的Swift应用程序
我不知道下一步该怎么办。计算过程正确吗?如何将计算结果输出到标签Ios 创建用于计算矩形面积的Swift应用程序,ios,swift,Ios,Swift,我不知道下一步该怎么办。计算过程正确吗?如何将计算结果输出到标签 这里有一些地方不对劲。您正在尝试将和Int赋值给需要字符串的对象。您还尝试调用计算类的实例方法,而不使用该类的任何实例作为接收器。除此之外,您还必须实际为所述实例上的属性指定值,才能使其正常工作。我相信这就是你的本意 class SecondViewController: UIViewController { @IBOutlet weak var buttonPressed: UIButton! @IBOutlet
这里有一些地方不对劲。您正在尝试将和Int赋值给需要字符串的对象。您还尝试调用计算类的实例方法,而不使用该类的任何实例作为接收器。除此之外,您还必须实际为所述实例上的属性指定值,才能使其正常工作。我相信这就是你的本意
class SecondViewController: UIViewController {
@IBOutlet weak var buttonPressed: UIButton!
@IBOutlet weak var inputLength: UITextField!
@IBOutlet weak var inputWidth: UITextField!
@IBOutlet weak var display: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
}
func displayComputation(sender: UIButton) {
let computationObject = Computation()
computationObject.inputWidth = inputWidth.text.toInt()!
computationObject.inputLength = inputLength.text.toInt()!
display.text = String(format: "%d", computationObject.rectanglePerimeter())
}
}
注意:您的实例应该使用小写,而您的类应该使用大写
如果要计算面积,则公式中似乎也有错误。你所做的是计算周长。这就是你想要的
class Computation {
var buttonPressed = 0
var inputLength = 0
var inputWidth = 0
func rectanglePerimeter() -> Int {
return inputWidth * 2 + inputLength * 2
}
}
您必须创建类的实例:
class Computation {
var inputLength = 0
var inputWidth = 0
func rectanglePerimeter() -> Int {
return 2*inputLength + 2*inputWidth // I think this is what you need
}
}
// later
var c = Computation()
var result = c.rectanglePerimeter()
但是您应该重新考虑一下您在这里所做的事情——这是一个相当混乱的过程(数据类型及其转换、类命名和封装、矩形本身的计算等等)。我认为一本关于面向对象编程的基础书是一个很好的起点 阅读iBooks对Swift的介绍。当你陷入困境时再来。它会回答你的问题。我不能告诉你你的Swift代码是否正确,但我认为矩形面积的公式是宽度*高度。请看这里:计算()从何而来?我收到一个错误“使用未解析标识符”。@user139863您应该阅读我的完整答案。Computation()创建计算类的新实例。这会给你一个错误,因为大写与你正在使用的代码不同,因为你没有正确地大写你的类名。好的,谢谢!我现在明白了@user139863@user139863如果这解决了问题,请标记为正确。只需简单地问一个问题:%d是什么意思?