{category}

Ruby - イテレーションとEnumerator

none?

ナン(制御構造と繰り返し

意味 条件を満たす要素が1つもないか確認


none?とは?

none?メソッドは、配列やハッシュなどのコレクションの中に、指定した条件を満たす要素が1つもないかどうかを確認します。条件を満たす要素が1つもない場合はtrueを、1つでもある場合はfalseを返します。

none?の具体的な使い方

配列に特定の条件を満たす要素がないか確認

numbers = [1, 3, 5, 7, 9]
no_even = numbers.none? { |num| num.even? }
puts "配列に偶数は含まれていません: #{no_even}"

words = ['apple', 'banana', 'cherry']
no_long_word = words.none? { |word| word.length > 10 }
puts "10文字を超える単語はありません: #{no_long_word}"

👇出力結果

配列に偶数は含まれていません: true
10文字を超える単語はありません: true

この例では、numbersという配列に偶数が1つもないか、wordsという配列に10文字を超える単語がないかを確認しています。none?メソッドは、条件を満たす要素が1つもない場合にtrueを返します。

ハッシュの値が特定の条件を満たさないか確認

scores = { Alice: 85, Bob: 92, Charlie: 78 }
no_perfect_score = scores.none? { |name, score| score == 100 }
puts "100点満点の人はいません: #{no_perfect_score}"

ages = { David: 25, Emma: 30, Frank: 22 }
no_senior = ages.none? { |name, age| age >= 65 }
puts "65歳以上の人はいません: #{no_senior}"

👇出力結果

100点満点の人はいません: true
65歳以上の人はいません: true

この例では、scoresというハッシュに100点満点の人がいないか、agesというハッシュに65歳以上の人がいないかを確認しています。none?メソッドは、ハッシュの値に対しても使用でき、条件を満たす要素が1つもない場合にtrueを返します。

none?に関するよくある質問

Q. none?メソッドの戻り値は?
A. none?メソッドは、条件を満たす要素が1つもない場合はtrueを、1つでもある場合はfalseを返します。
Q. ブロックを指定しない場合の動作は?
A. ブロックを指定しない場合、コレクション内の全ての要素がnilまたはfalseであればtrueを返し、そうでなければfalseを返します。
Q. 空のコレクションの場合は?
A. 空のコレクションに対してnone?を呼び出すと、常にtrueを返します。これは、空のコレクションには条件を満たす要素が1つもないためです。

none?が学べる書籍の紹介

「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、Rubyのnone?やredo、each、find、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。

よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。

1日5分の暗記でプログラミンが身に付く!プログラミング単語帳 公式ストアで発売中!

HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。


Rubyを学べる「プログラミング単語帳」アプリ

プログラミング単語帳がアプリになりました!Rubyはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。

収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。

いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。

2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!

2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!


関連するそのほかの単語

redo

ループを現在位置から再開

種類: ループ

each

配列やハッシュの要素を順に処理

種類: イテレーションとEnumerator

find

条件に合う最初の要素を探す

種類: イテレーションとEnumerator

even?

偶数かどうかの判定

種類: 数値操作

CSRF

偽の要求の強制実行

種類: 一般的な脆弱性と対策