我试图在Java中覆盖toString方法,从两个数组(字符串)输出到一个字符串,然后我可以用换行符格式化,我假设使用/ n.我刚刚掌握了Java,在查看了文档之后,我仍然感到困惑的是这样的语法应该如何看待.如果有人有一个例子,他们可以告诉我,或者可以解释这样做的好方法,我将非常感激.
如果你有一个包含两个数组的类,并且想要覆盖toString显示这些数组的方法,你可以:
@Override
public String toString() {
return Arrays.toString(array1) + " " + Arrays.toString(array2);
}
Run Code Online (Sandbox Code Playgroud)
这是一个完整的例子:
import java.util.Arrays;
public class Test {
int[] array1 = { 1, 2, 3 };
String[] array2 = { "Hello", "World" };
@Override
public String toString() {
return Arrays.toString(array1) + " " + Arrays.toString(array2);
}
public static void main(String[] args) {
System.out.println(new Test());
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
[1, 2, 3] [Hello, World]
Run Code Online (Sandbox Code Playgroud)
这是一个带有换行符的版本:
public class Test {
int[] array1 = { 1, 2, 3 };
String[] array2 = { "Hello", "World" };
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("array1:\n");
for (int i : array1)
sb.append(" ").append(i).append('\n');
sb.append("\narray2:\n");
for (String s : array2)
sb.append(" ").append(s).append('\n');
return sb.toString();
}
public static void main(String[] args) {
System.out.println(new Test());
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
array1:
1
2
3
array2:
Hello
World
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2165 次 |
| 最近记录: |