"Bạn nghĩ sao, Amigo? Lớp Java phổ biến nhất sau int là gì?"
"Bạn đã cho tôi một phần giới thiệu trong tiêu đề của bài học, Ellie. Đó là String
!"
"Thật vậy, nó là một spoiler. String
được sử dụng hoàn toàn ở mọi nơi. Nó có một loạt các phương pháp hữu ích mà bạn nên biết thì tốt hơn.
" String
Lớp này là lớp duy nhất ngoài các kiểu nguyên thủy mà các ký tự có thể được sử dụng trong một switch
câu lệnh; trình biên dịch xử lý các đối tượng Chuỗi và bổ sung chuỗi theo một cách đặc biệt; String
các đối tượng được lưu trữ trong bộ nhớ theo một cách đặc biệt. Về cơ bản, lớp String
là một lớp rất lớp học đặc biệt.
"Ngoài ra, String
lớp này còn có một loạt các lớp trợ giúp với mục đích đơn giản hóa hơn nữa việc làm việc với các chuỗi trong Java. Khi bạn học được tất cả những điều này, nhiều việc sẽ thực sự trở nên dễ dàng hơn nhiều đối với bạn."
"Tôi không thể chờ đợi."
"À, chúng ta sẽ bắt đầu từ chính cốt lõi của hệ sinh thái này—sự tổ chức của String
lớp. Cấu trúc của lớp String
thực ra rất đơn giản: bên trong nó là một mảng ký tự ( char
array) lưu trữ tất cả các ký tự của chuỗi. For ví dụ, đây là cách từ 'Xin chào' được lưu trữ:
Nó quan trọng.
Trên thực tế, điều này không hoàn toàn chính xác. Vì String
lớp này rất quan trọng nên nó sử dụng rất nhiều tối ưu hóa và dữ liệu được lưu trữ bên trong không phải dưới dạng mảng ký tự mà chỉ đơn giản là dưới dạng mảng byte.
Các phương thức của lớp String
Lớp này String
có rất nhiều phương thức: riêng nó đã có 18 hàm tạo! Vì vậy, dưới đây tôi sẽ chỉ liệt kê những cái được sử dụng thường xuyên nhất:
phương pháp | Sự miêu tả |
---|---|
|
Trả về số ký tự trong chuỗi |
|
Kiểm tra xem chuỗi có phải là chuỗi rỗng không |
|
Kiểm tra xem chuỗi chỉ chứa các ký tự khoảng trắng: dấu cách, tab, dòng mới, v.v. |
|
Trả về ký tự tại vị trí chỉ mục trong chuỗi. |
|
Trả về một mảng các ký tự (bản sao) tạo thành chuỗi |
|
Chuyển đổi một chuỗi thành một tập hợp byte và trả về mảng byte. |
|
Tách một chuỗi thành nhiều chuỗi con. |
|
Nối nhiều chuỗi con lại với nhau |
|
Đặt một chuỗi vào nhóm chuỗi. |
"Điều đó có vẻ rất tốt!"
"Hãy viết chương trình chuyển đổi đường dẫn tệp từ kiểu Unix sang kiểu Windows. Unix sử dụng ký /
tự để phân tách các thư mục, trong khi Windows sử dụng \
ký tự.
Giải pháp 1. Sử dụng char
mảng
Mã số | ghi chú |
---|---|
|
Tạo một đối tượng Máy quét Đọc một dòng từ bàn điều khiển Chuyển đổi một chuỗi thành một mảng ký tự Lặp lại các ký tự Nếu ký tự là / , hãy thay thế nó bằng ký tự \ . Đừng quên về việc trốn thoát. Tạo một chuỗi mới dựa trên mảng ký tự. Hiển thị chuỗi. |
Giải pháp 2. Sử dụng các split()
và join()
phương pháp:
Mã số | ghi chú |
---|---|
|
Tạo một đối tượng Scanner Đọc một dòng từ bàn điều khiển Chuyển đổi chuỗi thành một mảng chuỗi . Ký / tự được sử dụng làm dấu phân cách (hai dấu gạch chéo thừa là kết quả của việc thoát kép). Nối tất cả các chuỗi trong mảng chuỗi . The \ được sử dụng làm dấu phân cách (chúng tôi thấy nó đã thoát). Hiển thị chuỗi. |
Giải pháp 3. Sử dụng replace(char oldChar, char newChar)
phương pháp:
Mã số | ghi chú |
---|---|
|
Tạo một đối tượng Máy quét Đọc một dòng từ bàn điều khiển Chỉ cần thay thế một ký tự bằng một ký tự khác (ký tự thứ hai được thoát ra) Hiển thị chuỗi. |
"Tôi thích giải pháp thứ ba nhất. Nhưng tôi sẽ thực hành cả ba."
"Làm tốt lắm, Amigo. Tôi thấy rằng bạn đã thiếu kiên nhẫn để áp dụng kiến thức mới của mình vào thực tế. Bài học đã kết thúc."
GO TO FULL VERSION