jjzjj

NSNumber

全部标签

swift - 如何检查 var 是否是 Swift 中的元组?

阅读SwiftGuide的类型转换部分我看到我使用is关键字来键入检查变量。funcisString(test:AnyObject?)->Bool{returntestisString}似乎当我尝试类似的方法来检查包含三个NSNumber对象的元组时,我收到“元组不符合协议(protocol)AnyObject”。有什么方法可以检查变量是否包含元组?funcisTuple(test:AnyObject?)->Bool{returntestis(NSNumber,NSNumber,NSNumber)//error} 最佳答案 您不能使

swift - 为什么在 Swift 中可以将数字文字解释为 NSNumber?

为什么下面这段代码可以在Swift中实现?importFoundationletn:NSNumber=35.5NSNumber是在Foundation模块中定义的类型,在Swift中没有定义为原生类型。35.5的文字如何解释为NSNumber的值? 最佳答案 NSNumber符合ExpressibleByBooleanLiteral,ExpressibleByFloatLiteral和ExpressibleByIntegerLiteral协议(protocol),这意味着它可以从bool值、float或整数文字初始化:letn1:N

ios - 检查 Double 中百分之一的值

我有一个四舍五入到最接近的百分之一的数字。我希望能够检查百分之一位置的值。有没有一种简单的方法可以快速检查Double中的特定位置?例子:如果值为123.07,我希望能够找到7位置的数字的值。所以在Pseudo中是这样的:double(123.07).百分之一==7或者我必须做类似的事情varvalue=123.07value*=10//valueisnow1230.7value%1努力确保我以正确的方式做事,而不是我知道的唯一方式:) 最佳答案 使用modf函数,它可以变得很简单:lethundredth=round(modf(v

cocoa - 如何将 NSNumber 与快速枚举值进行比较?

我正在尝试对通过NSNotification接收的值和枚举值进行简单比较。我有一些有用的东西,但我不敢相信这是做这件事的正确方法。基本上,我最终得到的解决方案是将NSNumber转换为Int,并获取枚举值的rawValue,将其包装在NSNumber中,然后获取它的integerValue。我尝试的所有其他方法都导致编译器错误,无法在Uint8和Int或类似的东西之间进行转换。observer=NSNotificationCenter.defaultCenter().addObserverForName(AVAudioSessionRouteChangeNotification,obj

json - 无法将 NSNumber 桥接到 Float Swift 3.3

Xcode更新后我遇到了一个奇怪的问题。在我的应用程序中,当我从API获得响应时,我手动解析它并将其映射到我的模型。在我的代码中有很多地方我将JSON值转换为Float并进行空合并,如下所示:randomVariable=jsonDict["jsonKey"]as?Float??0它以前工作正常,但更新后,它总是默认为0。为了确定原因,我尝试将其强制转换为Float,如下所示randomVariable=jsonDict["jsonKey"]as!Float这导致了以下错误UnabletobridgeNSNumbertoFloat经过进一步调查,我发现Xcode使用的是Swift3.3

ios - NSMutableDictionary 将 NSString 值视为 NSNumber

我在NSMutableDictionary中有以下值-参见图片我试图这样得到“a”:leta=dictionary.objectForKey("a")as!String此时应用崩溃无法将类型“__NSCFNumber”(0x...)的值转换为“NSString”(0x...)。“”内的其他数字被视为字符串,字符串外的数字也被毫无问题地转换为字符串。谁能告诉我这是怎么回事?以及如何轻松获得这些值? 最佳答案 该值是一个NSNumber,而不是一个NSString。您可以使用stringValue来转换它:ifleta=d["a"]as

ios - swift 错误 : Could not cast value of type 'NSTaggedPointerString' (0x1a1264378) to 'NSNumber' (0x1a126f900)

我在Xcode(swift)中遇到这个错误:Couldnotcastvalueoftype'NSTaggedPointerString'(0x1a1264378)to'NSNumber'(0x1a126f900).我用//ERROR:("...")明确了错误在哪里代码:importUIKitimportiAdimportAVFoundationimportAudioToolboxletMAX:UInt32=4letMIN:UInt32=1classViewController:UIViewController,ADBannerViewDelegate{varchances=10varw

ios - Xcode 6 Beta5 : Why 'UITableViewCell' is not a subtype of 'NSNumber' ?

我试图在实现UITableViewDataSource协议(protocol)的ViewController中实现函数cellForRowAtIndexPath:classViewController:UIViewController,UITableViewDelegate,UITableViewDataSource{...functableView(tableView:UITableView!,cellForRowAtIndexPathindexPath:NSIndexPath!)->UITableViewCell!{varcell=tableView.dequeueReusable

iOS swift : Formatting a custom Currency Number

用逗号分隔符格式化大数。已解决(代码已更新且完全可用)晚上,我有一个来自Double的类型别名Currency。我想用千位之间的逗号打印它。这是我做的:importFoundationtypealiasCurrency=DoubleextensionCurrency{varcredit:Double{returnself}varusd:Double{returnself*0.62}funcdescription()->String{letprice=selfasNSNumberletformatter=NumberFormatter()formatter.numberStyle=.cu

ios - 是否可以在 iOS swift 中增加 NSNumber 变量?

我在我的iOSswift项目中使用核心数据并将变量声明为Int32,在类文件中它被初始化为NSNumber并且当我尝试递增变量时通过为该类创建一个对象,它表明二元运算符+=不能应用于NSNumber。是否可以增加NSNumber或者我应该选择Int16或Int64来访问变量。 最佳答案 这是从简洁到冗长的三种不同答案:鉴于NSNumbers是不可变的,只需为其分配一个等于您想要的新值:varnum:NSNumber=NSNumber(integer:1)//NSNumberof1num=num.integerValue+1//NSN