Tìm hiểu lập trình Java: Cách sử dụng danh sách, chủ đề & công ty
Trong bài viết cuối cùng trong loạt bài Java của chúng tôi, chúng tôi giải thích cách xử lý đúng các luồng, danh sách, ngoại lệ và tệp trong Java.
Java: ngoại lệ là gì?
Nếu bạn chưa làm việc với Java, trước tiên bạn có thể đọc "Khái niệm cơ bản" của chúng tôi. Mã mẫu khác nhau có thể được tìm thấy trong bộ sưu tập hình ảnh ở cuối bài viết.
- Một ngoại lệ là một vấn đề xảy ra trong khi chương trình đang chạy.
- Có một mã đặc biệt để đối phó với một lệnh như vậy. Để làm điều này, đầu tiên hãy viết "thử {" và sau đó mã sẽ được thực thi. Sau đó viết "} Catch (Exception e) {" và sau đó thực hiện nhiều lệnh khác nhau nếu thao tác trước đó không thể thực hiện được. Đừng quên thêm một cú đúp vào cuối.
- Một lệnh ném cũng rất thực tế. Một ví dụ về điều này là mã »int div (int a, int b) ném« ⮩ »ArithaturesException {« ⮩ »if (b == 0) {« »ném ArithaturesException mới (" Chia cho 0! ");« ⮩ »} Khác {« ⮩ »trả lại a / b;« ⮩ »}« »}«. Câu lệnh ném trong phương thức xác định loại ngoại lệ mà phương thức có thể nhận được. Từ khóa throw xác định những gì sẽ xảy ra với ngoại lệ này.
- Thực tế: Một khối thử duy nhất có thể chứa một số khối bắt.
Sử dụng các luồng trong Java
Các luồng cho phép bạn chạy các lệnh khác nhau trong Java cùng một lúc. Có hai cách khác nhau để tạo ra một chủ đề.
- Một mặt, một lớp nhất định có thể kế thừa từ lớp "Chủ đề". Ví dụ, trước tiên hãy viết "Trình tải lớp mở rộng Chủ đề {". Sau đó, bạn phải xác định một phương thức với "public void run () {" mô tả các chức năng của luồng. Trong một lớp khác, bây giờ bạn có thể sử dụng lệnh "Loader obj = new Loader ();" để sử dụng phương thức "obj.start ();" để bắt đầu chuỗi.
- Ngoài ra, bạn có thể thực hiện giao diện "Runnable" trong một lớp. Bạn có thể làm điều này với lệnh "class Loader thực hiện Runnable {". Xác định một phương thức chạy lại. Bây giờ bạn có thể bắt đầu chuỗi trong một lớp khác với mã "Thread t = new Thread (new Loader ());" "t.start ();"
- Mẹo: Bạn có thể sử dụng lệnh "Thread.s ngủ (1000);" để cho phép luồng nghỉ trong một giây. Tuy nhiên, lưu ý rằng lệnh này tạo ra Interrupttedception.
Tạo danh sách trong Java
Có hai loại danh sách khác nhau trong Java: "ArrayList" và "LinkedList".
- Thông thường, các mảng trong Java chỉ có thể lưu trữ một số đối tượng nhất định. Tuy nhiên, có một hàm gọi là "ArrayList" trong API Java. Đầu tiên viết "nhập java.util.ArrayList;" để nhập gói cần thiết. Bây giờ bạn có thể sử dụng lệnh ArrayList colors = new ArrayList (); để tạo một danh sách mới. Theo tùy chọn, bạn có thể sử dụng lệnh ArrayList colors = new ArrayList (10); để tạo danh sách chỉ định trước kiểu dữ liệu và kích thước.
- Bây giờ bạn có thể thêm một cái gì đó vào danh sách bằng lệnh »colors.add (" ... ");«. Với »colors.remove (" ... ");« quá trình này có thể được đảo ngược. Bạn cũng có thể sử dụng »colors.contains (...);« để hỏi xem danh sách có chứa một phần tử nào đó hay sử dụng lệnh »colors.get (int x);« để lấy giá trị với một chỉ mục nhất định. Cuối cùng, bạn có thể sử dụng »colors.size ();« để truy vấn số lượng phần tử trong danh sách và sử dụng »colors.clear ();« để xóa tất cả các thành phần của danh sách.
- Ngoài ra, còn có "LinkedList", mà bạn có thể nhập bằng lệnh »import java.util.LinkedList;«. Các lệnh giống nhau ở đây; tuy nhiên, bạn phải viết "LinkedList" mỗi lần thay vì "ArrayList". Một ArrayList phù hợp hơn để lưu trữ các đối tượng có thể được truy cập sau này. Bạn nên sử dụng LinkedList nếu bạn muốn thay đổi dữ liệu.
Java: Sử dụng HashMap
Trong các danh sách trên, mỗi đối tượng có một chỉ số (số nguyên). HashMap được sử dụng để lưu trữ dữ liệu với một cặp giá trị bao gồm "Khóa" và "Đối tượng".
- Bạn nhập HashMap bằng lệnh »nhập java.util.HashMap;«. Tương tự như các danh sách, bây giờ bạn có thể tạo HashMap bằng lệnh »HashMap points = new HashMap ();«.
- Tiếp theo, ví dụ, bạn có thể thêm lệnh »points.put (" Amy ", 154);«. Lệnh »System.out.println (" points.get ("Amy")); «bây giờ xuất giá trị 154. Một lần nữa, bạn có thể sử dụng các phương thức remove để xóa nó.
- HashMap không thể chứa các đối tượng có hai khóa giống nhau. Một đối tượng chỉ đơn giản là bị ghi đè. Các phương thức "chứaKey" và "chứaValue" rất thiết thực và có thể được sử dụng để kiểm tra xem một đối tượng hoặc khóa có tồn tại trong HashMap hay không.
- Ngoài ra còn có cái gọi là "bộ băm". Một tập hợp là một tập hợp các giá trị, theo đó hai giá trị giống nhau không bao giờ tồn tại. Lệnh nhập java.util.Hashset; được sử dụng để nhập. Ví dụ: bạn có thể tạo một bộ mới bằng lệnh »Hashset set = new Hashset ();«. Bây giờ bạn có thể thêm các phần tử vào Hashset này bằng lệnh »set.add (" ... ");«. Lệnh »System.out.println (set);« cuối cùng xuất ra tất cả các lệnh của tập hợp.
- Thông thường thứ tự của các phần tử trong tập băm không được duy trì một cách nhất quán. Tuy nhiên, nếu bạn muốn, bạn có thể sử dụng "LinkedHashset".
- Nhân tiện: Một bảng băm lưu trữ thông tin thông qua một cơ chế gọi là "băm", trong đó mọi giá trị của khóa được sử dụng để xác định một giá trị duy nhất được gọi là "mã băm". Nói một cách đơn giản, điều này có nghĩa là mọi yếu tố của bộ băm được liên kết với mã băm.
Sắp xếp danh sách và sử dụng các trình vòng lặp
Để làm việc với các danh sách thậm chí hiệu quả hơn, bạn có thể sắp xếp chúng và sử dụng các trình vòng lặp.
- API Java cũng bao gồm lớp các bộ sưu tập. Một trong những phương pháp thiết thực nhất ở đây là phương pháp sắp xếp. Tất cả các phương thức của lớp bộ sưu tập là các phương thức tĩnh, vì vậy chúng không phải khai báo lại. Ví dụ: nếu bạn đã tạo một ArrayList có tên là "động vật", bạn có thể sắp xếp các giá trị của nó bằng cách sử dụng lệnh Collections.sort (động vật); Bạn có thể nhập lớp Bộ sưu tập bằng lệnh »nhập java.util.Collections;«.
- Một iterator là một đối tượng lưu thông qua một bộ sưu tập và nhận và có thể xóa các giá trị. Bạn nhập gói được yêu cầu bằng lệnh »nhập java.util.iterator;«. Trong trường hợp này, chúng tôi đã tạo một LinkedList được gọi là "động vật". Bây giờ bạn có thể định nghĩa iterator bằng lệnh »Iterator it = động vật.iterator ();«. Nếu bây giờ bạn thực thi lệnh »System.out.println (it.next ());«, phần tử đầu tiên của LinkedList là đầu ra. Nếu bạn thực hiện lại lệnh, trình lặp sẽ di chuyển thêm một bước nữa và xuất phần tử thứ hai. Ở đây cũng vậy, bạn có thể loại bỏ các phần tử bằng một phương thức remove. Ngoài ra còn có phương thức hasNext, bạn có thể sử dụng để kiểm tra xem phần tử khác có tồn tại không.
Java: tạo và sử dụng các tệp
Bạn có thể dễ dàng tạo và sử dụng các tệp của riêng mình trong Java.
- Để thực hiện việc này, trước tiên bạn phải nhập gói được yêu cầu bằng lệnh "import java.io.File;". Sau đó, xác định tệp có đường dẫn phù hợp bằng lệnh »Tệp tệp = Tệp mới (" C: \\ data \\ input-file.txt ");«. Với »if (x.exists ()) {« bạn có thể kiểm tra xem các tập tin tồn tại. Bạn nhận được tên của tệp với "x.getName ()".
- Trong bước tiếp theo, bạn có thể tạo một máy quét mới bằng lệnh »Scanner sc = new Scanner (x);«. Một lần nữa, bạn có thể sử dụng các lệnh như "sc.next ()" hoặc "sc.hasNext ()" để đọc dữ liệu từ một tệp. Nó hoạt động rất tốt trong một vòng lặp while. Đừng quên đóng tệp với "sc.close ();" ở cuối.
- Để có thể ghi vào tệp, trước tiên bạn phải thêm lệnh "nhập java.util.Formatter;" vào mã của mình. Lệnh »Formatter f = new Formatter (" C: \\ CHIP \\ test.txt ");« bây giờ tạo một tệp có tên "test.txt" tại đường dẫn đã chỉ định.
- Để có thể ghi vào tệp, bạn có thể sử dụng lệnh »f.format ("% s% s% s, "1", "Max", "Mustermann \ r \ n"); «. % s "cho một chuỗi được thay thế bằng tham số đầu tiên, "% s "thứ hai bằng tham số thứ hai, v.v. Chương trình nhảy sang dòng tiếp theo bằng cách nhấn" \ r \ n ".
Đây là nơi loạt bài hướng dẫn của chúng tôi về ngôn ngữ lập trình Java kết thúc. Trong mẹo thực tế tiếp theo, chúng tôi sẽ giới thiệu cho bạn về lập trình với Python.