Java—String类

1.基础概念

  String类是Java中用于表示字符串的类,它属于java.lang包。字符串是不可变的,一旦创建就不能被修改。这意味着每次对字符串进行操作时,都会创建一个新的字符串对象。

String myString = "Hello, World!";

 2.常见String操作方法

  String类提供了许多用于操作字符串的方法,例如:

  • length(): 返回字符串的长度。
  • charAt(index): 返回指定索引处的字符。
  • substring(beginIndex, endIndex): 返回一个新字符串,包含从beginIndexendIndex-1的字符。
  • concat(str): 将指定字符串连接到此字符串的末尾。
  • indexOf(str): 返回指定子字符串在此字符串中第一次出现的索引。
String str = "Java Programming";
int length = str.length(); // 17
char firstChar = str.charAt(0); // 'J'
String subStr = str.substring(0, 4); // "Java"
String newStr = str.concat(" is fun!"); // "Java Programming is fun!"
int index = str.indexOf("Programming"); // 5

 3.字符串的不可变性

       由于字符串是不可变的,任何修改字符串的操作都会创建一个新的字符串对象。这种设计有助于提高字符串的安全性和线程安全性。 

String original = "Hello";
String modified = original.concat(", World!"); // 创建了一个新的字符串对象
System.out.println(original); // "Hello"
System.out.println(modified); // "Hello, World!"

       虽然不可变性可能会导致一些性能开销,但它也带来了一些优势,如线程安全性和安全性。不可变字符串可以安全地共享,而不必担心被修改。

4.字符串的比较

  String类提供了多种比较字符串的方法,包括equals()equalsIgnoreCase()compareTo()等。需要注意的是,应该避免使用==运算符进行字符串比较,因为它比较的是引用而不是内容。

String str1 = "Hello";
String str2 = "hello";
boolean isEqual = str1.equals(str2); // false
boolean isEqualIgnoreCase = str1.equalsIgnoreCase(str2); // true
int compareToResult = str1.compareTo(str2); // 32,根据字母顺序比较

 5.字符串的拼接

       在Java中,有多种方式可以进行字符串的拼接,例如使用“+”运算符、concat()方法,或者StringBuilder类。对于频繁的字符串拼接操作,推荐使用StringBuilder以提高性能。

String firstName = "John";
String lastName = "Doe";

// 使用 + 运算符
String fullName1 = firstName + " " + lastName;

// 使用 concat 方法
String fullName2 = firstName.concat(" ").concat(lastName);

// 使用 StringBuilder 类
StringBuilder fullNameBuilder = new StringBuilder();
fullNameBuilder.append(firstName).append(" ").append(lastName);
String fullName3 = fullNameBuilder.toString();
  • 17
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值