Javaの初期文字列と演算子

1.スティング

Javaでは、データ型は基本データ型と参照データ型に分けられます。基本データ型は、4 型 (整数、浮動小数点、文字、ブール)、8 型 (バイト、ショート、整数、ロング、浮動小数点数、ダブル) です。参照データ型には、Sting、パッケージ化クラス (Byte、Short、Integer、Long、Float、Double、Character) などが含まれます。

public class String1 {
    public static void main(String[]args){
        String a="hello";
        String b="World";
        System.out.println(a);
        System.out.println(b);
        System.out.println(a+b);//‘+’表示字符穿的拼接
    }
}

 + について、私は次のことを理解しています。

1. 文字列に + を付加しない場合、+ は通常の加算と同等になります。

public class String1 {
    public static void main(String[]args){
        int a=10;
        int b=20;
        System.out.println("int类型数的相加:"+(a+b));
        float c=0.2F;
        float d=0.2F;
        System.out.println("float类型数据的相加:"+(c+d));
        byte e=10;
        byte f=20;
        System.out.println("byte类型数据的相加:"+(e+f));
        short g=10;
        short h=90;
        System.out.println("short类型数据的相加:"+(g+h));
        long i=10L;
        long j=20L;
        System.out.println("long类型的数据相加:"+(i+j));
        double k=10.0;
        double m=20.0;
        System.out.println("double类型数据相加:"+(k+m));
        char A='A';
        char B='B';
        System.out.println("char类型数据相加:"+(A+B));
    }
}

操作の結果は次のとおりです。

 2. 通常のデータ型の数値に+と文字列を加算すると、加算結果は文字列となります。計算は左から右に実行されます。

public class String1 {
    public static void main(String[]args){
        int a=10;
        int b=20;
        String s="hello";
        System.out.println(a+b+s);
        System.out.println(s+a+b);
        System.out.println(s+b+a);
        System.out.println(s+(a+b));
    }
}

 操作の結果は次のとおりです。

 場合によっては、文字列と整数の間で変換する必要があります。

1. int を String に変換する

public class String1 {
    public static void main(String[]args){
        int a=1234567890;
        String s=String.valueOf(a);
        System.out.println(s);
    }
}

 文字列の valueOf:

2.文字列をintに変換する

public class String1 {
    public static void main(String[]args){
        String s="12345";
        int a=Integer.valueOf(s );
        System.out.println(a+30);
    }
}

 int ラッパークラスの valueOf:

 2.オペレーター

1. オペレーターとは何ですか?

演算子はオペランドを演算するために使用される記号であり、演算が異なれば意味も異なります。'

コンピューター言語として、Java は変数を操作するための豊富な演算子のセットも提供します。Java の演算子は、算術演算子 (+ - */)、関係演算子 (< > ==)、論理演算子、ビット演算子、シフト演算子、条件演算子などに分類できます。

2. 算術演算子

1. 4 つの基本的な算術演算子: 加算、減算、乗算および除算のモジュロ (+-*/%)

public class String1 {
    public static void main(String[]args){
        int a=10;
        int b=20;
        System.out.println("a+b="+(a+b));
        System.out.println("a-b="+(a-b));
        System.out.println("a*b="+(a*b));
        System.out.println("a/b="+(a/b));
        System.out.println("a%b="+(a%b));
    }
}

操作の結果は次のとおりです。 

 知らせ:

* はすべて二項演算子であり、使用する場合は左右に 2 つのオペランドが必要です。

*int / int 結果は依然として int 型であるため、切り捨てられます。

※除算と剰余を行う場合、除数を0にすることはできません。

*% 整数のモジュロだけでなく、浮動小数点型のモジュロも実行できます。

※両側のオペランドの型が矛盾する場合は、より大きい型範囲に昇格します。

2. インクリメント演算子 *= -= /= += %= 

 

public class String1 {
    public static void main(String[] args) {
        int a = 10;
        a += 10;//相当于a=a+10
        System.out.println(a);
        int s=10;
        s-=10;//相当于s=s-10;
        System.out.println(s);
        int d=10;
        d*=10;//相当于d=d*10
        System.out.println(d);
        int k=10;
        k/=10;//相当于k=k/10
        System.out.println(k);
        int g=10;
        g%=3;//相当于g=g%3
        System.out.println(g);
    }
}

実行の結果: 

 注:この演算子は変数でのみ使用でき、定数では使用できません。

3.インクリメント/デクリメント演算子++ --

++ は変数の値に +1 を加算し、-- は変数の値に -1 を加算します。

知らせ: 

※単独で使用する場合、[prefix++]と[post++]の違いはありません

※組み合わせて使用​​する場合、[prefix++]は最初に+1し、次に変数の後の値を+1、[postfix++]は最初に変数の元の値を使用し、式の最後の変数に+1します。

*インクリメント/デクリメント演算子を使用できるのは変数のみです。定数は変更できないため、定数は使用できません。

4. 論理演算子 

主要な論理演算子は 3 つあります: && || ! 、操作の結果はすべてブール型です。

public class String1 {
    public static void main(String[] args) {
        
        System.out.println("&&的逻辑表达式展示");
    System.out.println(true&&true);
    System.out.println(true&&false);
    System.out.println(false&&false);
    System.out.println(false&&true);
    System.out.println("**********************************************");
    System.out.println("||的逻辑表达式的展示");
   System.out.println(true||true);
   System.out.println(false||true);
   System.out.println(false||false);
   System.out.println(true||false);
   System.out.println("*************************************************");
   System.out.println("!的逻辑表达式展示:");
   System.out.println(!true);
   System.out.println(!false);
   System.out.println("****************************************************");
    }
}

 結果の表示:

 知らせ: 

※&&の場合、左側の式の値が偽の場合、式の結果も偽になる必要があり、右側の式を計算する必要はありません

* || の場合、左側の式の値が true の場合、式の結果も true になる必要があり、右側の式を計算する必要はありません

*||,&&左側の式と右側の式はブール式である必要があります

*& と | も、式の結果がブール値の場合は論理演算を表しますが、&& || と比較すると、短絡評価はサポートされていません

5. ビット演算子 

 Java でのデータ記憶の最小単位はバイト、データ操作の最小単位はビットです。バイトは記憶の最小単位で、各バイトは 8 バイナリ ビットで構成され、複数のバイトが結合されます。さまざまな異なる値を表現できます。データ。

主なビット演算子は 4 つあります: & | ~ ^。単項演算子である ~ を除き、残りは二項演算子です。 

ビット単位の演算は、バイナリ ビットに基づく演算を表します。コンピュータはデータ (01 で構成されるシーケンス) を表すためにバイナリを使用し、ビット単位の演算はバイナリ ビットの各ビットに対して順番に実行されます。 

1. ビットごとの AND: 両方の 2 進ビットが 1 の場合、結果は 1 になり、それ以外の場合、結果は 0 になります。

public class String1 {
    public static void main(String[] args) {

        int a=10;
        int b=20;
        System.out.println(a&b);
    }
}

ビット単位の演算を実行するには、まず 10 と 20 をバイナリ (それぞれ 1010 と 10100) に変換する必要があります。

 2. ビットごとの OR|: 両方の 2 進ビットが 0 の場合、結果は 0 になり、それ以外の場合、結果は 1 になります。

public class String1 {
    public static void main(String[] args) {

        int a=10;
        int b=20;
        System.out.println(a|b);
    }
}

操作方法は位置決めと同様です。

注: & および | のオペランドが整数 (int、short、long、byte) の場合はビット単位の演算を表し、オペランドがブール値の場合は論理演算を表します。

 3. ビットごとの否定~: ビットが 0 の場合は 1 に変換され、ビットが 1 の場合は 0 に変換されます。

public class String1 {
    public static void main(String[] args) {

        int a=0xf;
        System.out.printf("%x\n",~a);
    }
}

知らせ:

*0x の付いた数字は 16 進数であり、16 進数は 2 進数を簡略化したものと考えることができます。

この数値は 4 つの 2 進数に対応します。
*0xf は 10 進数の 15 を意味し、2 進数では 1111 を意味します。
*printf は出力内容をフォーマットでき、%x は 16 進数での出力を意味します。
*\n は改行文字を意味します

4. ビットごとの XOR^: 2 つの数値の 2 進数が同じ場合、結果は 0 になり、異なる場合、結果は 1 になります。

public class String1 {
    public static void main(String[] args) {

        int a=0x1;
        int b=0x2;
        System.out.println(a^b);
    }
}

注: 2 つの数値が同じ場合、XOR の結果は 0 になります。

6.シフト操作

1. 左シフト<<:左端のビットは不要で、右端のビットは 0 で埋められます。

2. 右シフト >>:右端のビットが省略され、左端のビットに符号ビットが追加されます (正の数は 0 で埋められ、負の数は 1 で埋められます)

3. 符号なし右シフト >>>:右端のビットが省略され、左端のビットが 0 で埋められます。 

知らせ:

1. 元の数値 * 2 に相当する 1 ビット左にシフトします。 元の数値 * 2 の N 乗に相当する N ビット左にシフトします。 2. 元の数値
/ 2 に相当する 1 ビット右にシフトします。元の数値 / 2 の N 乗
3 に相当する N ビット右シフトします。コンピュータは乗算と除算を計算するよりもシフトを計算する方が効率的であるため、あるコードが 2 の N 乗を正確に乗算および除算する場合、シフト演算は代わりに使用できます
4. 負の数のビットを移動またはビット数をシフトします 大きすぎると意味がありません

7. 条件演算子

条件演算子は 1 つだけです:式 1 ? 式 2 : 式 3
式 1 の値が true の場合、式全体の値は式 2 の値になり、
式 1 の値が false の場合、式全体の値になります。式の値は式 3 の値です。 

おすすめ

転載: blog.csdn.net/qq_71356343/article/details/128748864