236、Java基础13 - 操作符【赋值操作符、三元操作运算符、Scanner】 2019.11.12

62 篇文章 0 订阅
4 篇文章 0 订阅

1、赋值操作

在这里插入图片描述

  • 赋值操作的操作顺序是从右到左
  • int i = 5+5;
    首先进行5+5的运算,得到结果10,然后把10这个值,赋给i
public class HelloWorld {
    public static void main(String[] args) {
        int i = 5+5;
    }
}

2、对本身进行运算,并赋值

  • +=即自加
  • i+=2;
    等同于
    i=i+2;
  • 其他的 -= , *= , /= , %= , &= , |= , ^= , >>= , >>>= 都是类似,不做赘述
public class HelloWorld {
    public static void main(String[] args) {
        int i =3;
        i+=2;
        System.out.println(i); // i=5
         
        int j=3;
        j=j+2;
        System.out.println(j); // j=5    
 
    }
}

3、练习:赋值操作符

int i = 1;
i+=++i; // 心算i的值是?
public class HelloWorld {
 
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //赋值操作符
        int i = 1;
        i+=++i;
        //i = i + ++i;
        System.out.println(i); //i=3
     
     }

}

4、三元操作运算符

  • 表达式?值1:值2
  • 如果表达式为真 返回值1
  • 如果表达式为假 返回值2
public class HelloWorld {
    public static void main(String[] args) {
 
        int i = 5;
        int j = 6;
 
        int k = i < j ? 99 : 88;
 
        // 相当于
        if (i < j) {
            k = 99;
        } else {
            k = 88;
        }
 
        System.out.println(k);
 
    }
}

5、练习:判断是否是工作日

通过Scanner输入一个1-7之间的整数,使用三元操作符判断是工作日还是周末?
在这里插入图片描述

// 解答1:
import java.util.Scanner;

public class Test {
    public static void main(String args[]){
     Scanner sc = new Scanner(System.in);

     System.out.println("今天是周几?");
     int day = sc.nextInt();

     System.out.println(day > 5 ? "周末": "工作日");
     System.out.println("今天是" + day);
    }
}

// 解答2:
import java.util.Scanner;

public class Test{

    public static void main(String args[]){
        Scanner sc = new Scanner(System.in);

        System.out.println("今天是周几:");
        int day = sc.nextInt();

        String num = (day == 6 || day == 7) ? "周末":"工作日";
        System.out.println("今天是" + day);
    }

}

6、Scanner

6.1 使用Scanner读取整数

注意: 使用Scanner类,需要在最前面加上

import java.util.Scanner;

表示导入这个类,才能够正常使用

import java.util.Scanner;
 
public class HelloWorld {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        int a = s.nextInt();
        System.out.println("第一个整数:"+a);
        int b = s.nextInt();
        System.out.println("第二个整数:"+b);
    }
}

6.2 使用Scanner读取浮点数

import java.util.Scanner;
  
public class HelloWorld {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        float a = s.nextFloat();
        System.out.println("读取的浮点数的值是:"+a);
 
    }
}

6.3 使用Scanner读取字符串

import java.util.Scanner;
  
public class HelloWorld {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        String a = s.nextLine();
        System.out.println("读取的字符串是:"+a);
    }
}

6.4 读取了整数后,接着读取字符串

  • 需要注意的是,如果在通过nextInt()读取了整数后,再接着读取字符串,读出来的是回车换行:"\r\n",因为nextInt仅仅读取数字信息,而不会读取回车换行"\r\n".

  • 所以,如果在业务上需要读取了整数后,接着读取字符串,那么就应该连续执行两次nextLine(),第一次是取走回车换行,第二次才是读取真正的字符串

import java.util.Scanner;
   
public class HelloWorld {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        int i = s.nextInt();
        System.out.println("读取的整数是"+ i);
        String rn = s.nextLine();
        String a = s.nextLine();
        System.out.println("读取的字符串是:"+a);
    }
}

7、参考链接

[01] How2j - 操作符系列教材 (五)- JAVA的赋值操作符
[02] How2j - 操作符系列教材 (六)- JAVA的三元操作符
[03] How2j - 操作符系列教材 (七)- 使用SCANNER读取整数

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值