Java学习--点滴记录003

1.运算符和表达式

运算符:

​ 对常量或者变量进行操作的符号

表达式:

表达式: 用运算符把常量或者变量连接起来的,符合Java语法的式子

2.算术运算符

分类:+ - * / %

/1.整数相除结果只能得到整除,如果结果想要是小数,必须要有小数参数
2.小数直接参与运算,得到的结果有可能是不精确的
案例:
System.out.println( 10 / 3);//3
System.out.println(10.0 / 3);//3.3333333333333335
%:取模、取余。
也是除法运算,只不过获取的是余数而已
案例:
System.out.println(10 % 2);//0
System.out.println(10 % 3);//1

练习:数值拆分

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

举例:

package com.hailei_01;

import java.util.Scanner;

public class Demo {
    public static void main(String[] args) {
        //1.键盘录入一个三位数
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个三位数:");
        int number = sc.nextInt();

        //2.获取这个三位数的个位、十位、百位并打印出来
        //个位: 数字 % 10
        int ones = number % 10;
        //十位: 数字 / 10 % 10
        int tens = number / 10 % 10;
        //百位: 数字 / 100 % 10
        int hundreds = number / 100  % 10;
        //输出结果
        System.out.println("个位数字是:"+ones);
        System.out.println("十位数字是:"+tens);
        System.out.println("百位数字是:"+hundreds);
    }
}

在这里插入图片描述

3.隐式转换

概念:

​也叫自动类型提升,就是把一个取值范围小的数据或者变量,赋值给另一个取值范围大的变量

两种提升规则:

  • 取值范围小的,和取值范围大的进行运算,小的会先提升为大的,再进行运算
  • byte、short、char三种类型的数据在运算的时候,都会直接先提升为int,然后再进行运算

取值范围从小到大的关系:

​byte < short < int < long < float < double

4.强制转换

概念:

如果要把一个取值范围大的数据或者变量赋值给另一个取值范围小的变量。是不允许直接操作,就需要加入强制转换
强制转换有可能会导致数据发生错误(数据的精度丢失)

书写格式:

目标数据类型 变量名 = (目标数据类型)被强转的数据;

举例:

package com.hailei_02;

public class Demo {
    public static void main(String[] args) {
        double a = 11.1;
        int b = (int) a;
        System.out.println(b);
    }
}

在这里插入图片描述

5.字符串的+操作

使用:

  • 当+操作中出现字符串时,此时就是字符串的连接符,会将前后的数据进行拼接,并产生一个新的字符串
  • 当连续进行+操作时,从左到右逐个执行的

6.字符的+操作

规则:

​当+操作中出现了字符,会拿着字符到计算机内置的ASCII码表中去查对应的数字,然后再进行计算

举例:

package com.hailei_03;

public class Demo {
    public static void main(String[] args) {
        char c1 = 'a';
        int result1 = c1 + 0;
        System.out.println(result1);
        char c2 = 'A';
        int result2 = c2 + 0;
        System.out.println(result2);
    }
}

在这里插入图片描述

7.自增自减运算符

分类:

++  自增运算符
--  自减运算符

++:就是把变量里面的值+1

–:就是把变量里面的值-1

使用:

  • 放在变量的前面,我们叫做先++。 比如:++a
  • 放在变量的后面,我们叫做后++。 比如:a++

举例:

package com.hailei_04;

public class Demo {
    public static void main(String[] args) {
        int a = 10;
        int b = 10;
        int c = 10;
        int d = 10;
        a++;
        System.out.println(a);
        ++b;
        System.out.println(b);
        System.out.println(c++);
        System.out.println(++d);
    }
}

在这里插入图片描述

8.赋值运算符

最为常用的: =
就是把等号右边的结果赋值给左边的变量

举例:

package com.hailei_05;

public class Demo {
    public static void main(String[] args) {
        //1.最为简单的赋值运算符用法
        int a = 10;//就是把10赋值给变量a
        System.out.println(a);

        //2.如果等号右边需要进行计算。
        int b = 20;
        int c = a + b;//先计算等号右边的,把计算的结果赋值给左边的变量
        System.out.println(c);

        //3.特殊的用法
        a = a + 10;//先计算等号右边的,把计算的结果赋值给左边的变量
        System.out.println(a);
    }
}

在这里插入图片描述

9.扩展赋值运算符

分类:

​ +=、-=、*=、/=、%=

运算规则:

​ 就是把左边跟右边进行运算,把最终的结果赋值给左边,对右边没有任何影响

举例:

package com.hailei_06;

public class Demo {
    public static void main(String[] args) {
        //扩展赋值运算符
        int a = 10;
        int b = 20;
        a += b;//把左边和右边相加,再把最终的结果赋值给左边,对右边没有任何影响
        System.out.println(a);
        System.out.println(b);
    }
}

在这里插入图片描述

10.关系运算符

又叫比较运算符,其实就是拿着左边跟右边进行了判断而已
关系运算符最终的结果一定是布尔类型的。要么是true,要么是false

分类:

符号解释
==就是判断左边跟右边是否相等,如果成立就是true,如果不成立就是false
!=就是判断左边跟右边是否不相等,如果成立就是true,如果不成立就是false
>就是判断左边是否大于右边,如果成立就是true,如果不成立就是false
>=就是判断左边是否大于等于右边,如果成立就是true,如果不成立就是false
<就是判断左边是否小于右边,如果成立就是true,如果不成立就是false
<=就是判断左边是否小于等于右边,如果成立就是true,如果不成立就是false

11.逻辑运算符

& 和 | 的使用:

&:逻辑与(而且)

​ 两边都为真,结果才是真,只要有一个为假,那么结果就是假。

|:逻辑或(或者)

​ 两边都为假,结果才是假,只要有一个为真,那么结果就是真。

^(异或)的使用:

如果两边相同,结果为false,如果两边不同,结果为true

!(取反)的使用:

​false取反就是true,true取反就是false

12.短路逻辑运算符

&&:

​运算结果跟&是一模一样的,但是具有短路效果

||:

​运算结果跟|是一模一样的,但是具有短路效果

逻辑:

​当左边不能确定整个表达式的结果,右边才会执行

​当左边能确定整个表达式的结果,那么右边就不会执行了,从而提高了代码的运行效率

13.三元运算符

又叫做:三元表达式或者问号冒号表达式

格式:

​ 关系表达式 ? 表达式1 :表达式2 ;

计算规则:

  • 计算关系表达式的值
  • 如果关系表达式的值为真,那么执行表达式1
  • 如果关系表达式的值为假,那么执行表达式2

举例:

package com.hailei_07;

public class Demo {
    public static void main(String[] args) {
        //求两个数的较大值
        int a = 10;
        int b = 20;

        //关系表达式 ? 表达式1 : 表达式2 ;
        int max =  a > b ? a : b ;
        System.out.println(max);

        System.out.println(a > b ? a : b);
    }
}

在这里插入图片描述

希望本文对大家有帮助,上文若有不妥之处,欢迎指正

分享决定高度,学习拉开差距

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鲁棒最小二乘支持向量机

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值