Chuyển đổi int thành string trong java bằng nhiều cách

Hướng dẫn này sẽ  giúp các bạn làm thế nào để chuyển đổi  Int thành String trong java bằng nhiều cách.Đây là một trong những trường hợp chuyển đổi kiểu dữ liệu phổ biến trong java.

Dưới đây là một số mã ví dụ tham khảo nhanh:

 Chuyển đổi sử dụng Integer.toString (int)

Lớp Integer có một phương thức trả về một đối tượng String ,phương thức truyền vào một số int,nếu truyền sai tham số thì ngay lập tức sẽ xảy ra ngoại lệ NumberFormatException . Sử dụng này là một giải pháp hiệu quả.

Cú pháp : 

public static String toString(int i)

Đối số được chuyển đổi và trở lại là một chuỗi.

Ví dụ : 

int number = -782;
String numberAsString = Integer.toString(number);

Mã này tương đương với :

String numberAsString = "-782";

Nếu bạn đang cố gắng và tìm kiếm các giải pháp, đây là một trong những cách phổ biến nhất khi chuyển đổi int thành String.

Chuyển đổi sử dụng String.valueOf (int)

Lớp String có một số phương thức mà có thể chuyển đổi các loại kiểu dữ liệu nguyên thủy .Điều này bao gồm các số nguyên (int):

Thí dụ

int number = -782;
String numberAsString = String.valueOf(number);

hay tương đương với :

String numberAsString = String.valueOf(-782);

Đây cũng là một giải pháp hiệu quả như các tùy chọn đầu tiên ở trên. Và bởi vì đây là đơn giản và hiệu quả, nó cũng là một phương pháp rất phổ biến để chuyển đổi int thành String.

 Chuyển đổi sử dụng Integer(int).toString()

Một phương thức khác là tạo ra một thể hiện của lớp Integer và sau đó gọi phương thức toString () Cách này có một chút ít hiệu quả hơn so với hai tùy chọn đầu tiên trình bày ở trên. Lý do một thể hiện mới của Integer được tạo ra trước khi chuyển đổi được thực hiện.

Cú pháp:

int number = -782;
Integer intInstance = new Integer(number);      
String numberAsString = intInstance.toString();

cách sử dụng:

int number = -782;
String numberAsString = new Integer(number).toString();

kết quả tương đương với:

String numberAsString = new Integer(-782).toString();

Chuyển đổi sử dụng String.format()

String.format () là một lựa chọn mới có thể được sử dụng để chuyển đổi  từ int sang string. Nó được giới thiệu lần đầu trong Java 5 (JDK1.5) và có nhiều tính năng mới mẻ.

Cú pháp :

public static String format(String format, Object... args)

Có rất nhiều phương thức để sử u tuy nhiên đơn giản nhất vẫn là sự lựa chọn của phương thức này gồm 2 tham số.

Ví dụ :

int number = -782;
String numberAsString = String.format ("%d", number);

Nếu bạn đang sử dụng Java 5 hoặc cao hơn,cách này là sự  chọn rất đơn giản để chuyển đổi int thành String trong java.

 Chuyển đổi sử dụng DecimalFormat

Lớp java.text.DecimalFormat là một lớp có định dạng một số thành một chuỗi.
Ví dụ :

int number = 12345;
DecimalFormat decimalFormat = new DecimalFormat("#");
String numberAsString = decimalFormat.format(number);
System.out.println(numberAsString);

Kết quả : 

12345

Đây là một ví dụ trước khi chuyển đổi int thành String thì đã định sạng số theo ý muốn rồi mới thực hiện việc chuyển đổi.

int number = 12345;
DecimalFormat decimalFormat = new DecimalFormat("#,##0");
String numberAsString = decimalFormat.format(number);
System.out.println(numberAsString);

Kết quả : 

12,345

Đây là cách  yêu thích của tôi trong tất cả các cách trình bày trong bài này vì mức độ kiểm soát mà bạn có thể định dạng. Bạn có thể chỉ định số chữ số thập phân và dấu phẩy tách cho dễ đọc.

 Chuyển đổi sử dụng StringBuffer or StringBuilder

Ví dụ : 

int number = -782;
StringBuffer sb = new StringBuffer();
sb.append(number);
String numberAsString = sb.toString();

ví dụ về StringBuilder

int number = -782;
StringBuilder sb = new StringBuilder();
sb.append(number);
String numberAsString = sb.toString();

Ví dụ rút ngắn : 

String numberAsString = new StringBuffer().append(-782).toString();
String numberAsString = new StringBuilder().append(-782).toString();

Giải pháp

Cách này là một trong những cách nhanh nhất,dùng nối chuỗi để trở thành một chuỗi.

int number = - 782 ; String numberAsString = "" + number;

Đây cũng là cách khá hay để chuyển đổi int thành String.

 

x