闭区间
int l = 0, r = nums.length - 1;while (l <= r) {int mid = (l + r) >>> 1;if (nums[mid] >=1 )r = mid - 1;elsel = mid + 1;}
=0 返回>=0的第一个数的索引 nums[mid] >=0 返回l
0 返回>0的第一个数的索引 nums[mid] >=1 返回l
<0 返回<0的最后一个数的索引 nums[mid] >=0 返回l-1
<=0 返回<=0的最后一个数的索引 nums[mid] >=1 返回l-1