String
一、班级结构
今天我们就来说说String
课堂。在 ints 之后,String 类是 Java 中最受欢迎的类。它绝对无处不在。它有许多有用的方法,您最好了解这些方法。
该类String
是除原始类型之外唯一可以在switch
语句中使用文字的类;编译器以特殊方式处理字符串加法和 String 对象;String
对象以特殊的方式存储在内存中。基本上,String
班级是一个非常特殊的班级。
此外,该类String
还有一堆辅助类,其目的是进一步简化 Java 中字符串的处理。当你学会了这一切,很多事情对你来说真的会变得容易多了。好吧,我们将从这个生态系统的核心开始——班级的组织String
。
字符数组
类的结构String
其实很简单:里面是一个字符数组(char array),里面存放了字符串的所有字符。例如,这是单词“Hello”的存储方式:
重要的!
其实,这并不完全准确。因为这个String
类非常重要,它使用了很多优化,并且数据在内部存储的不是字符数组,而是简单的字节数组。
2.String
类的方法
该类String
有很多方法:仅它就有 18 个构造函数!所以下面我们只提到其中最基本的:
方法 | 描述 |
---|---|
|
返回字符串中的字符数 |
|
检查字符串是否为空字符串 |
|
检查字符串是否仅包含空白字符:空格、制表符、换行符等。 |
|
返回字符串中索引位置的字符。 |
|
返回组成字符串的字符数组(副本) |
|
将字符串转换为一组字节并返回字节数组。 |
|
将字符串拆分为多个子字符串。 |
|
将多个子字符串连接在一起 |
|
将字符串放入string pool . |
您可以在Java 构造函数一文中了解有关构造函数的更多信息。
让我们编写一个程序,将文件路径从 Unix 风格转换为 Windows 风格。Unix 使用/
字符分隔文件夹,而 Windows 使用字符\
。
解决方案 1:使用 char 数组
代码 | 笔记 |
---|---|
|
创建一个 Scanner 对象 从控制台读取一行 将字符串转换为字符数组 在字符上循环 如果字符是 / ,则将其替换为 \ . 不要忘记逃跑。根据字符数组创建一个新字符串。 显示字符串。 |
解决方案 2: — 使用split()
和join()
方法
代码 | 笔记 |
---|---|
|
创建一个 Scanner 对象 从控制台读取一行 Convert string to array of strings。该 / 字符用作分隔符(额外的两个斜杠是双重转义的结果)。连接字符串数组中的所有字符串。用作分隔符(我们看到它转义了)。 显示字符串。 \ |
解决方案 3: — 使用replace(char oldChar, char newChar)
方法
代码 | 笔记 |
---|---|
|
创建一个 Scanner 对象 从控制台读取一行 只需将一个字符替换为另一个字符 (第二个字符被转义) 显示字符串。 |
GO TO FULL VERSION