JavaRush /จาวาบล็อก /Random-TH /สตริงใน Java
articles
ระดับ

สตริงใน Java

เผยแพร่ในกลุ่ม
ในบทช่วยสอนนี้ เราจะได้เรียนรู้วิธีการทำงานกับสตริงใน Java สตริงซึ่งใช้กันอย่างแพร่หลายในการเขียนโปรแกรมคือลำดับของอักขระ ในภาษาการเขียนโปรแกรม Java สตริงเป็นอ็อบเจ็กต์ แพลตฟอร์ม Java จัดเตรียมคลาสStringสำหรับการสร้างและจัดการสตริง สตริงใน Java - 1

การสร้างสตริง

วิธีที่ง่ายที่สุดในการสร้างสตริงมีลักษณะดังนี้:
String greeting = "Hello world!";
ในกรณีนี้คือ “สวัสดีชาวโลก!” เป็นสตริงลิเทอรัล (เช่น ค่าคงที่) ที่ประกอบด้วยลำดับอักขระที่อยู่ในเครื่องหมายคำพูด เมื่อใดก็ตามที่คอมไพลเลอร์พบสตริงลิเทอรัล มันจะสร้างอ็อบเจ็กต์ประเภทStringที่มีค่า ในกรณีของเรา "Hello World!" newเช่นเดียวกับอ็อบเจ็กต์อื่นๆ คุณสามารถสร้างสตริงได้โดยใช้คีย์เวิร์ด คลาสนี้Stringมีคอนสตรัคเตอร์สามตัวที่ให้คุณสร้างออบเจ็กต์โดยใช้แหล่งที่มาที่แตกต่างกัน เช่นอาร์เรย์ อักขระ
char[] helloArray = {'h', 'e', 'l', 'l', 'o', '.'};
String helloString = new String(helloArray);
System.out.println(helloString);
บรรทัดสุดท้ายของตัวอย่างจะพิมพ์ hello ไปที่หน้าจอ คลาสStringไม่เปลี่ยนรูป ดังนั้นเมื่อเราสร้างอ็อบเจ็กต์แล้ว เราก็ไม่สามารถเปลี่ยนแปลงมันได้ วิธีการบางอย่างที่เราจะดูด้านล่างสามารถแก้ไขได้ เพราะ Stringไม่เปลี่ยนรูป วิธีการเหล่านี้จะสร้างและส่งคืนสตริงใหม่ที่มีผลลัพธ์ของการดำเนินการ

ความยาวสตริง Java

วิธีการรับข้อมูลเกี่ยวกับสตริงเรียกว่าวิธีการเข้าถึง หนึ่งในวิธีการเหล่าlength()นี้ ส่งคืนจำนวนอักขระในสตริง ในตัวอย่างต่อไปlenนี้จะเป็น 17:
String palindrome = "Dont saw I saw Tod";
int len = palindrome.length();
ตัวแปรpalindromeประกอบด้วยพาลินโดรม เช่น คำหรือประโยคที่อ่านเหมือนกันทั้งสองวิธี เรามาเขียนโปรแกรมเล็กๆ ที่จะกลับค่าพาลินโดรมกันดีกว่า เราจะใช้เมธอดcharAt(i)ซึ่งจะส่งคืน อักขระ i -th ของสตริง โดยเริ่มต้น0ด้วย
public class StringDemo {
    public static void main(String[] args) {
    String palindrome = "Dot saw I was Tod";
    int len = palindrome.length();
    char[] tempCharArray = new char[len];
    char[] charArray = new char[len];

    //создадим из строки
    // массив символов
    for (int i = 0; i < len; i++) {
    tempCharArray[i] =
    palindrome.charAt(i);
    }

    // перевернем массив символов
    for (int j = 0; j < len; j++) {
    charArray[j] =
    tempCharArray[len - 1 - j];
    }

    String reversePalindrome =
    new String(charArray);
    System.out.println(reversePalindrome);
    }
}
โปรแกรมจะพิมพ์
doT saw I was toD
ในการย้อนกลับสตริง อันดับแรกเราสร้างอาร์เรย์ของอักขระจากสตริง (ลูปแรก) จากนั้นจึงสร้างอาร์เรย์ใหม่โดยที่เราเขียนอาร์เรย์แรกที่กลับด้าน จากนั้นจึงสร้างสตริงใหม่ คลาสนี้StringมีเมธอดgetChars()ที่ส่งคืนอาร์เรย์ของอักขระ ดังนั้นลูปแรกจึงสามารถแทนที่ด้วยบรรทัดได้:
palindrome.getChars(0, len, tempCharArray, 0);

การต่อสตริง

ชั้นStringใช้วิธีการเชื่อมต่อสองสาย:
string1.concat(string2);
รหัสนี้จะส่งคืนสตริงใหม่ที่มี และ ต่อstring1ท้าย string2คุณยังสามารถใช้วิธีนี้กับตัวอักษรสตริงได้:
"My name is ".concat("Rumplestiltskin");
ส่วนใหญ่แล้ว สตริงจะถูกรวมเข้าด้วยกันโดยใช้+โอเปอเรเตอร์ “ ” เช่น:
"Hello," + " world" + "!"
ผลลัพธ์จะเป็นสตริง “ สวัสดีชาวโลก!” " ตัวดำเนินการ " +" ถูกใช้กันอย่างแพร่หลายในการแสดงข้อมูล ตัวอย่างเช่น:
String string1 = "saw I was ";
System.out.println("Dot " + string1 + "Tod");
รหัสจะแสดงผล " Dot saw I was Tod " การต่อข้อมูลดังกล่าวสามารถใช้ร่วมกับวัตถุอื่นได้ สำหรับอ็อบเจ็กต์ที่ไม่ใช่สตริง วิธีการนี้จะเรียกว่าtoString()ซึ่งจะแปลงเป็นสตริง การตั้งค่ารูปแบบเอาต์พุตสตริง เราได้ดูวิธีการแล้วprintf()เมื่อformat()เราจัดรูปแบบผลลัพธ์ของตัวเลข คลาสStringมีเมธอดที่คล้ายกันซึ่งส่งคืนสตริง เมื่อใช้วิธีการคงformat()ที่ คุณสามารถสร้างเทมเพลตสต็อกที่สามารถนำมาใช้ซ้ำได้ เช่น:
System.out.printf ("The value of the float " +
                   "variable is %f, while " +
                   "the value of the " +
                   "integer variable is %d, "
                   "and the string is %s",
                   floatVar, intVar, stringVar);
คุณสามารถใช้รหัสนี้:
String fs;
fs = String.format("The value of the float " +
                   "variable is %f, while " +
                   "the value of the " +
                   "integer variable is %d, " +
                   " and the string is %s",
                   froatVar, intVar, stringVar);
System.out.println(fs);
นั่นคือทั้งหมด! :) ลิงก์ไปยังแหล่งที่มา: สตริงใน Java
ความคิดเห็น
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION