java学习第十课

学到的内容
String 字符串的创建方式,两种赋值形式的区别;
字符串常量池原理,理解为什么部分字符串可以直接用 ,大部分情况要用 equals () 比较;
常用字符串方法:获取长度、截取、查找字符、字符串替换、分割等;
String 的不可变性,字符串对象一旦创建,内容无法直接修改。
遇到的问题
最容易混淆的就是
和equals()。受 C、C++ 思维影响,一开始习惯性直接使用==对比字符串内容,忘记 Java 中引用类型 == 比较的是地址,不是文本内容。
调试的时候多次出现判断结果和预期不符,排查很久才找到问题。另外一开始没有重视 String 不可变特性,频繁拼接字符串,知道这样会产生很多临时对象,效率较差。
和 C/C++ 简单对比
C++ 有 string 类,也有 char [] 字符数组;Java 字符串是独立的 String 类,底层实现完全不同;
C/C++ 可以直接修改字符数组内元素,Java String 不能直接修改内容,想要改动只能生成新字符串;
C 语言没有原生字符串类型,依靠字符指针操作,风险高,容易越界;Java 封装度更高,安全性更好;
Java 自带大量内置字符串工具方法,不用自己封装截取、查找函数,开发更省事。

posted @ 2026-07-31 18:37  梁煜昊  阅读(7)  评论(0)    收藏  举报