ios - 试图将一个简单的 OBJC 函数转换为 Swift

标签 ios cocoa-touch swift

我在 OBJ C 中有一个简单的函数来创建一个随机数

+(NSString*)certRef
{

NSInteger rNumber = arc4random() % 100000000 + 1;
NSString *randomCertRef = [NSString stringWithFormat: @"%ld", (long)rNumber];

return randomCertRef;
}

现在我正在尝试将其转换为 Swift:

类工具自定义函数

func randomNumber(theNumber: String){

    let rNumber = arc4random() % 100000000 + 1;
    let rNumberString = "\(rNumber)"
    println("THE RANDOM NUMBER IS: \(rNumberString)")

   return (theNumber)

}

上面给出错误“string not convertible to ()”

然后我尝试在 B 类中访问它

    let rNumberFuction = ToolsCustomFunctions()
    //read randomised number string here//

各种尝试,包括 println "the random number is\(rNumberFuction.randomNumber(theNumber: String))" 导致无法通过编译器错误或 nil 从我的函数访问/设置随机数值

最佳答案

func randomNumber(theNumber: String) { ... }

是一个函数

  • 采用一个参数(一个字符串),并且
  • 不返回任何内容(又名 Void()

你要的是函数

  • 没有参数,并且
  • 返回一个字符串

声明为

func randomNumber() -> String { ... }

并且返回值应该是rNumberString,而不是theNumber

关于ios - 试图将一个简单的 OBJC 函数转换为 Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25876871/

相关文章:

ios - UITextView滚动指示器问题

ios - 在 XCode 5 中应用程序窗口预计在应用程序启动结束时有一个 Root View Controller

ios - 如何在我的选项卡栏 iOS 应用程序上呈现模态 UI 导航 View ?

swift - GTM (Google Tag Manager) 6.0 和 Firebase Analytics 5.0 版本冲突

ios - 尝试每 x 秒更改一次背景颜色

ios - 展开时 ImageView 发现为零

ios - 我应该在哪里放置检查它是否为 iphone 5 的 bool 方法?

objective-c - 框架外的 iOS UIButton 未触发 touchinside 事件

ios - CollectionView Label 多行标签自动布局在小屏幕 iOS 设备上陷入困境

ios - 关闭 UIScrollView 中的键盘