Java 代表电话号码的正确方法是什么?
我在一个应用程序中无法代表手机号码。
我想知道是否有一个Integer类,它将允许您存储从0417254482开始的数字。也许使用字符串更合适?目前,当我尝试使用整数形式表示电话号码时,我似乎存储的是随机数而不是我打算存储的数字。
回答:
使用String
。除了其他以外,如果使用整数,则将无法存储前导零。你绝对不应该使用int
(太小)float
或double
(数据丢失的风险太大-参见下文);long
或BigInteger
可能是适当的(除了前导零问题),但坦率地说,我会选择String
。这样,你还可以存储用户输入的任何破折号或空格,以便更轻松地记住数字。
就上述“数据丢失”而言float,double- float
绝对没有足够的精度;double
可如果你的工作很快乐,你永远不会需要超过16位(比你得到一对夫妇较少long
),但你必须非常,非常小心,任何地方,你将从值回double
给string
,你得到了确切的值。许多格式转换将为你提供近似值,该精度可能精确到例如10个有效数字-但你需要一个精确的整数。基本上,将浮点数用作电话号码从根本上来说是个坏主意。如果必须使用固定宽度的数字类型,请使用long
,但是最好完全避免使用。
以上是 Java 代表电话号码的正确方法是什么? 的全部内容, 来源链接: utcz.com/qa/399493.html