swift3&OSX格闘記・第4回「NSStringとString、NSURLとUrl」

Author:

swiftはなんだか似たような型が多いのですよね。
例えばNSStringとString。
文字列型ではあるものの、色々違っていたりして嫌らしい。

NSStringはurlからゲットして文字列にできたりもするのですが。
しかもあちこちで混在する可能性あり。

これの相互変換はそんなに難しくなくasでキャストできる。
ただそのまま入れられないのは気に入らないですけど。

var txt = "" // string
var txt = "" as NSString // NSString
var txt = NSString("") // エラー
var txt = (String)(100) // string
var txt = nstxt as String // string

で、NSURL、urlというurlを書くクラスもある。
これがまたstringへの変換をそのまま書くとエラー。ムキー。

var url = NSURL(string: "") // NSURL
var url = URL(string: "") // URL
var url = url.absoluteString // String

もちろんNSDateとDateも似たような感じです。

ここらへんの相互変換わけわからなくなるので、str2urlとかいう関数作っちゃったほうがわかり良いかもしれ>ないですね。
C#みたいに全部ToStringで解決というわけにはいかないのがswiftなのです。

Share on Facebook
Pocket