num == Integer.parseInt(str)
会比 str.equals("" + num)
str.equals("" + num)
首先将num转换为O(n)的字符串,其中n是数字中的位数。然后它将再次进行字符串连接O(n),然后最终进行字符串比较。在这种情况下,字符串比较将是另一个O(n)-n是数字中的位数。所以总共?3 * O(n)
num == Integer.parseInt(str)
会将字符串再次转换为O(n)的整数,其中n是数字中的位数。然后整数比较为O(1)。所以只有?1 * O(n)
总而言之,两者均为O(n)-但str.equals("" + num)
常数较高,因此速度较慢。