2016-01-19 284 views
0

我的问题是,我试图做一个计算器,但我没有这样做,因为预期的声明问题。我审查了有关预期申报的其他问题,但我没有解决这个问题。预期宣言错误

import UIKit 

class ViewController: UIViewController { 

    @IBOutlet weak var Screen: UILabel! 
    var firstNumber = Int() 
    var secondNumber = Int() 
    var isTypingNumber = false 
    var result = Int() 
    var operation = "" 


    @IBAction func number(sender: AnyObject) { 
     let number = sender.currentTitle 
     if isTypingNumber == true { 
      Screen.text = Screen.text! + number!! 
     } else { 
      Screen.text = number; 
     } 
     isTypingNumber = true 


    } 


    @IBAction func operation(sender: AnyObject) { 
     isTypingNumber = false 
     firstNumber = Int(Screen.text!)! 
     operation = sender.currentTitle!! 

    } 

    @IBAction func equals(sender: AnyObject) { 
     secondNumber = Int(Screen.text!)! 
     if operation == "+" { 
      result = firstNumber + secondNumber 
     } else if operation == "-" { 
      result = firstNumber - secondNumber 
     } else if operation == "x" { 
      result = firstNumber * secondNumber 

     }else { 
      result = firstNumber/secondNumber 

     } 
     Screen.text = "\(result)" 

     func clear(sender: AnyObject) { 
      firstNumber = 0 
      secondNumber = 0 
      isTypingNumber = false 
      result = 0 
      Screen.text = "\(result)" 

     } 





     func viewDidLoad() { 
      super.viewDidLoad() 
      // Do any additional setup after loading the view, typically from a nib. 
     } 

     func didReceiveMemoryWarning() { 
      super.didReceiveMemoryWarning() 
      // Dispose of any resources that can be recreated. 
     } 

} 
+0

'变种X = INT()'是错误的....它看起来像这样:'VAR firstNumber:诠释?' The?使var可选,所以它可以为零。如果你不把它设置为可选的,你必须在声明它的同时设置变量。 'var no可选:Int = 0' – Godlike

+1

@实际上''var x = Int()''会编译,它会将x初始化为0。 – JAL

+0

@JAL真的吗?哦,我测试了它,你是对的。所以它必须是。否则 – Godlike

回答

1

你缺少一个右括号在equals功能:

@IBAction func equals(sender: AnyObject) { 
    secondNumber = Int(Screen.text!)! 
    if operation == "+" { 
     result = firstNumber + secondNumber 
    } else if operation == "-" { 
     result = firstNumber - secondNumber 
    } else if operation == "x" { 
     result = firstNumber * secondNumber 

    }else { 
     result = firstNumber/secondNumber 

    } 
    Screen.text = "\(result)" 
} // missing this