在我的國家,我們使用11位數字作爲國內ID。哪種選擇最好用Java來表示它們,long或String(或者如果更合適的話,還有其他選項)?如何在Java中表示大數字ID?
國家ID將不受任何算術計算,但如果我們使用字符串,它需要檢查,如果它是數字。在這兩個選項,他們需要對一些規則,如進行檢查:
- 不會與零
- 正好11位
- 一些算法像(第一位數+最後一位數字)開始/ 10等於第三個數字等
此外,他們將用於REST API調用,所以可能有很多涉及他們的請求(序列化 - 反序列化 - 驗證等)。
**關於項目符號3的澄清: 算術計算的意思是,不會有像(id * 2/3)+ 10等等。算法只是一組規則來檢查用戶輸入每次都要求政府網站服務。
你可以專注你的問題嗎? – Abdelhak
無論什麼選擇最適合您的需求哼 –
我會在這種情況下使用字符串,原因是我可以很容易地使用Apache公共庫驗證如果字符串是數字或不是和檢查字符串的第一個數字是否爲零等等。 – Raf