Menu
Coddy logo textTech

論理演算子 パート3

CoddyのKotlinジャーニー「基礎」セクションの一部。レッスン 26/93。

優先順位は、式がどのようにグループ化されるかを決めます。! が最も強く結合し、次に &&、その次に || が続きます。したがって、a || b && ca || (b && c) を意味します。

val a = true
val b = false
val c = false
println(a || (b && c)) // true
println((a || b) && c) // false

グループ化と評価順序は異なります。|| は左オペランドが true の場合に停止し、&& は左オペランドが false の場合に停止します。上の最初の式では、a がすでに true なので、b && c は評価されません。

括弧を使うと、グループ化を変更したり、明示したりできます。まず左オペランドを評価し、その後で右オペランドが必要かどうかを判断します。

challenge icon

チャレンジ

簡単

canAccessFeature 関数を記述してください。この関数は isAdminisPremiumhasTrialActive を受け取り、ユーザーがプレミアム機能にアクセスできるかどうかを返します。

ユーザーが管理者である、プレミアムメンバーかつ有効なトライアル期間中である場合、その機能にアクセスできます。

正しい評価順序を確保するために括弧を使用してください。&& 条件を || と組み合わせる前に、まとめてグループ化する必要があります。

パラメーター:

  • isAdmin (Boolean): ユーザーが管理者であるかどうか
  • isPremium (Boolean): ユーザーがプレミアムサブスクリプションを持っているかどうか
  • hasTrialActive (Boolean): ユーザーが有効なトライアル期間中であるかどうか

戻り値: ユーザーが機能にアクセスできる場合は true、それ以外の場合は false (Boolean)

提供されたドライバーが関数を呼び出し、その戻り値を出力します。関数シグネチャは変更せず、main 関数を追加しないでください。

自分で試してみよう

fun canAccessFeature(isAdmin: Boolean, isPremium: Boolean, hasTrialActive: Boolean): Boolean {
    // ここにコードを書いてください
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: Kotlinプレイグラウンド