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

Chuỗi Java:Hướng dẫn cho người mới bắt đầu

Khi nghĩ đến sợi dây, bạn có thể thấy một con mèo đang chơi đùa với một quả bóng sợi. Đúng là quả bóng hoặc sợi là chuỗi, nhưng khi các lập trình viên sử dụng từ chuỗi, họ có nghĩa là một cái gì đó khác.

Trong lập trình, một chuỗi là một chuỗi gồm một hoặc nhiều ký tự. Do dữ liệu dựa trên văn bản quan trọng như thế nào đối với các tương tác hàng ngày của chúng ta với máy tính, sẽ không có gì ngạc nhiên khi chuỗi là một phần quan trọng của lập trình.

Trong hướng dẫn này, chúng ta sẽ thảo luận về cách tạo một chuỗi, cách nối một chuỗi và cách lưu trữ giá trị của một chuỗi trong một biến. Chúng tôi sẽ giới thiệu cho các bạn một vài ví dụ để hướng dẫn bạn trong quá trình thực hiện.

Tạo chuỗi Java

Một chuỗi được sử dụng để lưu trữ văn bản trong Java. Trong khi char kiểu dữ liệu lưu trữ các ký tự riêng lẻ, chuỗi có thể chứa nhiều ký tự tùy thích. Chuỗi là chuỗi các byte.

Các chuỗi được xác định giữa các dấu ngoặc kép. Điều này không giống như các ngôn ngữ như Python hoặc JavaScript, cả hai đều chấp nhận cả dấu ngoặc kép và đơn. Dưới đây là một ví dụ về một chuỗi trong Java:

“This is an example string.”

Bạn có thể in ra nội dung của một chuỗi bằng println() chức năng:

 System.out.println ("Đây là một chuỗi mẫu."); 

Mã của chúng tôi trả về:This is an example string . Chúng tôi đã xây dựng một chuỗi mới. Bây giờ bạn đã biết về cách khai báo một chuỗi, chúng ta có thể nói về cách làm việc với chúng trong mã của bạn.

81% người tham gia cho biết họ cảm thấy tự tin hơn về triển vọng công việc công nghệ của mình sau khi tham gia chương trình đào tạo. Kết hợp với bootcamp ngay hôm nay.

Sinh viên tốt nghiệp bootcamp trung bình dành ít hơn sáu tháng để chuyển đổi nghề nghiệp, từ khi bắt đầu bootcamp đến khi tìm được công việc đầu tiên của họ.

Nối chuỗi

Sự liên kết, những gì một từ dài. Định nghĩa của nó khá đơn giản:nó có nghĩa là kết hợp hai chuỗi để tạo một chuỗi mới. Bạn có thể sử dụng + toán tử (dấu cộng) để nối hai chuỗi.

Giả sử chúng ta có hai chuỗi:William và Carter. Chuỗi đầu tiên là họ và chuỗi thứ hai là họ. Chúng tôi có thể kết hợp chúng bằng cách sử dụng + nhà điều hành:

 String fullname ="William" + "Carter"; System.out.println (fullname); 

Đầu ra mã của chúng tôi:WilliamCarter . Chờ đã, chuyện gì đã xảy ra? Tại sao không có khoảng trắng giữa hai từ này?

Theo mặc định, không có khoảng trắng được thêm vào giữa các chuỗi được nối. Nếu chúng ta muốn một khoảng trắng xuất hiện, chúng ta sẽ cần thêm nó vào sau tên William :

 String fullname ="William" + "Carter"; System.out.println (fullname); 

Khi chúng tôi chạy chương trình của mình, điều này được trả về:William Carter .

Tính độ dài của một chuỗi

Làm thế nào để bạn tính toán độ dài của một chuỗi? Thật là một câu hỏi hay. May mắn cho chúng tôi, chúng tôi không cần phải viết bất kỳ hàm phức tạp nào để làm điều đó.

Java đã có sẵn một hàm mà chúng ta có thể sử dụng để tính độ dài của một chuỗi:length() . Đó là một cái tên thuận tiện cho một phương pháp!

Chúng tôi sẽ tạo một chương trình tính toán độ dài tên của hai người trong một lớp học lớp bốn. Tạo một tệp Java mới và dán mã sau vào lớp chính của bạn:

 String name1 ="William Carter"; String name2 ="Helena Ohara"; int name1length =name1.length () - 1; int name2length =name2.length () - 1; System.out.println (name1 + " tên của là "+ name1length +" các chữ cái dài. "); System.out.println (tên của name2 +" là "+ name2length +" các chữ cái dài. "); 

Hãy chạy mã của chúng tôi:

 Tên của William Carter dài 13 chữ cái còn tên củaelena Ohara dài 11 chữ cái. 

Chúng tôi đã xác định hai biến lưu trữ tên học sinh của chúng tôi:name1 và name2. Sau đó, chúng tôi đã sử dụng length() phương pháp tính độ dài của mỗi chuỗi này. Chúng tôi đã trừ đi 1 từ độ dài của mỗi tên để chiếm khoảng trống ở giữa.

Sau đó, chúng tôi in ra một thông báo cho chúng tôi biết độ dài của mỗi tên.

Tìm một chuỗi trong một chuỗi

Có thể có lúc bạn muốn tìm một chuỗi trong một chuỗi khác. Đó là nơi mà indexOf() có ích. Phương thức này trả về vị trí của lần xuất hiện đầu tiên của một chuỗi văn bản cụ thể trong một chuỗi.

Trước khi thảo luận về cách nó hoạt động, chúng ta sẽ phải nói ngắn gọn về index . Trong Java, các chuỗi được lập chỉ mục bằng cách sử dụng số chỉ mục. Điều này có nghĩa là mọi ký tự trong một chuỗi đều được gán số riêng của nó, chúng ta có thể sử dụng số này để truy cập từng mục riêng lẻ.

Dưới đây là bảng phân tích chỉ mục trong chuỗi “William Carter”:

W i l l i a m
C a r t e r
1 2 3 4 5 6 7 8 9 10 11 12 13

Lưu ý rằng tất cả các ký tự trong chuỗi của chúng ta đều được gán một số chỉ mục, bao gồm cả khoảng trắng. Ngoài ra, hãy lưu ý cách chúng ta bắt đầu đếm từ 0. Điều này là do các chuỗi được lập chỉ mục bắt đầu từ 0.

Giả sử chúng tôi muốn tìm ra nơi chuỗi Carter xuất hiện trong chuỗi này. Chúng tôi có thể làm như vậy bằng cách sử dụng indexOf() phương pháp như thế này:

 String name ="William Carter"; int position =name.indexOf ("Carter"); System.out.println ("Carter xuất hiện bắt đầu từ giá trị chỉ mục" + vị trí); 

Mã của chúng tôi trả về:Carter xuất hiện bắt đầu từ giá trị chỉ mục 8. indexOf() trả về vị trí chỉ mục mà tại đó một ký tự xuất hiện.

Kiểm tra xem hai chuỗi có bằng nhau hay không

So sánh các chuỗi luôn xuất hiện trong lập trình. Hãy nghĩ về thời điểm bạn nhập mật khẩu vào biểu mẫu đăng nhập. Ứng dụng làm gì? Nó so sánh mật khẩu bạn đã nhập với mật khẩu mà ứng dụng đã lưu trữ trong cơ sở dữ liệu của nó.

Giả sử chúng tôi muốn viết một chương trình để kiểm tra xem mật khẩu của người dùng có chính xác hay không. Mở một tệp Java mới và dán mã sau vào chương trình chính của bạn:

 String enter_password ="Test123"; String save_password ="Test12345"; boolean so sánh_passwords =enter_password.equals (save_password); System.out.println ("Mật khẩu đã nhập có khớp với mật khẩu đã lưu không?" + so sánh_passwords);  

Mã của chúng tôi trả về:

Mật khẩu đã nhập có khớp với mật khẩu đã lưu không? sai

Chương trình của chúng tôi kiểm tra xem liệu hai chuỗi mà chúng tôi đã chỉ định - entered_passwordsaved_password bằng nhau. Chúng tôi sử dụng equals() phương pháp để thực hiện kiểm tra này. Phương thức này trả về true nếu các chuỗi bằng nhau; nếu không, nó trả về false.

Hãy thay đổi giá trị của entered_password bằng với saved_password :

 String enter_password ="Test12345"; String save_password ="Test12345"; ... 

Khi chúng tôi chạy mã này, chương trình của chúng tôi trả về:

Mật khẩu đã nhập có khớp với mật khẩu đã lưu không? thật

Cả hai chuỗi mà chúng tôi đã chỉ định đều khớp, có nghĩa là equals() của chúng tôi phương thức đánh giá là true.

Các ký tự đặc biệt

Các chuỗi phải được viết trong dấu ngoặc kép. Điều này nghe có vẻ không có gì to tát cho đến khi bạn muốn đưa một trích dẫn kép vào chương trình của mình. Điều này sẽ trả về một lỗi.

Cách để giải quyết lỗi này là sử dụng ký tự dấu gạch chéo ngược (\). Thao tác này sẽ biến bất kỳ ký tự nào ngay sau chuỗi thành ký tự đặc biệt. Hãy xem xét ví dụ này:

 String statement ="Đơn đặt hàng của bạn cho \" Chocolate Chip Cookie x2 \ "đã được xử lý."; 

Chuỗi này sẽ hoạt động trong chương trình của chúng tôi vì chúng tôi đã chỉ định dấu gạch chéo ngược trước mỗi dấu ngoặc kép trong chuỗi của chúng tôi. Chuỗi này trả về:Đơn đặt hàng Chocolate Chip Cookie x2 của bạn đã được xử lý.

Bây giờ chúng ta gặp một vấn đề khác:điều gì sẽ xảy ra nếu bạn muốn sử dụng dấu gạch chéo ngược trong chuỗi của mình? Để làm như vậy, bạn có thể viết hai dấu gạch chéo ngược cạnh nhau:

 String order_reference ="Tham chiếu đơn đặt hàng của bạn là 202 \\ 303." 

Điều này trả về chuỗi:Your order reference is 202\303."

Có một số ký tự đặc biệt khác mà bạn có thể sử dụng trong Java. Một trong những tiện ích hữu ích nhất mà bạn sẽ gặp là một dòng có tên \ n hoặc dòng mới. Ký tự này tạo một dòng mới trong một chuỗi:

 String order_reference ="Tham chiếu đơn đặt hàng của bạn là:\ n 202 \\ 303." 

Chuỗi của chúng tôi bằng:

Tham chiếu đơn đặt hàng của bạn là:

202\303

Chuỗi đã được tách thành hai dòng vì chúng tôi đã chỉ định một ký tự dòng mới sau is: một phần trong chuỗi của chúng tôi.



Kết luận

Chuỗi cho phép bạn làm việc với dữ liệu dựa trên văn bản trong các chương trình của bạn. Một chuỗi có thể chứa bất kỳ số ký tự nào, kể cả không có ký tự nào.

Sử dụng các phương thức chuỗi như indexOf()equals() , bạn có thể thao tác nội dung của một chuỗi trong Java. Bây giờ, bạn đã sẵn sàng để bắt đầu làm việc với các chuỗi trong Java như một chuyên gia!