Java SE(19)第3章演算子-算術演算子

算術演算子

オペレーター 計算 結果 備考
+ 正の符号 +3 3
プラス 3 + 5 8
- b = 4; -b;  -4
もっと少なく 5-3 2
* かける 3 * 4 12
/ を除いて 10/5 2
モジュラス(つまり、残りを取ります) 13%5 3
++ 自己増加(フロント) a = 2; b = ++ a; a = 3; b = 3 最初にインクリメントしてから計算します
自己増加(後) a = 2; b = a ++; a = 3; b = 2 最初に計算してからインクリメントします
- デクリメント(フロント) a = 2; b = -a; a = 1; b = 1 最初に減少し、次に計算します
デクリメント(投稿) a = 2; b = a--; a = 1; b = 2 最初に計算してから減算します

 

 

 

 

 

 

 

 

 

 

 

 

 

目次

算術演算子

+演算子

 除算演算子(/)

剰余演算子(%)

    演習1(/および%)

インクリメント(++)演算子

    演習2(++)


 

  • +演算子

(1)表示正数

(2)加算演算を表します

(3)文字列を連結します

public class TestOpe01{
	public static void main(String[] args){
		//表示正数
		System.out.println(+5);    //5
		//表示相加操作
		System.out.println(5+6);   //11
		System.out.println(5+'6'); //5+54——>59
		//字符串的拼接
		/*
		规则:+左右两侧的任意一侧有字符串,
		那么这个加号就是字符串拼接的作用,
		结果一定是字符串
		*/
		int num=50;
		System.out.println("num="+num);   //num=50
		System.out.println(5+6+"7");      //11+"7"——>"117"——>117
		System.out.println(5+'6'+"7");    //5+54+"7"——>59+"7"——>"597"——>597
		System.out.println("5"+6+"7");    //"56"+"7"——>"567"——>567
		System.out.println("5"+'6'+"7");  //"56"+"7"——>"567"——>567
		System.out.println("5"+'6'+'7');  //"56"+'7'——>"567"——>567
	}
}

 

  •  除算演算子(/)

除算演算では、除数と被除数が両方とも整数の場合、得られる結果も整数になります。

                                   除算演算小数が含まれている場合結果は小数になります。

public class TestOpe02{
	public static void main(String[] args){
		System.out.println(12/3);    //4
        System.out.println(12/3.0);  //4.0
	}
}
  • 剰余演算子(%)

モジュロ演算を実行する場合結果の符号モジュラスの符号(%の左側の数値)に依存します。モジュラスの符号(%の右側の数値)とは何の関係もありません。

たとえば、(-5)%3の結果は-2であり、5%(-3)の結果は2です。

public class TestOpe03{
	public static void main(String[] args){
		System.out.println(-5%3);    //-2
		System.out.println(-5.0%3);  //-2.0
		
        System.out.println(5%-3);    //2
		System.out.println(5.0%-3);    //2.0
	}
}
  • 演習1(/および%)

public class TestOpe04{
	public static void main(String[] args){
		//实现功能:任意给出一个四位数,求出每位上的数字并输出
		
		//任意给出一个四位数
		int num=2345;
		//求出每位上的数字
		int num1=num%10;      //2345——>5
		int num2=num/10%10;   //2345——>234——>4
		int num3=num/100%10;  //2345——>23——>3
		int num4=num/1000;    //2345——>2
		//输出每位上的数字
		System.out.println("个位上的数字为:"+num1);  //个位上的数字为:5
		System.out.println("十位上的数字为:"+num2);  //十位上的数字为:4
		System.out.println("百位上的数字为:"+num3);  //百位上的数字为:3
		System.out.println("千位上的数字为:"+num4);  //千位上的数字为:2
	}
}

改善:ユーザーが入力した任意の番号

       スキャナーの紹介

import java.util.Scanner;
public class TestOpe04{
	public static void main(String[] args){
		//实现功能:任意给出一个四位数,求出每位上的数字并输出
		
		//任意给出一个四位数
		Scanner input=new Scanner(System.in);
		System.out.println("请录入一个四位数:");
		int num=input.nextInt();
		//求出每位上的数字
		int num1=num%10;
		int num2=num/10%10;
		int num3=num/100%10;
		int num4=num/1000;
		//输出每位上的数字
		System.out.println("个位上的数字为:"+num1);  
		System.out.println("十位上的数字为:"+num2);  
		System.out.println("百位上的数字为:"+num3);  
		System.out.println("千位上的数字为:"+num4);  
	}
}

 

 

  • インクリメント(++)演算子

インクリメント++またはデクリメント-操作を実行する場合、変数が操作に関係しているかどうかに関係なく、++演算子が使用されている限り、変数自体は最終的に1ずつインクリメントされます。

++が最後にある場合は、最初に計算してから1を追加します。++が先頭にある場合は、最初に1を追加してから、計算します。

public class TestOpe05{
	public static void main(String[] args){
		int a=5;
		a++;   
		System.out.println(a);  //6
		
		a=5;
		++a;
		System.out.println(a);   //6
		/*
		总结:无论这个变量是否参与到运算中去,
		只要用++运算符,这个变量本身最终都加1操作。
		*/
		
		a=5;
		int m=a+++7;        //先运算m=a+7 ,再自增a=a+1。
		System.out.println(m);  //12
		System.out.println(a);  //6
		
		a=5;
		int n=++a+7;        //先自增a=a+1 ,再运算n=a+7。
		System.out.println(n);  //13
		System.out.println(a);  //6
	}
}

動作結果:

  • 演習2(++)

public class TestOpe06{
	public static void main(String[] args){
		int a=5;
		//注:运算符优先级 ++ > +
		System.out.println(a++ + a++);  
		System.out.println(a++ + ++a);  
		System.out.println(++a + a++);
		System.out.println(++a + ++a);
	}
}

操作プロセス:

計算結果:

おすすめ

転載: blog.csdn.net/wqh101121/article/details/112394141