搜尋
首頁Javajava教程Java 的國際化

以下文章提供了 Java 國際化的概述。國際化是創建 Web 應用程式的過程,使其自動支援多個國家/地區、語言和貨幣,而不需要對應用程式進行任何更改。它也被稱為 I18N,因為字母 I 和 N 之間有 18 個字元。全球市場是當今設計軟體或網站時的重要因素。隨著全球市場軟體應用程式的不斷擴展,公司必須創建能夠與當地區域和語言的用戶互動的產品。

開始您的免費軟體開發課程

網頁開發、程式語言、軟體測試及其他

為國際市場開發軟體的開發人員應該了解每種文化的習俗和差異。語言、標點符號、貨幣、日期、時間、數字和時區都是差異的例子。本地化也縮寫為 I10N,因為首字母“L”和最後一個字母“N,”之間有十個字元。本地化是向應用程式添加特定於區域設定的文字和元件的過程,以便可以根據給定的語言和地點進行自訂。

Java 國際化語法

以下類別可用於實現國際化:

  • 語言環境
  • 數位格式
  • 日期格式

1.語言環境

Locale 物件可用來表示地理位置或語言。 java.util 套件包含一個 Locale 類別。

Locale 類別的建構子:

Locale l = new Locale(String language);
Locale l = new Locale(String language, String country);

Locale 類別的常數:

一些 Locale 常數已在 Locale 類別中宣告。

這些常數可以直接使用,以下列出幾個常數:

  • 區域設定。英國
  • 語言環境.義大利
  • Locale.US

Locale 類別的功能:

  • pubic static Locale getDefault():此方法用於取得目前語言環境的實例。
  • public static Locale[] getAvailableLocales(): 此方法用於取得目前語言環境的陣列。
  • public String getDisplayLanguage(Locale l):此方法用於取得傳入的 locale 物件的語言名稱。
  • public String getDisplayVariant(Locale l): 此方法用於取得傳入的 locale 物件的變體程式碼。
  • public String getDisplayCountry(Locale l):此方法用於取得傳入的 locale 物件的國家名稱。
  • public static getISO3Language(): 此方法用於取得當前語言環境的語言代碼的三字母縮寫。
  • public static getISO3Country(): 此方法用於取得目前語言環境國家/地區的三個字母縮寫。

2.數位格式

我們可以使用 NumberFormat 類別根據特定區域設定格式化數字。 NumberFormat 類別存在於 java.Text 套件中,是一個抽象類,因此我們無法使用其建構子建立物件。

Locale 類別的功能:

  • public static NumberFormat getInstance():此方法用於取得預設Locale的物件。
  • public static NumberFormat getInstance(Locale l): 此方法用於取得傳入的 Locale 物件的物件。
  • public static NumberFormat getCurrencyInstance(): 此方法用於取得預設 Locale 的物件以特定貨幣顯示。
  • 公用靜態格式(long l):此方法用於將傳遞的數字轉換為區域設定物件。

3.日期格式

我們將日期格式國際化,因為日期格式因地點而異。我們可以使用 DateFromat 類別根據給定的區域設定格式化日期。 DateFormat是java.text套件中的一個抽象類別。

Locale 類別的常數:

一些 DateFormat 常數已在 DateFormat 類別中宣告。

這些常數可以直接使用,下面列出了一些常數:

  • 日期格式.LONG
  • 日期格式.MINUTE_FIELD
  • 日期格式.MINUTE_FIELD

DateFormat 類別的函數:

  • final String format(Date date): This method converts and returns the specified Date object into a string.
  • static final DateFormat getInstance(): This method is used to gets a date-time formatter with a short formatting style for date and time.
  • static Locale[] getAvailableLocales(): This method is used to gets an array of present locales.
  • static final DateFormat getTimeInstance(): This method is used to gets time formatter with default formatting style for the default locale.
  • static final DateFormat getTimeInstance(int style): This method is used to gets time formatter with the specified formatting style for the default locale.
  • static final DateFormat getTimeInstance(int style, Locale locale): This method is used to gets time formatter with the specified formatting style for the given locale.
  • TimeZone getTimeZone(): This method is used to gets an object of TimeZone for this DateFormat instance.
  • static final DateFormat getDateInstance(): This method is used to gets date formatter with default formatting style for the default locale.
  • static final DateFormat getDateInstance(int style): This method is used to gets date formatter with the specified formatting style for the default locale.
  • static final DateFormat getDateInstance(int style, Locale locale): This method is used to gets date formatter with the specified formatting style for the given locale.
  • static final DateFormat getDateTimeInstance(): This method is used to gets date or time formatter with default formatting style for the default locale.
  • NumberFormat getNumberFormat(): This method is used to gets an object of NumberFormat for this DateFormat instance.
  • Calendar getCalendar(): This method is used to gets an object of the Calendar for this DateFormat instance.

Examples of Internationalization in Java

Given below are the examples mentioned:

Example #1

Example for the internationalization in Java to create different country locale.

Code:

// The program can be tested in Eclipse IDE, JAVA 11
package jex;
import java.util.Locale;
public class ex
{
public static void main(String[] args) {
Locale[] locales = { new Locale("en", "US"), new Locale("it", "IT"), new Locale("es", "ES") };
for (int l=0; l
<p><strong>Output:</strong></p>
<p><img  src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/172500369926024.jpg?x-oss-process=image/resize,p_40" class="lazy" alt="Java 的國際化" ></p>
<p>As in the above program, the Locale class objects are created and store in the array. Next, used the for loop to iterate each locale object and display its name and its language, as we can see in the above output.</p>
<h4 id="Example">Example #2</h4>
<p>Example for the internationalization in Java to show the number in different formats for the different countries.</p>
<p><strong>Code:</strong></p>
<pre class="brush:php;toolbar:false">// The program can be tested in Eclipse IDE, JAVA 11
package jex;
import java.util.*;
import java.text.*;
public class ex
{
public static void main (String[]args)
{
double n = 45273.8956;
NumberFormat f1 = NumberFormat.getInstance (Locale.US);
NumberFormat f2 = NumberFormat.getInstance (Locale.ITALY);
NumberFormat f3 = NumberFormat.getInstance (Locale.CHINA);
System.out.println ("The number format in US is :" + f1.format (n));
System.out.println ("The number format in ITALY is:" + f2.format (n));
System.out.println ("The number format in CHINA is :" + f3.format (n));
}
}

Output:

Java 的國際化

As in the above program, three different NumberFormat class objects are created using the Locale class. Next, using the format() method of the NumberFormat class, the given number is printing in the specific format of the country, as we can see in the above output.

Example #3

Example for the internationalization in Java to show the date in different formats for the different countries.

Code:

// The program can be tested in Eclipse IDE, JAVA 11
package jex;
import java.text.DateFormat;
import java.util.Date;
import java.util.Locale;
public class ex
{
public static void main (String[]args)
{
DateFormat d1 = DateFormat.getDateInstance (0, Locale.US);
DateFormat d2 = DateFormat.getDateInstance (0, Locale.ITALY);
DateFormat d3 = DateFormat.getDateInstance (0, Locale.CHINA);
System.out.println ("The date format in US is :" + d1.format (new Date ()));
System.out.println ("The date format in ITALY is : " + d2.format (new Date ()));
System.out.println ("The date format in CHINA is : " + d3.format (new Date ()));
}
}

Output:

Java 的國際化

As in the above program, three different DateFormat class objects are created using the Locale class. Next, using the format() method of the DateFormat class, the return date of the Date() method is printing in the specific format of the country, as we can see in the above output.

Conclusion

Internationalization is also called I18N because there are 18 characters between the letters I and N. It is the process of creating web applications in such a way that they automatically support several countries, languages, and currencies without requiring any changes to the application.

以上是Java 的國際化的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
如何將Maven或Gradle用於高級Java項目管理,構建自動化和依賴性解決方案?如何將Maven或Gradle用於高級Java項目管理,構建自動化和依賴性解決方案?Mar 17, 2025 pm 05:46 PM

本文討論了使用Maven和Gradle進行Java項目管理,構建自動化和依賴性解決方案,以比較其方法和優化策略。

如何使用適當的版本控制和依賴項管理創建和使用自定義Java庫(JAR文件)?如何使用適當的版本控制和依賴項管理創建和使用自定義Java庫(JAR文件)?Mar 17, 2025 pm 05:45 PM

本文使用Maven和Gradle之類的工具討論了具有適當的版本控制和依賴關係管理的自定義Java庫(JAR文件)的創建和使用。

如何使用咖啡因或Guava Cache等庫在Java應用程序中實現多層緩存?如何使用咖啡因或Guava Cache等庫在Java應用程序中實現多層緩存?Mar 17, 2025 pm 05:44 PM

本文討論了使用咖啡因和Guava緩存在Java中實施多層緩存以提高應用程序性能。它涵蓋設置,集成和績效優勢,以及配置和驅逐政策管理最佳PRA

如何將JPA(Java持久性API)用於具有高級功能(例如緩存和懶惰加載)的對象相關映射?如何將JPA(Java持久性API)用於具有高級功能(例如緩存和懶惰加載)的對象相關映射?Mar 17, 2025 pm 05:43 PM

本文討論了使用JPA進行對象相關映射,並具有高級功能,例如緩存和懶惰加載。它涵蓋了設置,實體映射和優化性能的最佳實踐,同時突出潛在的陷阱。[159個字符]

Java的類負載機制如何起作用,包括不同的類載荷及其委託模型?Java的類負載機制如何起作用,包括不同的類載荷及其委託模型?Mar 17, 2025 pm 05:35 PM

Java的類上載涉及使用帶有引導,擴展程序和應用程序類負載器的分層系統加載,鏈接和初始化類。父代授權模型確保首先加載核心類別,從而影響自定義類LOA

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
4 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具