Java转义符_运算符

Java学习第二天

1、转义符
  • 要注意,转义符时反斜杠"\",不要经常弄错了,在java中,特殊符号的引用都用"\"+符号,都是用于字符串输出
    请添加图片描述
    上表中,特殊符号有 \ , ’ , " 因为没有反斜杠,编辑器会认为这个并非时单纯的输出,编译不通过

    • 1、换行符 \n
System.out.print("hello\nworld");

结果:
hello
world

在java里要区别一点,System.out.print和System.out.println这两个输出语句,前者是不换行的,后者是换行的。

  • 2、缩进 \t
    一般用于输出对齐
System.out.println("hello\tworld");
System.out.println("hello1\tworld");
System.out.println("hello12\tworld");

结果:
hello	world
hello1	world
hello12	world

但是,如果\t前面的字符串字节超过8个字节,它会往后面进行缩进

System.out.println("hello\tworld");
System.out.println("hello1\tworld");
System.out.println("hello12\tworld");
System.out.println("hello123\tworld");
System.out.println("hello1234\tworld");

结果:
hello	world
hello1	world
hello12	world
hello123	world
hello1234	world

从下面两个可以看到,往后面进行缩进了

2、运算符
2.1普通运算符

+,-,*,/,%(求余)是最基本的运算符了,需要注意,不同类型运算是会类型是会自动转换的,(可以看看上一章),会往大类型或默认类型转换

Java自动的隐含的将每个byte、short或char操作数提升为int类型

如果有一个操作数是long类型,就将整个表达式提升为long类型;

如果有一个操作数是float类型,就将整个表达式提升为float类型;

如果任何一个操作数为double类型,结果将为double类型。

long + double = double

2.2关系运算符

返回boolean型的
==, !=, >, <, >=, <=
请添加图片描述

public class Demo02 {
    public static void main(String[] args) {
        int a = 5;
        int b = 10;

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

        System.out.println(a>=b);    //false
        System.out.println(a<=b);    //true

        System.out.println(a>b);     //false
        System.out.println(a<b);     //true
    }
}

结果为注释的
2.3赋值运算符

赋值运算符:等号右边赋值给等号左边。

请添加图片描述
例如a += 5,相当于a = a + 5,后面的如此类推

public class Demo03 {
    public static void main(String[] args) {
        int a = 10;        //直接赋值
        a += 5;			   // a = a+5, 即 a = 10+5=15
        a -= 5;			  // a = a-5,  即 a = 15-5 = 10
        a *= 10;		  // a = a*10, 即 a = 10*10 = 100
        a /= 5; 	      // a = a/5,  即 a = 100/5 = 20
        a %= 4;           // a = a%4,  即 a = 20%4 = 0
        System.out.println(a);
    }
}

结果:
0
2.4逻辑运算符

逻辑运算符:两个boolean类型的操作数或表达式进行逻辑比较。
我们一般使用的是短路与和短路或,下面表格
请添加图片描述

public class Demo04 {
    public static void main(String[] args) {
        System.out.println(1==2||2<3);
        System.out.println(1!=2&&2>3);
        System.out.println(!(1==1));
    }
}

结果:
true
false
false

不同于 || 和 && 还有

  • 逻辑或| 一边为真即为真,两边为假即为假
  • 逻辑与& 一边为假即为假,两边为真即为真

对比

  • ||为只要一个为真,后面直接赋值不运行了,例如 1 == 1|| 2>3,前面1==1为真了,后面2>3就不运行了;但 | 是将两个都一起运行的,结果都一样,但逻辑与效率就慢了很多了。
  • 同理,&&只要一个为假,那直接就赋值假了,后面不运行了
    例如1==2&&2>3,前面为false,就不执行后面的了,但&会将全部运行
  • 异或^ 两边不同(真或假,假或真)为真, 两边相同为假
System.out.println(1==2 ^ 1==1);
System.out.println(1==1 ^ 2==2);

结果:
true
false
2.5三元运算符请添加图片描述
int a = 100;
int b = 80;
int max = a>b?a :b;
System.out.println(max);

结果:
100
考试题/面试题

在java里,运算时从上往下,在有等号“ = ”里,时从右往左
题1:

int num1 = 6;
int num2 = 6;
num1 += num1*10 + (++num1) + (num1++);

num1 = num1 + num1*10 + (++num1) + (num1++);
        6        60         7         7
结果:80
-----------------------------------------------------
num2 +=  (num2++) + num2*10 + (++num2);

num2 = num2 + (num2++) + num2*10 + (++num2)
		6        6          7*10       8
结果:90

题2:
结果为输出的注释,根据这结果,解出num3 和num4最初赋的值

//解方程解出 num3 和 num4
int num3 = (num1++)+(++num1)+num1*10;

int num4 = num2*10+(num2++)+(++num2);
		
System.out.println("num3:"+num3);//94
System.out.println("num4:"+num4);//74
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值