Cách sử dụng parseInt trong Java

Phương thức parseInt trong Java giúp chuyển đổi dữ liệu sang kiểu Int rất dễ dàng. Hôm nay mình sẽ hướng dẫn bạn sử dụng nó một cách kỹ càng nhất.

Khi làm việc với Java, đặc biệt là khi làm việc với các kiểu dữ liệu, không phải lúc nào dữ liệu ta nhận được cũng đúng định dạng mà ta mong muốn.

Đôi khi, việc khác kiểu gây ra rất nhiều khó khăn cho việc xử lý và ta không thể ép buộc người dùng phải trả về cho đúng kiểu dữ liệu chúng ta cần.

Vì thế, Integer.parseInt() sinh ra để giải quyết vấn đề này cho bạn.

1. Phương thức parseInt trong Java là gì? Khi nào cần sử dụng đến nó?

Phương thức parseInt trong Java

Phương thức parseInt trong Java

Phương thức parseInt() là một phương thức của lớp Integer trong gói java.lang được sử dụng để chuyển String sang Int trong Java.

Cách chuyển đổi được phân biệt tùy thuộc vào tham số của nó.

Thông thường có 2 biến thể cơ bản được sử dụng nhiều nhất là:

  • parseInt(String string, int radix)

String thành Integer là một công cụ cơ bản, nhưng bạn cần phải nắm vững nó.

Bởi vì, trong quá trình học và làm việc với Java, bạn sẽ gặp rất nhiều trường hợp phải chuyển đổi từ đối tượng String sang kiểu dữ liệu khác.

> Tham khảo: TỰ HỌC JAVA

Phương thức Integer.parseInt là một API Java rất thuận tiện để chuyển đổi đầu vào của người dùng ở định dạng Chuỗi thành một loại đối tượng mạnh hơn, trong trường hợp này là Integer.Mặc dù việc quy đổi đối tượngthànhlà một công cụ cơ bản, nhưng bạn cần phải nắm vững nó. Bởi vì, trong quy trình học và thao tác với Java, bạn sẽ gặp rất nhiều trường hợp phải quy đổi từ đối tượng người dùng String sang kiểu tài liệu khác. Phương thứclà một API Java rất thuận tiện để quy đổi nguồn vào của người dùng ở định dạng Chuỗi thành một loại đối tượng người tiêu dùng mạnh hơn, trong trường hợp này là Integer .

2. Hướng dẫn sử dụng phương thức parseInt trong Java

Như trong phần giới thiệu trên, parseInt() có hai biến thể cơ bản, cả hai phương thức đều chuyển đổi chuỗi thành số nguyên tương đương.

Sự khác biệt duy nhất là của tham số radix.

Phương thức đầu tiên có thể được coi là tương đương với phương thức thứ hai nếu radix = 10 (Số thập phân).

Trong đó:

  • string: Một chuỗi cần được chuyển đổi thành số nguyên. Nó cũng có thể có ký tự đầu tiên là dấu trừ - hoặc dấu cộng + để biểu thị dấu của số.

  • radix: Quyết định chuỗi sẽ được chuyển sang cơ số nào.

Trong quy trình thao tác với hai biến thể trên, bạn cần quan tâm một số ít điểm để tránh xảy ra ngoại lệ :

  • Chuỗi là null hoặc có độ dài bằng 0.

  • Giá trị được đại diện bởi chuỗi không phải là giá trị của kiểu int

  • Cụ thể cho biến thể parseInt (String string, int radix):

+ Cơ số radix nhỏ hơn Character.MIN_RADIX hoặc lớn hơn Character.MAX_RADIX

+ Bất kỳ ký tự nào của chuỗi không phải là một chữ số của cơ số được chỉ định, ngoại trừ ký tự đầu tiên có thể là dấu trừ - hoặc dấu cộng + với điều kiện là chuỗi dài có chiều dài lớn hơn 1.

Nào, chúng ta hãy bắt đầu tìm hiểu về parseInt() trong Java thông qua một số ví dụ nhỏ.

Ví dụ 1: Thực hiện chuyển đổi chuỗi sang số như trong phần code bên dưới.


public class ParseIntExample {

  public static void main(String args[]) {

    int a = Integer.parseInt(” 99 “);

    int b = Integer.parseInt(” + 99 “);

    int c = Integer.parseInt(” – 99 “);

    / / Chuyển sang cơ số 18

    int d = Integer.parseInt(” 99 “, 18);

    / / Chuyển sang cơ số 33

    int e = Integer.parseInt(” ahihi “, 33);

    System.out.println(a);

    System.out.println(b);

    System.out.println(c);

    System.out.println(d);

    System.out.println(e);

}

}
 

Kết quả :


99
99
-99
171
12490320
 

> Nhân tiện đây, có thể bạn quan tâm: Top IDE Java tốt nhất

Nếu có, hãy đọc báo lỗi và quay lại phần lý thuyết bên trên để hiểu rõ tại sao nhé.

Và lưu ý, tham số radix quyết định chuỗi chuyển sang cơ số nào. Bạn có thể xem thêm giới thiệu danh sách cơ số trên Wiki.Cũng trong ví dụ trên, bạn thử đổi khác những giá trị chuỗi bắt đầu sang những định dạng khác để xem IDE có báo lỗi hay không ? Nếu có, hãy đọc báo lỗi và quay lại phần triết lý bên trên để hiểu rõ tại sao nhé. Và quan tâm, tham số radix quyết định hành động chuỗi chuyển sang cơ số nào. Bạn hoàn toàn có thể xem thêm ra mắt list cơ số trên

Ví dụ 2: Chuyển đổi một chuỗi đầu vào không đúng định dạng chuỗi số.

try catch trong JavaTrường hợp này tất cả chúng ta hoàn toàn có thể sử dụngđể hiện thị thông tin ra màn hình hiển thị .


public class ParseIntWithTryCatch {

    public static void main(String[] args) {

        String number = ” 99AA “;

        try {

            int result = Integer.parseInt(number);

            System.out.println(result);

        } catch (NumberFormatException e) {

            System.err.println(” Không thể chuyển : ” + number + ” thành kiểu int “);

}

}

}
 

Ví dụ 3: Cách chuyển đổi chuỗi sang số trong dự án thực tế

Trong ví dụ 2 có vẻ phần chuỗi đổi được nâng cấp một chút, nhưng nó chưa thật sự chuyên nghiệp và chưa đủ tầm với để ứng dụng vào dự án thực tế.

Để đạt tầm, hãy xem ví dụ sau:


public class BestParseInt {

    public static void main(String[] args) {

        String number = ” 379 “;

        if (isDigit(number)) {

            System.out.println(Integer.parseInt(number));

        } else {

            System.out.println(” Vui lòng kiểm tra chuỗi hợp lệ [ 0-9 ] “);

}
}

    public static boolean isDigit(String input) {

        / / null hoặc length < 0 -> false .

        if (input == null || input.length() < 0)

            return false;

        / / empty -> false

        input = 

input

.trim();

        if (” “.equals(input))

            return false;

        if (input.startsWith(” – “)) {

            / / nếu là số âm thì cắt ký tự tiên phong

            return input.substring(1).matches(” [ 0-9 ] * “);

        } else {

            / / nếu là số dương cũng thực thi kiểm tra qua

            return input.matches(” [ 0-9 ] * “);

}
}

}
 

Mình đã hướng dẫn các bạn sử dụng phương thức parseInt trong Java thông qua ba ví dụ từ cơ bản đến nâng cao.

Tuy nhiên nó chưa phải là tất cả, trong thực tế còn rất nhiều trường hợp phức tạp đòi hỏi sự vận dụng lắt léo hơn rất nhiều.

Trong Java, parseInt() không phải là phương thức duy nhất để chuyển đổi dữ liệu, tuỳ trường hợp mà ta có cách lựa chọn sao cho hợp lý nhất có thể.

3. Một số phương thức chuyển đổi dữ liệu khác

Như đã nói, parseInt() không phải là lựa chọn duy nhất.

Bởi trong Java còn nhiều phương thức chuyển đổi dữ liệu khác cũng mạnh mẽ và hiệu năng không hề kém.

  • valueOf(): Phương thức valueOf trong Java cũng phân tích cú pháp chuỗi như parseInt() nhưng trả về một đối tượng Integer.


public class ValueOf {

    public static void main(String args[]) {

        int a = Integer.valueOf(” 99 “);

        int b = Integer.valueOf(” + 99 “);

        int c = Integer.valueOf(” – 99 “);

        int d = Integer.valueOf(” 99 “, 16);

        int e = Integer.valueOf(” hanoi “, 29);

        System.out.println(a);

        System.out.println(b);

        System.out.println(c);

        System.out.println(d);

        System.out.println(e);

}

}
 

Bạn kiểm tra xem hiệu quả có giống như ví dụ 1 không ? Nhưng đừng hiểu nhầm về hiệu quả đấy .

  • parseLong(String string): Phân tích cú pháp chuỗi số string và trả về số thập phân kiểu long.


public class ParseLong {

    public static void main(String[] args) {

        long a = Long.parseLong(” 1452 “);

        long b = Long.parseLong(” 26 “);

        long c = Long.parseLong(” 54 “);

        long m = a + b + c;

        System.out.print(” Kết quả = ” + m);

}

}
 

  • parseDouble(String string): Chuyển từ String sang Double trong Java


public class ParseDouble {

    public static void main(String[] args) {

        String str = ” 100 “;

        double val = Double.parseDouble(str);

        System.out.println(” Kết quả = ” + val);

}

}
 

Vấn đề nằm ở chỗ nếu bạn không làm việc nhiều với việc chuyển đổi dữ liệu, không code nhiều cũng như không quen với việc fix-bug thường xuyên thì khó nắm vững các phương thức – từ chuyện phân biệt sự khác nhau giữa chúng đến việc sử dụng.

Các phương thức chuyển đổi này sẽ hỗ trợ đắc lực khi bạn muốn phân tích – bóc tách – kiểm tra – chuyển đổi chuỗi ở các dự án thực tế, vì thế đừng bỏ qua bất kỳ kiến thức cơ bản nào mà bạn cho là sẽ không dùng đến.

Hi vọng qua bài viết này bạn đã thực sự nắm rõ được phương thức parseInt trong Java để vận dụng nó trong tương lai.

> Bạn đang tìm hiểu về Java và muốn học Java chuyên nghiệp hơn, Nhanh hơn để đi làm sớm hơn? Tham gia ngay KHÓA HỌC LẬP TRÌNH JAVANhìn chung, việc quy đổi qua lại giữa hầu hết những kiểu tài liệu đều đã được Java tương hỗ sẵn những phương pháp. Vấn đề nằm ở chỗ nếu bạn không thao tác nhiều với việc quy đổi tài liệu, không code nhiều cũng như không quen với việc fix-bug liên tục thì khó nắm vững những phương pháp – từ chuyện phân biệt sự khác nhau giữa chúng đến việc sử dụng. Các phương pháp quy đổi này sẽ tương hỗ đắc lực khi bạn muốn nghiên cứu và phân tích – bóc tách – kiểm tra – quy đổi chuỗi ở những dự án Bất Động Sản thực tiễn, vì vậy đừng bỏ lỡ bất kể kiến thức và kỹ năng cơ bản nào mà bạn cho là sẽ không dùng đến. Hi vọng qua bài viết này bạn đã thực sự nắm rõ đượcđể vận dụng nó trong tương lai .

HỌC VIỆN ĐÀO TẠO CNTT NIIT – ICT HÀ NỘI

Học Lập trình chất lượng cao ( Since 2002 ). Học làm Lập trình viên. Hành động ngay !

Đc : Tầng 3, 25T2, N05, Nguyễn Thị Thập, CG cầu giấy, Thành Phố Hà Nội

SĐT : 02435574074 – 0914939543

E-Mail : [email protected]

Fanpage: https://facebook.com/NIIT.ICT/

# niit # niithanoi # niiticthanoi # hoclaptrinh # khoahoclaptrinh # hoclaptrinhjava # hoclaptrinhphp # python # java # php