一、Object類的toString()方法
Java中所有類都繼承自Object類,而Object類中定義了toString()方法,所以所有對象都可以調用該方法將自身轉換成字符串形式。當我們把一個對象傳遞給System.out.println()方法時,實際上調用了該對象的toString()方法。
public class Person {
private String name;
private int age;
// getter and setter methods
@Override
public String toString() {
return "Person{" +
"name='" + name + '\'' +
", age=" + age +
'}';
}
}
public class Main {
public static void main(String[] args) {
Person person = new Person();
person.setName("Tom");
person.setAge(18);
System.out.println(person); // output: Person{name='Tom', age=18}
}
}
二、String類的valueOf()方法
String類中的valueOf()方法可以將任意類型的值轉換為字符串。該方法有多個重載形式,可以通過傳遞不同類型的參數來實現類型轉換。
public class Main {
public static void main(String[] args) {
int num = 123;
String numStr = String.valueOf(num);
System.out.println(numStr); // output: "123"
double pi = 3.1415926;
String piStr = String.valueOf(pi);
System.out.println(piStr); // output: "3.1415926"
char ch = 'A';
String chStr = String.valueOf(ch);
System.out.println(chStr); // output: "A"
}
}
三、StringBuilder/StringBuffer類的append()方法
StringBuilder和StringBuffer是用於創建可變字符串的類,它們都有一個append()方法,可以將任意類型的值追加到字符串末尾。在需要頻繁拼接字符串的場景下,使用StringBuilder/StringBuffer比使用”+”運算符或String類的concat()方法性能更好。
public class Main {
public static void main(String[] args) {
StringBuilder builder = new StringBuilder();
builder.append("Hello, ");
builder.append("world!");
System.out.println(builder.toString()); // output: "Hello, world!"
int num = 123;
builder.append(num);
System.out.println(builder.toString()); // output: "Hello, world!123"
boolean flag = true;
builder.append(flag);
System.out.println(builder.toString()); // output: "Hello, world!123true"
}
}
四、使用String.format()方法
String類中提供了一個靜態方法format(),可以使用類似於C語言中的printf()函數的格式化字符串來將數據轉換為字符串。
public class Main {
public static void main(String[] args) {
int num = 123;
String numStr = String.format("%d", num);
System.out.println(numStr); // output: "123"
double pi = 3.1415926;
String piStr = String.format("%.2f", pi);
System.out.println(piStr); // output: "3.14"
String name = "Tom";
int age = 18;
String infoStr = String.format("My name is %s, and I'm %d years old.", name, age);
System.out.println(infoStr); // output: "My name is Tom, and I'm 18 years old."
}
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/295177.html
微信掃一掃
支付寶掃一掃