You are correct. I will switch to a do-while.

Mike

On Jul 18 2014, at 15:20 , Ivan Gerasimov <ivan.gerasi...@oracle.com> wrote:

> Hi Claes!
> 
> Wouldn't it be better to use do-while here:
>  339         while (charPos > offset) {
>  340             buf[--charPos] = Integer.digits[val & mask];
>  341             val >>>= shift;
>  342         }
> given the precondition 
>          // assert len > 0 && (offset + len) <= buf.length : "illegal length";
> (charPos > offset) condition should always hold for the first time.
> 
> This would save one comparison.
> 
> Sincerely yours,
> Ivan
> 
> On 19.07.2014 1:14, Claes Redestad wrote:
>> Hi, 
>> 
>>  Mike Duigou suggested some simplifications to the formatUnsigned methods. 
>> Shows a slight speed-upon some micros as well: 
>> 
>>  http://cr.openjdk.java.net/~redestad/8050114/webrev.2/ 
>> 
>> /Claes 
>> 
>> On 2014-07-13 00:26, Claes Redestad wrote: 
>>> Hi, 
>>> 
>>>  please review this patch to expose formatUnsignedInt/-Long through 
>>> JavaLangAccess. 
>>> 
>>>  webrev: http://cr.openjdk.java.net/~redestad/8050114/webrev.1/ 
>>>  bug: https://bugs.openjdk.java.net/browse/JDK-8050114 
>>> 
>>>  The behavior of the methods have been adjusted to be zero-padding in case 
>>> the number formatted is shorter than the specified length, since that 
>>> simplifies use cases for which this utility is exposed internally, e.g., 
>>> JDK-8006627 <https://bugs.openjdk.java.net/browse/JDK-8006627>. 
>>> Microbenchmarks show that this does not adversely affect performance of 
>>> current uses through toHexString, toOctalString etc. 
>>> 
>>>  Thanks! 
>>> 
>>>  /Claes 
>> 
>> 
>> 
> 

Reply via email to