知识库 知识库
首页
  • Hyperskill - Java

    • Java basic
    • Java OOP
    • 应知
    • 扩展
    • IO & Stream
    • Error & Exception
    • Algorithm & Data structure
    • Design pattern
    • Web
    • Spring boot
  • 练习题

    • 选择题 & 填空题
    • 代码题
  • Frank - Java与生活 (OOP)

    • 参考资料
    • Java基础
    • OOP上半部分
    • OOP下半部分
  • Frank - Java API进阶

    • Base API
    • Unit Test and main function
  • 学习笔记
  • 学习笔记

    • 数据库
  • Frank - MySQL删库跑路

    • 安装、连接、配置
    • 基本操作——数据库
    • 基本操作——表
    • 基本操作——数据
    • 数据类型
    • 列属性完整性
    • 数据库设计思维
    • 单表查询
    • 多表查询
  • 学习笔记

    • 其它
  • Frank - Linux现代方法

    • 必知
    • 命令
    • 技巧
  • 技术文档
  • Git
  • GitHub技巧
  • 前端
  • Khan Academy - 语法
  • Monthly
  • 阅读
  • Others
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
收藏
  • 标签
  • 归档
GitHub (opens new window)

Jim FuckPPT

Java小学生
首页
  • Hyperskill - Java

    • Java basic
    • Java OOP
    • 应知
    • 扩展
    • IO & Stream
    • Error & Exception
    • Algorithm & Data structure
    • Design pattern
    • Web
    • Spring boot
  • 练习题

    • 选择题 & 填空题
    • 代码题
  • Frank - Java与生活 (OOP)

    • 参考资料
    • Java基础
    • OOP上半部分
    • OOP下半部分
  • Frank - Java API进阶

    • Base API
    • Unit Test and main function
  • 学习笔记
  • 学习笔记

    • 数据库
  • Frank - MySQL删库跑路

    • 安装、连接、配置
    • 基本操作——数据库
    • 基本操作——表
    • 基本操作——数据
    • 数据类型
    • 列属性完整性
    • 数据库设计思维
    • 单表查询
    • 多表查询
  • 学习笔记

    • 其它
  • Frank - Linux现代方法

    • 必知
    • 命令
    • 技巧
  • 技术文档
  • Git
  • GitHub技巧
  • 前端
  • Khan Academy - 语法
  • Monthly
  • 阅读
  • Others
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
收藏
  • 标签
  • 归档
GitHub (opens new window)
  • Hyperskill - Java

  • 练习题

  • Frank - Java与生活

    • 参考资料

    • Java基础

      • 一带而过的东西
      • 值得注意的是
      • 关于Java语言
      • String
        • 特性
        • 一些 String 方法
        • 与 C 语言相比更为方便的事儿
      • 自动类型转换
      • import 导包
      • 数组
      • 方法的重载
      • 规范
    • OOP上半部分

    • OOP下半部分

  • Frank - Java API进阶

  • 学习笔记

  • Java
  • Frank - Java与生活
  • Java基础
Jim
2022-04-15
目录

String

# String

Javadoc link:https://docs.oracle.com/javase/8/docs/api/java/lang/String.html

字符串并不是 Java 中的原始数据类型(Primitive data type),而是一种参考类型(Reference type),由多个字符组成的序列。

# 特性

  • 不可变类型(Immutable type)
  • 非原始类型(non-primitive type)
  • 每个字符都可以通过索引(Index)来访问,第一个从 0 开始,最后一个通常为字符串长度减 1( string.length() - 1)
  • 拥有一些方法(method)来获得单个字符和提取子字符串(substrings),或者其他有用的操作
  • 多个字符串可通过 + 串联起来,甚至可以和数字类型连接(需要注意运算符执行顺序)
  • 不能使用 == 来比较两个字符串的等效性(equivalen)
  • 格式化字符串使用 printf() 来实现

# 一些 String 方法

isEmpty()	// whether is empty, return ture if empty, otherwise fa
charAt(0)   // charAt(str.length() - 1)
length()
toLowerCase()
toUpperCase()
startsWith("Hel")
substring(6, 11)
contains("Hel")
replace('J', 'j')   // replace(",", "")
trim()
1
2
3
4
5
6
7
8
9
10

# 与 C 语言相比更为方便的事儿

C 语言的字符串是通过数组来实现的,而 Java 有一个专门的 String 参考类型。

假如要对一个字符串进行操作,却不知道字符串的长度,那就可以用 length() 方法:

for (int i = 0; i < str.length(); i++) {
    System.out.print(str.charAt(i) + " ");
}
1
2
3

用 toCharArray() 可将字符串转换为一个新的字符数组:

char[] chars = string.toCharArray();
1

没有像C 语言里 \0 (字符串结束符)这一说,就像给你戴了个套,爽就完事儿了...

编辑 (opens new window)
上次更新: 2022/09/26, 16:55:15
关于Java语言
自动类型转换

← 关于Java语言 自动类型转换→

最近更新
01
《挪威的森林》
04-14
02
青钢影
04-14
03
Processing strings
02-18
更多文章>
Theme by Vdoing | Copyright © 2022-2023 Jim Frank | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式