首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在java中,我们应该使用什么原语或者什么类型来表示电话号码?

在java中,我们应该使用什么原语或者什么类型来表示电话号码?
EN

Stack Overflow用户
提问于 2009-06-12 03:16:21
回答 11查看 3.5K关注 0票数 4

在java中,什么类型可以包含像2023209999这样的数字?您认为使用字符串类型来表示电话号码是个好主意吗?

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2009-06-12 03:23:04

使用字符串是一个非常好的想法。请记住,OOP的要点是不同类型的数据具有不同的使用模式。让我们来看一下电话号码模式。

  • 我们是否添加电话号码或对其执行其他运算?
  • 我们是否根据长度拆分它,匹配它的一部分,还是替换它的一部分?

第一个问题的答案是否定的。所以我们不会像操纵数字那样去操纵它们。第二个问题的答案是肯定的,所以我们像处理字符串一样处理它们。

现在,这里的许多人都在倡导让手机本身成为一个类。在这方面有优点,但我正在解决更紧迫的问题,即如何存储电话号码,这是无论电话是不是类都需要做的事情。将数据存储为数字的phone类不太适合。

票数 28
EN

Stack Overflow用户

发布于 2009-06-12 03:23:32

我会编写一个PhoneNumber类,它使用字符串作为底层存储,并添加了验证/良好的格式化功能。

票数 9
EN

Stack Overflow用户

发布于 2009-06-12 03:26:22

我至少会说一个字符串,但就我个人而言,我会创建一个PhoneNumber对象。这是一种可以提供额外方法的东西,例如:

代码语言:javascript
复制
 boolean isValid();

 PhoneNumberUtils.getCountry(PhoneNumber number);
 PhoneNumberUtils.getState(PhoneNumber number);

...or之类的。我正在考虑的一件事就是让人们输入电话号码,然后让系统学习剩下的部分。我不喜欢输入系统可以确定的数据。这只是我的偏好。

在更简单的层面上,只需将字符串封装在PhoneNumber对象中就可以给您的大脑一个句柄……在一周左右的时间里,当你的大脑在想“这种电话号码方法应该去哪里?”时,你可能会发现自己有了一个快速的答案。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/984817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档