男女比はカレーと福神漬けと同じくらいスマートフォン用の表示で見る男女比はカレーと福神漬けと同じくらいマサカリよろしくお願いします。SwiftRubyとSwiftでは「!」と「?」が多用されますが使い方が違います。Swiftでの使い方に中々慣れなかったので自分なりに対比させてまとめてみました。Rubyを書いていてこれからSwiftを書き始める人やその逆の人の参考になればと思います。変数名に「!」,「?」を使うRubyはメソッド名に「!」,「?」を使うRubyではメソッドの処理内容をメソッド名から類推しやすくするために「!」「?」を使います。Rubyリファレンスには以下のように記載されています。「!」はメソッド名の一部です。tr!)で使われます。「?」はメソッド名の一部分です。慣用的に、真偽値を返すタイプのメソッドを示すために使われます。truerubyのメソッド名で「!」「?」はアルファベットと同じ扱いをします。upcaseとupcase!のような「!」「?」がついているメソッドとついていないメソッドは似た処理を行う別のメソッドになります。同様の理由で非破壊メソッドのhogeメソッドしか定義してないときにhoge!を呼び出してもhogeの処理に似た破壊的メソッドが実行されるわけではありません(当たり前ですが)。"メソッドの処理内容をメソッド名から類推しやすくする”ための機能なのでmustではありません。「!」がついていないけど破壊的な変更を行うメソッドや「?」がついていないけど真偽値を返すメソッドを定義してもエラーを吐かれることはありません。Swiftは型名,変数名に「!」,「?」を使うswiftでは変数の値がnilである状態を許容するかどうかを明確に区別するために「!」「?」を使います。nilを許容するかどうかを明確に判断することによりnil関連のエラーに出会う可能性を極力減らすことができます。e!の結果が残っている)Intの変数にInt?の変数を直接代入することはできません。それはIntとInt?が別の型でありInt?の変数の値がnilの可能性があるためです。変数名の後ろに「!」をつけることにより値がnilでないことを明示する(アンラップする)ことができます。アンラップした変数は「?」のついていない型に代入できます。Swiftでの「!」「?」はmustです。ラップ/アンラップしなければコンパイルエラーを吐きます。Swiftの「!」「?」はまだ理解しきれていない部分があるので代表的なところだけを紹介しました。この記事がかなり詳しいです。SheetISUCON予選が明日に迫ってきました。2018に行ってきた【Day1】まだ途中ですが、公開してから考えようと思います。こ...2017-12-03ISUCON7本選に参加して何もできませんでしたよく見たらISUCON8だった。再考DB共有しているRailsアプリケーションのテストを書くときに気をつけること新卒ISUCONで優勝しました月別アーカイブ参加グループプログラミングはてなブログをはじめよう!euglena1215さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。