Thao tác chuỗi Java: Các hàm và phương thức với EXAMPLE

Mục lục:

Anonim

Chuỗi là gì?

Một chuỗi theo nghĩa đen là một chuỗi các ký tự. Này, bạn đã nói các ký tự, nó không phải là một kiểu dữ liệu nguyên thủy trong Java. Đúng vậy, về mặt kỹ thuật, Chuỗi Java cơ bản về cơ bản là một mảng các ký tự.

Vì vậy, chuỗi " ROSE " ở trên của tôi có thể được biểu diễn như sau:

Trong hướng dẫn này, bạn sẽ học-

  • Chuỗi là gì?
  • Tại sao sử dụng Strings?
  • Ví dụ về cú pháp chuỗi
  • Nối chuỗi
  • Các phương thức chuỗi Java quan trọng

Tại sao sử dụng Strings?

Một trong những chức năng chính của khoa học máy tính hiện đại, là xử lý ngôn ngữ của con người.

Tương tự như cách các con số quan trọng đối với toán học, các ký hiệu ngôn ngữ cũng quan trọng đối với ý nghĩa và việc ra quyết định. Mặc dù nó có thể không hiển thị với người dùng máy tính, nhưng máy tính xử lý ngôn ngữ nền một cách chính xác và chính xác như một máy tính. Hộp thoại trợ giúp cung cấp hướng dẫn. Menu cung cấp các lựa chọn. Và màn hình dữ liệu hiển thị trạng thái, lỗi và các thay đổi theo thời gian thực đối với ngôn ngữ.

Là một lập trình viên Java, một trong những công cụ chính của bạn để lưu trữ và xử lý ngôn ngữ sẽ là lớp String.

Ví dụ về cú pháp chuỗi

Bây giờ, chúng ta hãy đến với một số cú pháp, sau cùng, chúng ta cần viết điều này bằng mã Java phải không.

Chuỗi là một mảng các ký tự, được biểu diễn dưới dạng:

//String is an array of characterschar[] arrSample = {'R', 'O', 'S', 'E'};String strSample_1 = new String (arrSample);

Về mặt kỹ thuật, Chuỗi được định nghĩa như sau trong ví dụ trên-

= new (argument);

Bây giờ chúng ta luôn không thể viết chuỗi của mình dưới dạng mảng; do đó chúng ta có thể định nghĩa Chuỗi trong Java như sau:

//Representation of StringString strSample_2 = "ROSE";

Về mặt kỹ thuật, những điều trên được biểu thị là:

= ;

Các Chuỗi lớp Java mở rộng các lớp Object.

Kết nối chuỗi:

Nối là nối hai hoặc nhiều chuỗi.

Hãy xem hình ảnh dưới đây-

Chúng tôi có hai chuỗi str1 = “Rock” và str2 = “Ngôi sao”

Nếu chúng ta cộng hai chuỗi này, chúng ta sẽ có kết quả là str3 = “RockStar”.

Kiểm tra đoạn mã dưới đây và đoạn mã giải thích hai phương pháp để thực hiện nối chuỗi.

Đầu tiên là sử dụng phương thức “ concat ” của lớp String và thứ hai là sử dụng toán tử số học “+”. Cả hai kết quả trong cùng một đầu ra

lớp công khai Sample_String {public static void main (String [] args) {// Nối chuỗiChuỗi str1 = "Đá";String str2 = "Dấu sao";// Phương pháp 1: Sử dụng concatChuỗi str3 = str1.concat (str2);System.out.println (str3);// Phương pháp 2: Sử dụng toán tử "+"Chuỗi str4 = str1 + str2;System.out.println (str4);}}

Các phương thức chuỗi Java quan trọng:

Hãy hỏi lớp Java String một vài câu hỏi và xem liệu nó có thể trả lời chúng hay không;)

Phương pháp "Độ dài" Chuỗi

Làm thế nào bạn sẽ xác định độ dài của chuỗi đã cho? Tôi đã cung cấp một phương thức được gọi là "độ dài". Sử dụng nó đối với Chuỗi bạn cần để tìm độ dài.

lớp công khai Sample_String {public static void main (String [] args) {// Chuỗi mẫu của chúng tôi cho hướng dẫn nàyString str_Sample = "RockStar";// Độ dài của một chuỗiSystem.out.println ("Độ dài của chuỗi: + str_Sample.length ());}}

đầu ra:

Length of String: 8

Phương thức chuỗi "indexOf"

Nếu tôi biết độ dài, tôi sẽ tìm ký tự nào ở vị trí nào? Tóm lại, tôi sẽ tìm chỉ số của một nhân vật như thế nào?

Bạn đã tự trả lời, anh bạn, có một phương thức “indexOf” sẽ giúp bạn xác định vị trí của một ký tự cụ thể mà bạn chỉ định.

lớp công khai Sample_String {public static void main (String [] args) {// Ký tự tại vị tríString str_Sample = "RockStar";System.out.println ("Ký tự ở vị trí 5: + str_Sample.charAt (5));// Chỉ mục của một ký tự nhất địnhSystem.out.println ("Chỉ mục của ký tự 'S': + str_Sample.indexOf ('S'));}}

Đầu ra:

Character at position 5: tIndex of character 'S': 4

Phương thức chuỗi "charAt"

Tương tự như câu hỏi trên, cho chỉ số, làm cách nào để biết nhân vật tại vị trí đó?

Đơn giản một lần nữa !! Sử dụng phương thức "charAt" và cung cấp chỉ mục có ký tự bạn cần tìm.

lớp công khai Sample_String {public static void main (String [] args) {// Ký tự tại vị tríString str_Sample = "RockStar";System.out.println ("Ký tự ở vị trí 5: + str_Sample.charAt (5));}}

Đầu ra:

Character at position 5: t

Phương thức chuỗi "CompareTo"

Tôi có muốn kiểm tra xem Chuỗi được tạo bởi một số phương thức có bằng với chuỗi mà tôi muốn xác minh không? Làm cách nào để so sánh hai chuỗi?

Sử dụng phương thức "CompareTo" và chỉ định Chuỗi mà bạn muốn so sánh.

Sử dụng “CompareToIgnoreCase” trong trường hợp bạn không muốn kết quả phân biệt chữ hoa chữ thường.

Kết quả sẽ có giá trị 0 nếu chuỗi đối số bằng chuỗi này; một giá trị nhỏ hơn 0 nếu chuỗi này nhỏ hơn về mặt từ vựng so với đối số chuỗi; và giá trị lớn hơn 0 nếu chuỗi này về mặt từ vựng lớn hơn đối số chuỗi.

lớp công khai Sample_String {public static void main (String [] args) {// So sánh với một chuỗiString str_Sample = "RockStar";System.out.println ("So sánh Với 'ROCKSTAR': + str_Sample.compareTo ("rockstar"));// So sánh với - Bỏ qua chữ hoaSystem.out.println ("So sánh với 'ROCKSTAR' - Trường hợp bị Bỏ qua: + str_Sample.compareToIgnoreCase ("ROCKSTAR"));}}

Đầu ra:

Compare To 'ROCKSTAR': -32Compare To 'ROCKSTAR' - Case Ignored: 0

Phương thức chuỗi "Chứa"

Tôi một phần biết chuỗi phải chứa những gì, làm cách nào để xác nhận xem Chuỗi có chứa một chuỗi ký tự mà tôi chỉ định hay không?

Sử dụng phương thức “chứa” và chỉ định các ký tự bạn cần kiểm tra.

Trả về true nếu và chỉ khi chuỗi này chứa chuỗi giá trị char được chỉ định.
lớp công khai Sample_String {public static void main (String [] args) {// Kiểm tra xem Chuỗi có chứa một chuỗi khôngString str_Sample = "RockStar";System.out.println ("Chứa chuỗi 'tar': + str_Sample.contains ("tar"));}}

Đầu ra:

Contains sequence 'tar': true

Phương thức chuỗi "endWith"

Làm cách nào để xác nhận xem một Chuỗi có kết thúc bằng một hậu tố cụ thể hay không? Một lần nữa bạn đã trả lời nó. Sử dụng phương thức "endWith" và chỉ định hậu tố trong các đối số.

Trả về true nếu chuỗi ký tự được đại diện bởi đối số là một hậu tố của chuỗi ký tự được đại diện bởi đối tượng này.
lớp công khai Sample_String {public static void main (String [] args) {// Kiểm tra xem có kết thúc bằng một chuỗi cụ thể khôngString str_Sample = "RockStar";System.out.println ("EndsWith character 'r': + str_Sample.endsWith ("r"));}}

Đầu ra:

EndsWith character 'r': true

Phương thức chuỗi "ReplaceAll" & "ReplaceFirst"

Tôi muốn sửa đổi Chuỗi của mình ở một số nơi và thay thế một số phần của Chuỗi?

Phương thức Java String Replace, ReplaceAll và ReplaceFirst. Bạn có thể chỉ định phần của Chuỗi bạn muốn thay thế và Chuỗi thay thế trong các đối số.

lớp công khai Sample_String {public static void main (String [] args) {// Thay thế Rock bằng từ DukeString str_Sample = "RockStar";System.out.println ("Thay thế 'Rock' bằng 'Duke': + str_Sample.replace ("Rock", "Duke"));}}

Đầu ra:

Replace 'Rock' with 'Duke': DukeStar

Chuỗi Java "tolowercase" & Phương thức "touppercase" Java

Tôi muốn toàn bộ Chuỗi của mình được hiển thị bằng chữ thường hoặc chữ hoa?

Chỉ cần sử dụng các phương thức “toLowercase ()” hoặc “ToUpperCase ()” đối với các Chuỗi cần được chuyển đổi.

lớp công khai Sample_String {public static void main (String [] args) {// Chuyển đổi thành LowerCaseString str_Sample = "RockStar";System.out.println ("Chuyển đổi thành LowerCase: + str_Sample.toLowerCase ());// Chuyển đổi sang UpperCaseSystem.out.println ("Chuyển đổi sang UpperCase: + str_Sample.toUpperCase ());}}

Đầu ra:

Convert to LowerCase: rockstarConvert to UpperCase: ROCKSTAR

Những điểm quan trọng cần lưu ý:

  • String là một lớp cuối cùng ; tức là khi đã tạo giá trị không thể thay đổi được. Do đó, các đối tượng String được gọi là bất biến.
  • Máy ảo Java (JVM) tạo ra một vị trí bộ nhớ đặc biệt cho các chuỗi được gọi là String Constant Pool . Đó là lý do tại sao Chuỗi có thể được khởi tạo mà không cần từ khóa 'mới'.
  • Lớp chuỗi thuộc phân cấp java.lang.String . Nhưng không cần nhập lớp này. Nền tảng Java cung cấp chúng một cách tự động.
  • Tham chiếu chuỗi có thể được ghi đè nhưng điều đó không xóa nội dung ; tức là, nếu

Chuỗi h1 = "xin chào";

h1 = "xin chào" + "thế giới";

sau đó "xin chào" Chuỗi không bị xóa. Nó chỉ mất tay cầm.

  • Nhiều tham chiếu có thể được sử dụng cho cùng một chuỗi nhưng nó sẽ xảy ra ở cùng một nơi ; tức là, nếu

Chuỗi h1 = "xin chào";

Chuỗi h2 = "xin chào";

Chuỗi h3 = "xin chào";

thì chỉ một vùng cho Chuỗi “hello” được tạo trong bộ nhớ với 3 tham chiếu-h1, h2, h3

  • Nếu một số được trích dẫn trong “” thì nó sẽ trở thành một chuỗi , không phải là một số nữa. Điều đó có nghĩa là nếu

Chuỗi S1 = "Số là: + "123" + "456";

Hệ thống. ra .println (S1);

sau đó nó sẽ in: Số là: 123456

Nếu quá trình khởi tạo là như thế này:

Chuỗi S1 = "Số là: + (123 + 456);

Hệ thống. ra .println (S1);

sau đó nó sẽ in ra: Số là: 579 Đó là tất cả đối với Strings!