zoukankan      html  css  js  c++  java
  • java 字符+操作,字符串+操作

    字符额 “+” 操作

    是拿字符在计算机底层对应的数值来进行计算的

    • ‘A’ = 65 A-Z是连续的

    • 'a' = 97 a-z是连续的

    • '0' = 48 0-9是连续的

    算数表达式中包含多个基本数据类型的值的时候,整个算数表达式的类型会自动进行提升。

    提升规则:

    • byte类型,shot类型、char类型将被提升到int类型

    • 整个表达式的类型自动提升到表达式中最高等级操作数同样的类型,等级循序:byte,short,char→int→long→float→double

    public static void main(String[] args) {
            int i = 10;
            char c = 'A';        //A的值是65 ,char 类型的赋值用单引号
            c='a';               //'a'的值是97
            c='0';               //‘0’的值是48
            System.out.println(i + c);
            //char ch=i+c;       //报错。因为char类型会自动提升为int类型
            int j=i+c;
            System.out.println(j);
    
            //int k=10+13.14;   // 报错,因13.14是double类型,10是int类型的,double类型的等级比int类型的要高,所以结果应该是double类型的
            double k=10+13.14;
            System.out.println(k);
        }

    字符串的 “+” 操作

    当“+”操作出现的字符串时,这个“+”是字符串连接符,而不是算数运算符。 例如:“test” + 666, 结果是test666 在“+”操作中,如果出现了字符串,这个“+”就是连接运算符,否则就是算数运算符。当连续进行+操作时,从左到右逐个执行。 例如:1+99+test 结果是100test

    public static void main(String[] args) {    
        System.out.println("test" + "str");    
        System.out.println("test" + 666);    
        System.out.println(666 + "test");    
        System.out.println("test" + 100 + 1);    
        System.out.println(1 + 100 + "test");
        /*字符串的 + 操作,当“+”操作出现的字符串时,这个“+”是字符串连接符,而不是算数运算符。
        例如:“test” + 666, 结果是test666
        在“+”操作中,如果出现了字符串,就是连接运算符,否则就是算数运算符。当连续进行“+”操作时,从左到右逐个执行。
        例如:1+99+test 结果是100test */
    }

    赋值运算符

    符号作用说明
    = 赋值 a=10,将10赋值给a
    += 加后赋值 a+=b,将a加b后,所得值再赋值给a
    -= 减后赋值 a-=b,将a减b后,所得值再赋值给a
    *= 乘后赋值 a*=b,将a乘b后,所得值再赋值给a
    /= 除后赋值 a/=b,将a除以b后,所得值再赋值给a
    %= 取余后赋值 a%=b,将a除以b后,所得余数再赋值给a

    注意:红色是扩展赋值运算符,扩展的赋值运算符,底层隐含了强制类型转换。

    例如:

    short s=10;
    
    s+=20;//结果是30,虽然s是short类型,20是int类型,但底层自动进行类型转换,所以编译通过
    
    //s=s+20;//编译报错,因10是int类型,无法与short类型进行运算
    
    s=(short)(s+20);//进行强制类型转换就可以进行编译了
  • 相关阅读:
    java jpg图片按质量保存
    Python 九九乘法表
    Linux 磁盘空间查看
    jsTree 隐藏父节点的复选框;只留最底一层的复选框
    padding-top实现列表图片自适应
    jsTree自定义contextmenu 的二种方式
    jstree插件对树操作增删改查的使用
    layui遇到的坑
    layui复选框全选,单选取消全选
    获取 Layui 表单 select 中的 option 的自定义属性
  • 原文地址:https://www.cnblogs.com/henrypaul/p/12262679.html
Copyright © 2011-2022 走看看