CharSequence
是 Java 中的一个接口,它代表一个字符序列,可以被读取和遍历。String
类实现了 CharSequence
接口,因此可以将 CharSequence
对象转换为 String
对象。以下是将 CharSequence
转换为 String
的几种方法:
CharSequence
的一个具体实现类,表示不可变的字符序列。toString()
方法CharSequence
接口提供了一个 toString()
方法,可以直接将其转换为 String
。
CharSequence cs = "Hello, World!";
String str = cs.toString();
System.out.println(str); // 输出: Hello, World!
String.valueOf()
方法String
类提供了一个静态方法 valueOf()
,可以接受 CharSequence
类型的参数并返回对应的 String
。
CharSequence cs = "Hello, World!";
String str = String.valueOf(cs);
System.out.println(str); // 输出: Hello, World!
String
类的构造函数也可以接受 CharSequence
类型的参数。
CharSequence cs = "Hello, World!";
String str = new String(cs);
System.out.println(str); // 输出: Hello, World!
toString()
方法是最简单直接的方式。String.valueOf()
和构造函数提供了更多的灵活性,可以在转换过程中进行额外的处理。CharSequence
对象与其他字符串拼接时,通常会先将其转换为 String
。CharSequence
对象转换为 String
以便于输出。CharSequence
对象转换为 String
进行进一步处理。如果在转换过程中传入的 CharSequence
对象为 null
,调用 toString()
方法会抛出 NullPointerException
。
解决方法:
在进行转换之前,先检查 CharSequence
对象是否为 null
。
CharSequence cs = null;
if (cs != null) {
String str = cs.toString();
System.out.println(str);
} else {
System.out.println("CharSequence is null");
}
或者使用 String.valueOf()
方法,它在处理 null
时会返回字符串 "null"
而不是抛出异常。
CharSequence cs = null;
String str = String.valueOf(cs);
System.out.println(str); // 输出: null
通过这些方法,可以安全地将 CharSequence
对象转换为 String
,并在遇到 null
值时避免异常。
领取专属 10元无门槛券
手把手带您无忧上云