0
0

by rememberと= rememberの違い

Posted at

はじめに

今回はJetpack Compose実装時になんとなくで使われていそうなby rememberと= rememberの違いを紹介していきます

本文

まず、前提として=はご存知の通り代入ですが、byは委譲になります。
ではcompose内で使われているrememberと合わせた時にどうなるのかを紹介していきます。
まず、=ではremember{}で宣言したラムダ内の値を初期値として保持します。
byは先ほど記載したようにremember{}に処理を委譲しています。
そのため。、remember{}の内部がstateなので初期値はstateでないといけません。
逆に=は以上をしていないのでどんなクラスでもOKになります

最後に

普段はなんとなくで使われていそうなrememberの使い方による違いを紹介していきました。
基本的にはrememberで持つ値は再描画に使うものなのでbyを使うのが正しい気がします

0
0
0

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
0
0