← Back to team overview

dhis2-devs team mailing list archive

Re: [Branch ~dhis2-devs-core/dhis2/trunk] Rev 1337: Improved DataValue.isZero

 

Hi all, my way is easy and simple. Cast to Double and compare with new
Double(0). new Double(value).equal(new Double(0)) ? how do you think?

On 1/26/10, Bob Jolliffe <bobjolliffe@xxxxxxxxx> wrote:
> 2010/1/26 Lars Helge Øverland <larshelge@xxxxxxxxx>
>
>>
>>
>> 2010/1/26 Trí Trần Thanh <tranthanhtri84@xxxxxxxxx>
>>
>>
>>> ================================
>>> Tran Thanh Tri
>>>  HISP Viet Nam
>>>  Cell phone: +84903670967
>>>  Website: http://tringuyenvn.com
>>> ================================
>>>
>>>
>>> 2010/1/25 <noreply@xxxxxxxxxxxxx>
>>>
>>>>  ------------------------------------------------------------
>>>> revno: 1337
>>>> committer: Lars Helge Oeverland <larshelge@xxxxxxxxx>
>>>> branch nick: trunk
>>>> timestamp: Mon 2010-01-25 15:30:51 +0100
>>>> message:
>>>>  Improved DataValue.isZero
>>>> modified:
>>>>  dhis-2/dhis-api/src/main/java/org/hisp/dhis/datavalue/DataValue.java
>>>>
>>>>
>>>> --
>>>> lp:dhis2
>>>> https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk<https://code.launchpad.net/%7Edhis2-devs-core/dhis2/trunk>
>>>>
>>>> Your team DHIS 2 developers is subscribed to branch lp:dhis2.
>>>> To unsubscribe from this branch go to
>>>> https://code.launchpad.net/~dhis2-devs-core/dhis2/trunk/+edit-subscription<https://code.launchpad.net/%7Edhis2-devs-core/dhis2/trunk/+edit-subscription>
>>>> .
>>>>
>>>> === modified file
>>>> 'dhis-2/dhis-api/src/main/java/org/hisp/dhis/datavalue/DataValue.java'
>>>> --- dhis-2/dhis-api/src/main/java/org/hisp/dhis/datavalue/DataValue.java
>>>>        2010-01-25 14:08:24 +0000
>>>> +++ dhis-2/dhis-api/src/main/java/org/hisp/dhis/datavalue/DataValue.java
>>>>        2010-01-25 14:30:51 +0000
>>>> @@ -198,7 +198,7 @@
>>>>     public boolean isZero()
>>>>     {
>>>>         return dataElement != null && dataElement.getType().equals(
>>>> DataElement.VALUE_TYPE_INT )
>>>> -            && value != null && ( value.equals( "0" ) ||
>>>> value.startsWith( "0." ) );
>>>>
>>>  This script will not working fine. *new Double("0.001").intValue()==0 is
>>> true but it must be false.*
>>>  I thing it must be n*ew Double(value)==(new Double(0))*
>>> what do you thing ?
>>>
>>> +            && value != null && new Double( value ).i
>>>
>>>
>> I don't think we should allow decimal numbers in the first place, eg it
>> cant be 0.5 people with malaria or vaccines given. But Jason pointed out
>> that regex might be the better solution for this in any case.
>>
>
> Maybe something like
>
> ^[0]*[.]?[0]*$
>
> Start word. Read any number of zeroes followed optionally by a '.' followed
> by any number of zeroes.  End word.
>
> From my emacs buffer, M indicates a match
> 0   M
> 003
> 0.00   M
> 0.03
> .000   M
> 00.0   M
> 008000
>
> Cheers
> Bob
>
> Feel free to improve, I don't have strong opinions on this.
>>
>>
>>
>>
>> _______________________________________________
>> Mailing list:
>> https://launchpad.net/~dhis2-devs<https://launchpad.net/%7Edhis2-devs>
>> Post to     : dhis2-devs@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe :
>> https://launchpad.net/~dhis2-devs<https://launchpad.net/%7Edhis2-devs>
>> More help   : https://help.launchpad.net/ListHelp
>>
>>
>

-- 
Sent from my mobile device

================================
Tran Thanh Tri
  HISP Viet Nam
  Cell phone: +84903670967
  Website: http://tringuyenvn.com
================================



Follow ups

References