题意整理
- 输入一个类名。
- 输出该类实例化后对象的字符串形式。
方法一(调用系统函数)
1.解题思路
- 通过实例化后的对象获取类。
- 然后再通过类获取类名。
图解展示:
2.代码实现
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws Exception {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()) {
String className = scanner.next();
// print就是需要你定义的方法
print(Class.forName(className).newInstance());
}
}
//先通过实例化的对象获取类,然后再获取类名
public static void print(Object object){
System.out.println(object.getClass().getName());
}
}
class First {
public String toString() {
return "First";
}
}
class Second {
public String toString() {
return "Second";
}
}
class Third {
public String toString() {
return "Third";
}
}
3.复杂度分析
- 时间复杂度:只需调用一次系统函数,所以时间复杂度为。
- 空间复杂度:不需要额外的空间,所以空间复杂度为。