字符串和字符串的 “+“ 操作

发布时间:2024年01月11日

1. 数字相加

数字进行运算时,数据类型不一样不能运算,需要转成一样的,才能运算。
请添加图片描述

2. 字符串相加

+操作中出现字符串时,这个+字符串连接符,而不是算数运算符了。会将前后的数据进行拼接,并产生一个新的字符串。
"123" + 123 = "123123"

  • 连续进行+操作时,从左到右 逐个 执行。
  • 1 + 99 + "年黑马" = 100年黑马

练习 看代码说结果

  1. System.out.println(3.7 + "abc");

output
"3.7abc"

  1. System.out.println("abc" + true);

output
"abctrue"

  1. System.out.println("中" + "abc" + true);

output
"中abctrue"

int age = 18;
System.out.println("我的年龄是" + age + "岁");
System.out.println("我的年龄是" + "age" + "岁");

output

"我的年龄是18岁"
"我的年龄是age岁"
  1. System.out.println(1 + 2 + "abc" + 2 + 1);
    !错了!

output

"3abc3"//错了
"3abc21"

练习 数值拆分

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

output
请添加图片描述
代码

import java.util.Scanner;

public class test1 {
    public static void main(String[] args) {
        //键盘录入一个三位数,获取其中的个位、十位、百位

        //1.键盘录入
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个三位数");
        int number = sc.nextInt();

        //2.获取个位、十位、百位
        //公式
        //个位:数字 % 10
        //十位:数字 / 10 % 10
        //百位:数字 / 10 % 10
        //...
        int ge = number % 10;
        int shi = number / 10 % 10;
        int bai = number / 100 % 10;
        System.out.println("个位是:" + ge);
        System.out.println("十位是:" + shi);
        System.out.println("百位是:" + bai);

    }
}

3. 字符相加

byte shot char三种类型的数据在运算的时候,都会直接先提升为int,然后再进行运算。

那么,在运算中字符是怎样提升的??

字符的+操作

当字符 + 字符 / 字符 + 数字时,会把字符通过ASCII码表查询到对应的数字再进行计算。
请添加图片描述

练习 看代码说结果

System.out.println(1 + 'a'); //98
System.out.println('a' + "abc"); //"aabc"

小结

符号作用说明
+数字相加 / 字符串相加 / 字符相加
-同上(字符串只有+操作!
*×等同
/÷等同
%取模、取余获取的是两个数据做除法的余数
  • 注意事项
    /%区别:两个数据做除法/ 取结果的商,%取结果的 余数

整数操作只能得到整数,要想得到小数,必须有浮点数参与运算。

文章来源:https://blog.csdn.net/nhvhy235/article/details/135475801
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。