Computer >> Máy Tính >  >> Lập trình >> Java

Java - Cách chuyển đổi chuỗi thành Int với các ví dụ

Làm thế nào để chuyển đổi một chuỗi thành một Int trong Java? Nếu Chuỗi chỉ chứa các số, thì cách tốt nhất để chuyển đổi Chuỗi thành Int là sử dụng Integer.parseInt() hoặc Integer.valueOf() .

Nếu Chuỗi chứa cả số và ký tự, thì chúng ta phải sử dụng biểu thức chính quy để trích xuất các số từ chuỗi và sau đó chuyển đổi Chuỗi kết quả thành Int.

Một điều cần lưu ý là parseInt(String) trả về một int nguyên thủy, trong khi valueOf(String) trả về một đối tượng Integer ().

Chuyển đổi chuỗi thành Int trong Java

Sử dụng Integer.parseInt ()

public class ConvertStringToInt {

    public static void main(String[] args) {
        String stringNumber = "1234";
        int number = convertStringToInt(stringNumber);
        System.out.println(number);
    }

    private static int convertStringToInt(String number) {
        return Integer.parseInt(number);
    }
}

Đầu ra:

1234

Sử dụng Integer.valueOf ()

public class ConvertStringToInt {

    public static void main(String[] args) {
        String stringNumber = "1234";
        int number = convertStringToInt(stringNumber);
        System.out.println(number);
    }

    private static int convertStringToInt(String number) {
        return Integer.valueOf(number);
    }
}

Đầu ra:

1234

Điều quan trọng cần lưu ý là nếu Chuỗi chứa các ký tự và số như “1234abcd” thì trình phân tích cú pháp Số nguyên sẽ ném NumberFormatException như đã nêu trong Javadoc.

Có liên quan:

  • Tại sao lại ghi đè toString () trong Java
  • Cách đảo ngược các chuỗi trong Java
  • Cách trích xuất các số từ một chuỗi
  • Cách so sánh các chuỗi trong Java

Sử dụng Integer.decode ()

Chúng tôi cũng có thể sử dụng Integer.decode() . Một tính năng thú vị của decode là nó có thể chuyển đổi sang các cơ sở khác, chẳng hạn như base 10 , base 16 , v.v.…

public class ConvertStringToInt {

    public static void main(String[] args) {
        String stringNumber = "1234";
        int number = convertStringToInt(stringNumber);
        System.out.println(number);
    }

    private static int convertStringToInt(String number) {
        return Integer.decode(number);
    }
}

Đầu ra:

1234

Apache Commons NumberUtils Class

Cuối cùng nhưng không kém phần quan trọng, chúng ta có thể sử dụng lớp Apache Commons NumberUtils để chuyển đổi String thành Int trong Java.

Tất cả những gì bạn cần làm là có phần phụ thuộc sau trong pom.xml của mình tệp

<dependency>
    <groupId>org.apache.commons</groupId>
    <artifactId>commons-lang3</artifactId>
    <version>3.9</version>
</dependency>

Sau đó, bạn có thể sử dụng:

import org.apache.commons.lang3.math.NumberUtils;

public class ConvertStringToInt {

    public static void main(String[] args) {
        String stringNumber = "1234";
        int number = convertStringToInt(stringNumber);
        System.out.println(number);
    }

    private static int convertStringToInt(String number) {
        return NumberUtils.toInt(number);
    }
}

Đầu ra:

1234