ฉันเห็นประสิทธิภาพที่เพิ่มขึ้นเมื่อใช้งานgetClass()
และ==
ดำเนินการมากกว่าinstanceOf
ตัวดำเนินการ
Object str = new Integer("2000");
long starttime = System.nanoTime();
if(str instanceof String) {
System.out.println("its string");
} else {
if (str instanceof Integer) {
System.out.println("its integer");
}
}
System.out.println((System.nanoTime()-starttime));
starttime = System.nanoTime();
if(str.getClass() == String.class) {
System.out.println("its string in equals");
} else {
if(str.getClass() == Integer.class) {
System.out.println("its integer");
}
}
System.out.println((System.nanoTime()-starttime));
มีแนวทางใดบ้างที่จะใช้getClass()
หรือinstanceOf
?
กำหนดสถานการณ์: ฉันรู้ว่าการเรียนที่แน่นอนที่จะจับคู่, ที่อยู่String
, Integer
(เหล่านี้เรียนสุดท้าย) ฯลฯ
การใช้instanceOf
ตัวดำเนินการไม่ดีหรือไม่