VietTuts

Tự Học Lập Trình Online

  • Home
  • Java
  • Servlet
  • JSP
  • Struts2
  • Hibernate
  • Spring
  • MyBatis
  • Java WS
  • C
  • C++
  • C#
  • Python
  • PHP
  • Excel
  • VBA
  • Web
    • JavaScript
    • JQUERY
    • JSON
    • AJAX
    • CSS
    • HTML
    • HTML5
    • Node.js
    • Angular 7
  • SQL
    • MySQL
    • SQL Server
  • Misc
    • Eclipse
    • Phần mềm tiện ích
    • Cấu trúc DL&GT
    • Selenium Test
Java Cơ Bản Các Khái Niệm Java OOPs Java String

Các Tính Năng Mới Trong Java

Giới thiệu về các tính năng mới trong java

Java 8

Biểu thức Lambda Ví dụ biểu thức Lambda với forEach() Ví dụ biểu thức Lambda với Thread Ví dụ biểu thức Lambda với Comparator Ví dụ biểu thức Lambda với Filter Collection Data Toán tử dấu 2 chấm (::) StringJoiner forEach Base64 Encode và Decode Stream trong java 8

Java 7

Binary Literal String trong mệnh đề Switch Catch nhiều ngoại lệ Lệnh try-with-resources Suy luận tạo đối tượng Generic Chữ số Java với dấu gạch dưới Các cải tiến JDBC của Java 7

Java 4/5

Varargs trong Java Enum trong java For-Each trong java Static Import trong java Autoboxing và Unboxing trong java Annotation trong java Tùy chỉnh Annotation trong java Generics trong java
Xử Lý Ngoại Lệ Các Lớp Lồng Nhau Đa Luồng (Multithreading) Java AWT Java Swing Java I/O Ví Dụ Java I/O Lập Trình Mạng Với Java Java Date Chuyển Đối Kiểu Dữ Liệu Java Collections Java JDBC Bài Tập Java Có Lời Giải Câu Hỏi Phỏng Vấn Java
1 / 3
❮ ❯

Autoboxing và unboxing trong java


Static import trong java
Annotation trong java

Nội dung chính

  • Autoboxing và unboxing
    • Lợi thế của của Autoboxing và Unboxing
    • Ví dụ đơn giản về Autoboxing trong java
    • Ví dụ đơn giản về Unboxing trong java
  • Autoboxing và Unboxing với toán tử so sánh
  • Autoboxing và Unboxing với nạp chồng phương thức

Autoboxing và unboxing

Việc chuyển đổi tự động các kiểu dữ liệu nguyên thủy thành kiểu Wrapper tương đương của nó được gọi là hoạt động autoboxing (hay boxing) và ngược lại được gọi là unboxing. Đây là tính năng mới của Java 5. Vì vậy, lập trình java không cần phải viết mã chuyển đổi.


Lợi thế của của Autoboxing và Unboxing

Tiết kiệm code: Không cần chuyển đổi giữa các nguyên thủy và Wrappers theo cách thủ công.


Ví dụ đơn giản về Autoboxing trong java

package vn.viettuts.javafeatures;

public class BoxingExample1 {
    public static void main(String args[]) {
        int a = 50;
        Integer a2 = new Integer(a);// Boxing
        Integer a3 = 5;             // Boxing
        System.out.println(a2 + " " + a3);
    }
}

Kết quả:

50 5

Ví dụ đơn giản về Unboxing trong java

package vn.viettuts.javafeatures;

public class UnboxingExample1 {
    public static void main(String args[]) {
        Integer i = new Integer(50);
        int a = i; // unboxing
        System.out.println(a);
    }
}

Kết quả:

50


Autoboxing và Unboxing với toán tử so sánh

Unboxing có thể được thực hiện với các toán tử so sánh. Chúng ta hãy xem ví dụ về boxing với toán tử so sánh:

package vn.viettuts.javafeatures;

public class UnboxingExample2 {
    public static void main(String args[]) {
        Integer i = new Integer(50);
        if (i < 100) { // unboxing
            System.out.println(i);
        }
    }
}

Kết quả:

50

Autoboxing và Unboxing với nạp chồng phương thức

Ví dụ 1: widening (ép kiểu thu hẹp) và boxing, widening thắng boxing.

package vn.viettuts.javafeatures;

public class Boxing1 {
    static void m(int i) {
        System.out.println("int");
    }

    static void m(Integer i) {
        System.out.println("Integer");
    }

    public static void main(String args[]) {
        short s = 30;
        m(s);
    }
}

Kết quả:

int

Ví dụ 2: widening và varargs, widening thắng varargs.

package vn.viettuts.javafeatures;

public class Boxing2 {
    static void m(int... i) {
        System.out.println("int int");
    }

    static void m(Integer i1, Integer i2) {
        System.out.println("Integer...");
    }

    public static void main(String args[]) {
        short s1 = 30;
        short s2 = 40;
        m(s1, s2);
    }
}

Kết quả:

int int

Ví dụ 3: boxing thắng varargs

package vn.viettuts.javafeatures;

public class Boxing3 {
    static void m(Integer i) {
        System.out.println("Integer");
    }

    static void m(Integer... i) {
        System.out.println("Integer...");
    }

    public static void main(String args[]) {
        int a = 30;
        m(a);
    }
}

Kết quả:

Integer

Ví dụ 4: widening và boxing không được thực hiện:

package vn.viettuts.javafeatures;

public class Boxing4 {
    static void m(Integer l) {
        System.out.println("Integer");
    }

    public static void main(String args[]) {
        short a = 30;
        m(a);
    }
}

Kết quả:

Compile Time Error

Static import trong java
Annotation trong java

Recent Updates

Sắp Tết 2024 Rồi! - Còn bao nhiêu ngày nữa là đến tết 2024?Java Swing - Bài tập quản lý sinh viên trong javaLinkedList trong javaArrayList trong javaBài tập java có lời giảiSử dụng Javascript trong HTMLToán tử dấu 2 chấm (::) trong Java 8Lambda Expression - Biểu thức Lambda trong java 8Bài tập Java - Sắp xếp nhanh (Quick Sort) trong JavaBài tập Java - Sắp xếp chèn (Insertion Sort) trong JavaBài tập Java - Sắp xếp nổi bọt (Bubble Sort) trong JavaBài tập quản lý sinh viên trong JavaHashSet trong java

VietTuts on facebook

Học Lập Trình Online Miễn Phí - VietTuts.Vn
Danh Sách Bài Học

Học Java | Hibernate | Spring
Học Excel | Excel VBA
Học Servlet | JSP | Struts2
Học C | C++ | C#
Học Python
Học SQL

Bài Tập Có Lời Giải

Bài tập Java
Bài tập C
Bài tập C++
Bài tập C#
Bài tập Python
Ví dụ Excel VBA

Câu Hỏi Phỏng Vấn

201 câu hỏi phỏng vấn java
25 câu hỏi phỏng vấn servlet
75 câu hỏi phỏng vấn jsp
52 câu hỏi phỏng vấn Hibernate
70 câu hỏi phỏng vấn Spring
57 câu hỏi phỏng vấn SQL

Scroll back to top

Copyright © 2016 VietTuts.Vn all rights reserved. | Liên hệ | Chính sách - riêng tư | sitemap.html | sitemap_index.xml