2015-09-19 24 views
0

我正在通过我的快速书和建设,因为我走了。我遇到了这个NSNumberFormatter类的麻烦。我不断收到错误: “预期宣言” 我的Swift NSNumberFormatter

formatter.numberStyle = NSNumberFormatterStyle.CurrencyStyle 

声明后,我已经重新写我的代码多次,我比较每一封信给我的书,我不明白的地方我已经错

当我尝试运行与功能:

account1.deposit(depositAmount) 

我再次得到“预期宣言

错误信息

这里是我的代码:

//: Playground - noun: a place where people can play 

    import Cocoa 
    import Foundation 

    public class Account 
    { 
    public var name: String = "" 
    public var balance: Double = 0.0 


    public init(name: String, balance: Double) 
    { 
     self.name = name 
     if balance > 0.0 
     { 
      self.balance = balance 
     } 
    } 

    public func deposit(amount: Double) 
    { 
     if amount > 0.0 
     { 
      balance = balance + amount 
     } 
    } 

    public func withdraw(amount: Double) 
    { 
     if balance - amount >= 0.0 
     { 
      balance = balance - amount 
     } 
    } 



    let formatter = NSNumberFormatter() 
    formatter.numberStyle = NSNumberFormatterStyle.CurrencyStyle 


    func formatAccountString(account: Account) -> String { 
     return account.name + "'s balance: " + formatter.stringFromNumber(account.balance)! 
    } 




    let account1 = Account(name: "Jane Green", balance: 50.00) 
    let account2 = Account(name: "John Blue", balance: -7.53) 

    //println(formatAccountString(account1)) 

    var depositAmount = 25.53 
    account1.deposit(depositAmount) 
    account2.deposit(depositAmount) 

    println("depositing " + formatter.StringFromNumber(depositAmount) + " into account1\n") 
    println("depositing " + formatter.StringFromNumber(depositAmount) + " into account1\n") 
    } 

谢谢你提前!

回答

2

该问题最有可能发生在formatter.numberStyle = NSNumberFormatterStyle.CurrencyStyle的位置。您无法从课程级别运行代码。将其移动到init。对,

+0

是的,就是这样。即使当我在操场上操作它时,花了很多时间弄清楚了这一点:| – jtbandes

+0

谢谢,我只是把它移到构造函数中,但是在我的帐户account1.deposit(depositAmount) 声明我的 后,我仍然收到“Expected Declaration”的错误消息。 – rissandimo

+0

这是同样的问题。 – jtbandes