Java中的运算符——字符串连接运算符

        在 Java 语言中所有的字符串都使用半角双引号括起来的,字符串属于引用数据类型,不属于基本数据类型的范畴,怎么定义一个字符串的变量呢?例如:String name = “jack”;,这就类似于 int i = 10;是一样的,int 是一种整数类型,i 是变量,10 是整数型字面量。那么 String 则是一种字符串类型,name 是变量,”jack”是字符串型字面量。在 java 编程中对字符串的操作是非常频繁的,例如字符串的连接操作,此时就需要使用 “ + ” 字符串连接运算符了。

        实际上 “ + ” 运算符在 Java 语言中有两个作用,作用一是对数字进行求和运算,作用二就是字符串连接运算,那么它在什么时候是进行求和,什么时候又进行字符串连接呢?大家可以这样进行区分,当 “ + ” 运算的时候,两边的操作数都是数字的话,一定会进行求和运算只要其中有一个操作数是字符串类型,那么一定会进行字符串拼接运算,字符串拼接之后的结果还是字符串类型。需要注意的是,当一个表达式当中有多个 “ + ”,并且在没有小括号的前提下,遵循自左向右的顺序依次执行。我们来看一段程序:

public class PlusTest01 {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        //加号两边都是 int 类型,执行求和运算
        int c = a + b;
        /*
          以下代码虽然有两个加号,第一个加号在双引号当中,
          不起任何作用,只是一个普通字符串,第二个加号由于
          左边操作数是一个字符串,所以这个加号一定会进行
          字符串连接,连接之后的结果还是一个字符串。
        */
        System.out.println("a + b = " + c); //a + b = 30
        /*
          分析以下程序的输出结果?哪些加号进行求和,
          哪些加号进行字符串连接
        */
        System.out.println(a + " + " + b + " = " + a + b);
        /*
          分析以下程序的输出结果?哪些加号进行求和,
          哪些加号进行字符串连接
        */
        System.out.println(a + " + " + b + " = " + (a + b));
        //定义一个字符串类型变量
        String name = "jack";
        /*
          字符串拼接在实际开发中很常用,拼接的时候是有口诀,
          大家记住,将变量放到字符串当中进行拼接,可以这样
          做:1、在拼接的位置添加一个英文双引号;2、在双引
          号中间添加两个加号;3、把字符串变量放到两个加号
          中间。
        */
        System.out.println("登录成功,欢迎" + name + "回来!");
    }
}

        对于程序 System.out.println(a + " + " + b + " = " +a + b); 的分析见下图:

Java中的运算符——字符串连接运算符_第1张图片

        对于程序 System.out.println(a + " + " +b + " = " + (a + b)); 的分析见下图:

Java中的运算符——字符串连接运算符_第2张图片

        总之,使用 “ + ” 进行字符串拼接在开发中使用太频繁了,尤其是怎么将一个变量放到字符串当中。除了以上所讲的运算符之外,实际上还有其它运算符,例如位运算符主要操作二进制位的,还有运算符 instanceof、new 等。这里就不再赘述了。

        (本文仅代表个人观点,不喜勿喷!)


        点击下方链接↓,获取更多知识:

  • Java中的运算符
  • Java中的运算符——算数运算符详解
  • Java中的运算符——关系运算符详解
  • Java中的运算符——逻辑运算符详解
  • Java中的运算符——赋值运算符详解
  • Java中的运算符——条件运算符详解

你可能感兴趣的:(JavaSE,java,开发语言,后端,经验分享,其他)