【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この記事をかいた人

新卒でノマドワーカー(webデザイナー)として独立し、半年で月収100万円を達成する。その後、事務所を売却(バイアウト)したり、Youtuber(最高月間視聴回数109万回、チャンネル登録者1万人)をしたり、Openrecの公式配信者としてゲーム生実況をしたり、ベンチャー企業のCOOをしたり、パラレルキャリアを歩んできました。 2019年にミニマムライフコストを不労所得で稼げるようになったため、いまは、お金のことを考えずに、様々な企業でエンジニア修行をさせていただきながら、複数のメディアやアプリとweb制作事務所を運営しています。 趣味は株式投資(米国・日本株メイン)で、トレードを楽しむ日も多いです!