【iOSアプリ開発】swiftで「Value of optional type ‘String?’ 」という型エラーが出たときのif文での対処法

swiftでiOSアプリを作成中に、

Value of optional type ‘String?’ must be unwrapped to a value of type ‘String’

というエラーに出くわしました。

javascriptやperlといったStringやIntといった型をあまり気にしなくてもプロダクトが作れてしまうプログラミング言語しか触ったことがないわたしには、「なんだこりゃ?」という状態です笑

エラーが起こった原因

このエラーは、

String(文字列)しか入らない部分に対して、変数を配置したときに発生しました。

【”Hi ” + 変数】という文字列を連結している処理に対して、変数の部分がString以外のものが入る可能性があることに対するエラーでした。

if文でエラーを解消した方法

このエラーに対して、

といった具合に、if文で先にnameArea.textに値を代入して、値が代入されていることが担保されている状態で文字列連結することで正常に動作しました。

静的型付き言語

  • Java
  • Swift
  • Go

といった静的型付き言語を経験したことがないゆえに、こんな簡単なエラーにもつまづいてしまいました・・・

GoやSwiftは人気が高くなってきていて、需要もある言語なので、ともに勉強していこうと思います!

ABOUTこの記事をかいた人

新卒ノマドエンジニアとして独立し、半年で月収100万円を達成する。フリーランスのエンジニアとして活動しながら、事務所を売却(バイアウト)したり、Youtuber(最高月間視聴回数109万回、チャンネル登録者1万人)をしたり、Openrecの公式配信者としてゲーム生実況をしたり、ベンチャー企業のCOOをしたり、パラレルキャリアを歩んでいる。 2019年にミニマムライフコストを不労所得で稼げるようになったため、いまは好きなことだけ仕事にしています。