JavaA2Z

KAB-studio > プログラミング > JavaA2Z > ||演算子とは

||演算子

日本語 論理和演算子
英語 logical or operator
ふりがな たてぼうたてぼうえんざんし、ぱいぷぱいぷえんざんし、ろんりわえんざんし
フリガナ タテボウタテボウエンザンシ、パイプパイプエンザンシ、ロンリワエンザンシ

解説

論理和」を演算子
 
二項演算子のひとつ。
論理演算のひとつ「論理和」を演算子
どちらかのオペランドtrueの時にtrueを、それ以外はfalseを返す。
オペランドにはbooleanのみ使用することができ、戻り値booleanである。
一般にif等のステートメントの条件式に使用する。
論理積」を演算子は「&&演算子」である。
 
||演算子は「ショートサーキット」がわれる演算子である。
左オペランド評価した結果がtrueの場合、右オペランドの結果に関わらず結果はtrueとなる。そのため、この場合には右オペランド評価がされない。
右オペランドで何か処理をっている場合、その処理そのものがわれない。ショートサーキットされることを知っていない場合、処理されるはずなのに処理されない、ということになるため注意すること。

参考サイト


(KAB-studioからのおしらせです)

サンプルプログラム(とか)サンプルを別ウィンドウで表示サンプルをクリップボードへコピー(WindowsでIEの場合のみ)

// Sample.java
public class Sample
{
    public static void main( String[] args )
    {
        // ||を使用します。
        // いわゆる「論理和」を計算します。
        boolean b;
        b = true || true;
        System.out.println( b );
        // true

        b = true || false;
        System.out.println( b );
        // true

        b = false || true;
        System.out.println( b );
        // true

        b = false || false;
        System.out.println( b );
        // false

        // boolean型以外は使用できません。
        // b = true || 1;
        // コンパイルエラー:
        // 演算子 || は引き数の型 boolean, int で未定義です。

        // ||演算子はショートサーキットが行われます。
        b = true || getTrue();
        // この時、getTrue()は呼ばれません。
        // ||演算子は左オペランドから評価します。そして、
        // 左オペランドがtrueの場合、右オペランドに関わらず
        // 結果はtrueとなるため、右オペランドは評価されないわけです。
    }

    /**
    *   ショートサーキットテスト用メソッド。
    */
    private static boolean getTrue()
    {
        System.out.println( "Sample#getTrue()" );
        return true;
    }
}
// Sample.java
public class Sample
{
    public static void main( String[] args )
    {
        // ||を使用します。
        // いわゆる「論理和」を計算します。
        boolean b;
        b = true || true;
        System.out.println( b );
        // true

        b = true || false;
        System.out.println( b );
        // true

        b = false || true;
        System.out.println( b );
        // true

        b = false || false;
        System.out.println( b );
        // false

        // boolean型以外は使用できません。
        // b = true || 1;
        // コンパイルエラー:
        // 演算子 || は引き数の型 boolean, int で未定義です。

        // ||演算子はショートサーキットが行われます。
        b = true || getTrue();
        // この時、getTrue()は呼ばれません。
        // ||演算子は左オペランドから評価します。そして、
        // 左オペランドがtrueの場合、右オペランドに関わらず
        // 結果はtrueとなるため、右オペランドは評価されないわけです。
    }

    /**
    *   ショートサーキットテスト用メソッド。
    */
    private static boolean getTrue()
    {
        System.out.println( "Sample#getTrue()" );
        return true;
    }
}

この単語を含むページ

「みだし」に含まれているページ

「サンプルプログラムとか」に含まれているページ

はてなブックマーク 詳細を表示 はてなブックマーク ブックマーク数
livedoorクリップ 詳細を表示 livedoorクリップ ブックマーク数
Yahoo!ブックマーク 詳細を表示 users
del.icio.us 登録する RSSに登録
サンプルを別ウィンドウで表示
サンプルをクリップボードへコピー(WindowsでIEの場合のみ)
update:2006/01/17
このページは、Javaプログラミング言語についての用語を網羅した辞書「JavaA2Z」の一ページです。
詳しくは「JavaA2Z」表紙の説明をご覧ください。