Java学习--点滴记录003

Posted 鲁棒最小二乘支持向量机

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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);
    

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

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

以上是关于Java学习--点滴记录003的主要内容,如果未能解决你的问题,请参考以下文章

Java学习--点滴记录002

CK003-淘淘商城实战高并发分布式项目(新版)

python学习点滴记录-Day08

Java学习--点滴记录001

ZA003-Python数据分析与机器学习实战(唐宇迪)

python学习点滴记录-Day21-项目