Sería mejor almacenarlo como un número entero y mostrarlo tal como lo describió en tiempo de ejecución. Cada idioma tiene su propia forma de rellenar ceros: para Ruby puede usar String # rjust . Este método rellena una cadena (justificada a la derecha) para que se convierta en una longitud determinada, utilizando un carácter de relleno dado.
str.rjust(integer, padstr=' ') → new_str
Si integer
es mayor que la longitud de str
, devuelve una nueva String
longitud integer
con la str
derecha justificada y rellenada con padstr
; de lo contrario, vuelve str
.
some_int = 5
some_int.to_s.rjust(2, '0') # => '05'
some_int.to_s.rjust(5, '0') # => '00005'
another_int = 150
another_int.to_s.rjust(2, '0') # => '150'
another_int.to_s.rjust(3, '0') # => '150'
another_int.to_s.rjust(5, '0') # => '00150'
Me gusta el operador%, a pesar de que parece haber perdido popularidad ...
fuente
Otra forma de lograr esto es rellenar su número entero en tiempo de visualización, usando sprintf:
fuente
Prueba esto y puedes cambiarlos para que coincidan
fuente
if num < 0 && num > -1
es exactamente ?