if(i == 0) {max = min = temp;}这个是将第一个数值赋值给max和min,这就覆盖了初始化的0,然后再跟后边的值进行比较,就避免了你说的这种情况,所以这是没有问题的。
max =Integer.MIN_VALUEmin=Integer.MAX_VALUE
同意2楼的