Java 中的電話號碼資料型別

Mohammad Irfan 2023年10月12日
  1. 在 Java 中儲存電話號碼的資料型別
  2. 在 Java 中儲存電話號碼的字串資料型別
  3. 在實體類 Java 中儲存電話號碼
Java 中的電話號碼資料型別

本教程介紹了在 Java 中儲存電話號碼的最佳資料型別,以及如何在 Java 實體中使用它。

電話號碼是一個數值並且只包含數字,所以一開始你可能會想到長型來儲存它,但最好的資料型別是字串,因為它會破壞格式,刪除前面的 0,並且其他不受歡迎的事情。

在處理電話號碼時,我們必須首先了解從使用者那裡獲得的輸入格式。例如,國家程式碼+ 區號+ 電話號碼的格式需要 String 型別,只取電話號碼就可以用 long 型別儲存。

讓我們通過一些 Java 和 Hibernate 示例來理解。

在 Java 中儲存電話號碼的資料型別

在此示例中,我們使用 long 型別在 Java 中儲存數字(電話號碼)值。數值在範圍以內就好了;否則,編譯器會丟擲一系列錯誤。如果電話號碼包含非數字數字(例如 +)則不好。因此,我們必須在接受使用者輸入之前瞭解輸入格式。請參閱下面的示例。

public class SimpleTesting {
  public static void main(String args[]) {
    Student student = new Student(10, "Rohan", 1245232542);
    System.out.println("id = " + student.getId());
    System.out.println("Name = " + student.getName());
    System.out.println("Phone Number =  " + student.getPhoneNumber());

    Student student2 = new Student(11, "Sohan", +1245232542);
    System.out.println("id = " + student2.getId());
    System.out.println("Name = " + student2.getName());
    System.out.println("Phone Number =  " + student2.getPhoneNumber());
  }
}
class Student {
  int id;
  String name;
  long phoneNumber;

  public Student(int id, String name, long phoneNumber) {
    super();
    this.id = id;
    this.name = name;
    this.phoneNumber = phoneNumber;
  }
  public int getId() {
    return id;
  }
  public void setId(int id) {
    this.id = id;
  }
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public long getPhoneNumber() {
    return phoneNumber;
  }
  public void setPhoneNumber(long phoneNumber) {
    this.phoneNumber = phoneNumber;
  }
}

輸出:

id = 10
Name = Rohan
Phone Number =  1245232542
id = 11
Name = Sohan
Phone Number =  1245232542

在 Java 中儲存電話號碼的字串資料型別

如果我們在上面的示例中使用帶有電話號碼的 + 符號,它不起作用,並且 Java 編譯器不支援。Java 中最好使用 String 型別來儲存電話號碼來解決這個問題。現在,我們以國家程式碼+ 區號+ 電話號碼格式儲存電話號碼。請參閱下面的示例。

public class SimpleTesting {
  public static void main(String args[]) {
    Student student = new Student(10, "Rohan", "1245232542");
    System.out.println("id = " + student.getId());
    System.out.println("Name = " + student.getName());
    System.out.println("Phone Number =  " + student.getPhoneNumber());

    Student student2 = new Student(11, "Sohan", "+911245232542");
    System.out.println("id = " + student2.getId());
    System.out.println("Name = " + student2.getName());
    System.out.println("Phone Number =  " + student2.getPhoneNumber());
  }
}
class Student {
  int id;
  String name;
  String phoneNumber;

  public Student(int id, String name, String phoneNumber) {
    super();
    this.id = id;
    this.name = name;
    this.phoneNumber = phoneNumber;
  }
  public int getId() {
    return id;
  }
  public void setId(int id) {
    this.id = id;
  }
  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }
  public String getPhoneNumber() {
    return phoneNumber;
  }
  public void setPhoneNumber(String phoneNumber) {
    this.phoneNumber = phoneNumber;
  }
}

輸出:

id = 10
Name = Rohan
Phone Number =  1245232542
id = 11
Name = Sohan
Phone Number =  +911245232542

在實體類 Java 中儲存電話號碼

如果你正在使用 hibernate 並建立了一個具有一個欄位(如電話號碼)的實體,你應該將其宣告為一個字串來儲存具有非數字數字的電話號碼。

在 hibernate 中,這個實體類對映到 MySQL 或 Oracle 資料庫中的表,並使用 varchar 型別來儲存電話號碼。這是一個高階概念,如果你不熟悉 ORM 或 hibernate 概念,請跳過此示例。

package com.example.myspring;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;

@Entity // This tells Hibernate to make a table
public class User {
  @Id @GeneratedValue(strategy = GenerationType.AUTO) private Integer id;
  private String name;
  private String email;
  private String phoneNumber; // phone number

  public Integer getId() {
    return id;
  }
  public void setId(Integer id) {
    this.id = id;
  }

  public String getName() {
    return name;
  }
  public void setName(String name) {
    this.name = name;
  }

  public String getEmail() {
    return email;
  }
  public void setEmail(String email) {
    this.email = email;
  }
  public String getPhoneNumber() {
    return phoneNumber;
  }

  public void setPhoneNumber(String phoneNumber) {
    this.phoneNumber = phoneNumber;
  }
}

相關文章 - Java Data Type