float型変換の挙動について

条件分岐の処理を作りたくて、1.0=1.0の場合は先の処理を行うと言ったコードを書いたのですが、必ずfaulsが返ってきていたので、試しにinteger型にすると以下の挙動になりました。1.0の値が入っているのですが、integerに変換後は0と出力されます。truncateは小数点以下切り捨ての認識なので、1が返ってくるはずですがなぜでしょうか。初歩的な質問でしたらすみません。
キャプチャ
キャプチャ2