欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

零基础学Java-基础语法篇day2(运算符)

程序员文章站 2022-04-15 18:26:15
运算符算术运算符字符的‘+’操作:字符串的‘+’操作自增自减运算符赋值运算符关系运算符逻辑运算符短路逻辑运算符三元运算符算术运算符算数运算符作用+两个操作数相加-两个操作数相减*两个操作数相乘/两个操作数相除%取模运算,获得余数实例:public class Demo1Operator { public static void main(String[] args){ System.out.println(10+20)...

算术运算符

算数运算符 作用
+ 两个操作数相加
- 两个操作数相减
* 两个操作数相乘
/ 两个操作数相除
% 取模运算,获得余数

实例:

public class Demo1Operator {
    public static void main(String[] args){
        System.out.println(10+20);
        System.out.println(10-20);
        System.out.println(10*20);
        System.out.println("------------------");
        /*整数相除,结果只能得到整数,如果想得到带有小数的结果,必须加入小数(浮点类型)运算*/
        System.out.println(10/2);
        System.out.println(10/3);
        System.out.println(10/3.0);
        System.out.println(10.0/3);
        System.out.println("------------------");
        /*取模,即取余数*/
        System.out.println(5%2);
    }
}

打印结果:

字符的‘+’操作:

ASCII:字节到字符的对应关系

‘a’ — 97
‘A’ — 65
‘0’ — 48

实例:

public class Demo2Operator {
    public static void main(String[] args){
        int a=1;
        char b='a';
        System.out.println(a+b);
    }
}

打印结果:
98

分析原因:
a为int型,b为char型,当(byte、short、char、int)在一起运算的时候,都会提升为int之后,再运算。

字符串的‘+’操作
  • 字符串可以使用+号,跟(任意数据类型)拼接
  • 当+操作中出现字符串时,这个+是(字符串连接符)
  • 连续+操作时从左到右依次执行
    实例:
public class Demo3Operator {
    public static void main(String[] args ){
        System.out.println("zhengjingsuo"+123);
        System.out.println("zhengjingshuo"+true);
        System.out.println(1+99+"黑马程序员");//从左到右执行
        System.out.println("5+5="+5+5);
        System.out.println("5+5="+(5+5));//小括号先运算
    }
}

打印结果:

zhengjingsuo123
zhengjingshuotrue
5+5=55
100黑马程序员
5+5=10

实例:
数值拆分:
键盘录入一个三位数,将其拆分为个位、十位、百位后,打印在控制台,

import java.util.Scanner;
public class Demo5Operator {
   public static void main(String[] args){
       Scanner sc = new Scanner(System.in);
       System.out.println("请输入一个三位数");
       int num =sc.nextInt();
       int ge = num%10;
       int shi = num/10%10;
       int bai = num/100;
       System.out.println("整数"+num+"的个位为"+ge);
       System.out.println("整数"+num+"的个位为"+shi);
       System.out.println("整数"+num+"的个位为"+bai);
   }
}

结果:

123
整数123的个位为3
整数123的个位为2
整数123的个位为1

自增自减运算符

++ 自增 变量值加1
- - 自减 变量值减1

实例:

public class Demo6Operator {
    public static void main(String[] args){
        int a=10;
        int b=++a;//先a=a+1,再b=a;
        System.out.println(a);
        System.out.println(b);
        b=a--;//先b=a,再a=a-1;
        System.out.println(a);
        System.out.println(b);
    }
}

打印结果:

11
11
10
11

分析:

++和–

  • 放在变量后面,先将该变量原本的值取出来参与操作,随后进行自增(++)或自减(–)。

  • 放在变量前面,先进行自增(++)或自减(–),然后拿变量参与操作。

  • 只能操作变量,不能操作常量。

赋值运算符

实例:

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

打印结果:

20
10
100
10
0

注意点:
零基础学Java-基础语法篇day2(运算符)
报错:
java: 不兼容的类型: 从int转换到short可能会有损失
正确写法:

public class Demo7Operator {
    public static void main(String[] args){
    short a=1;
    a = (short)(a+1);
    System.out.println(a);
    }
}

结果:
2
分析原因:
参考day1类型转换

public class Demo7Operator {
    public static void main(String[] args){
    short a=1;
    a +=1;
    System.out.println(a);
    }
}

结果:
2
分析原因:
a+=1;相当于a=(short)(a+1);扩展赋值运算符底层会自带强转.

关系运算符

零基础学Java-基础语法篇day2(运算符)

== 等于
!= 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于

其返回值为布尔类型
实例:

public class Demo7Operator {
    public static void main(String[] args){
    System.out.println(10>20);
    System.out.println(10<20);
    System.out.println(10!=20);
    System.out.println(10==20);
    }
}

打印结果:

false
true
true
false

逻辑运算符

零基础学Java-基础语法篇day2(运算符)

&(逻辑与) 一假则假,全真才真
|(逻辑或)一真则真,全假才假
!(逻辑非)取反
^(逻辑异或)相同为假,不同为真

实例:

public class Demo7Operator {
    public static void main(String[] args) {
        int x=10;
        System.out.println(x>5&x<15);
    }
}

打印结果:
true

短路逻辑运算符

零基础学Java-基础语法篇day2(运算符)

&&短路与 当左边为false时,右边就不执行了;如果左边为true,右边要执行
|| 短路或 当左边为true时,右边就不执行了;如果左边为false,右边要执行
实例&&:

public class Demo7Operator {
    public static void main(String[] args) {
        int x=3;
        int y=4;
        System.out.println(++x>4&&y--<5);
        System.out.println(x);//4
        System.out.println(y);//4
    }
}

打印结果:
4
4

实例&:

public class Demo7Operator {
    public static void main(String[] args) {
        int x = 3;
        int y = 4;
        System.out.println(++x > 4 & y-- < 5);
        System.out.println(x);//4
        System.out.println(y);//3
    }
}

打印结果:
4
3

三元运算符

格式:关系表达式?表达式1:表达式2
计算关系表达式的值,如果值为true,取表达式1的值,如果为false,取表达式2的值

实例:取两个数的最大值

public class Demo7Operator {
    public static void main(String[] args) {
        int x = 3;
        int y = 4;
        System.out.println(x>y?x:y);
    }
}

打印结果:
4

实例:取三个数的最大值

public class Demo7Operator {
    public static void main(String[] args) {
        int x = 3;
        int y = 4;
        int z = 5;
        System.out.println((x>y?x:y)>z?(x>y?x:y):z);
    }
}

打印结果:
5

本文地址:https://blog.csdn.net/qq_42580901/article/details/110260791

相关标签: Java