32
31

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【iOS】NSStringとStringの違い

Last updated at Posted at 2015-06-04

SwiftにはNSStringStringの2つの文字列型があり、どういう違いがあるのか気になったので調べました。

NSStringとStringの違いは?

 Objective-CではNSString型が使用されていましたが、Swiftになって新たに追加されたのがString型です。
SwiftではString型の利用が推奨されています。
SwiftでNSStringをほとんど気にしなくていいのは、Objective-CのライブラリでNSString型のものを、Swiftから使おうとしたときにはStringに見えるようになっているからです。

では実際の使うときの違いは?

NSStringにはある文字列の数を返すlengthプロパティなどのプロパティやメソッドがあるが、Stringでは使えない点です。

サンプルコード

lengthプロパティは使えない

  • 7行目
    String型で文字数を取得するときはcountプロパティを使います。
     
  • 10行目
    String型の変数もNSString型にキャストすればlengthプロパティをつかうことも可能です。

 

結局のところ

現状ではSwiftでプログラムを書くためにObjective-Cのライブラリが欠かせないのに、事実上NSStringを使わなければならないケースはほとんどありません。
結局、NSStringではなく**Stringを使えばいい!**ということです。

32
31
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
32
31

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?