Stringlar - bu belgilar ketma -ketligi. Masalan, "Salom!" satr, chunki u 'H', 'e', 'l', 'l', 'o' va '!' belgilaridan iborat. Java -da, satrlar - bu ob'ektlar, bu shuni anglatadiki, maydonlar va usullarga ega bo'lgan String klassi mavjud. Stringni boshqarish uchun biz String sinfining usullaridan foydalanishimiz mumkin.
Qadamlar
5 -usul 1: String yaratish
Qadam 1. String sinfining konstruktori yordamida satr yarating
String str = new String ("Salom!");
Qadam 2. Stringni to'g'ridan -to'g'ri tayinlash orqali mag'lubiyat yarating
Qadam 3. Misol qilib ko'ring
Bu erda ikki xil usulda mag'lubiyat yaratadigan namuna dastur.
umumiy sinf StringManipulation {public static void main (String args) {String str1 = new String ("String konstruktor bilan yaratilgan!"); Str2 str2 = "Struktur konstruktorsiz yaratilgan!"; System.out.println (str1); System.out.println (str2); }}
5 -dan 2 -usul: String uzunligini toping
Qadam 1. Ip uzunligini topish nimani anglatishini tushuning
Ip uzunligi - bu satr o'z ichiga olgan belgilar soni. Masalan, "Salom!" Satrining uzunligi. 6, chunki u 6 ta belgidan iborat.
2 -qadam
uzunlik ()
usulini String ob'ektida saqlang va natijani butun sonli o'zgaruvchiga saqlang.
int strLength = str.length ();
3 -qadam
Bu erda satr uzunligini topadigan namuna dastur.
umumiy sinf StringManipulation {public static void main (String args) {String str = "Salom!"; int strLength = str.length (); System.out.println ("\" " + str +" / "uzunligi" + strLength + "dir.)); }}
5 -ning 3 -usuli: Stringni teskari aylantirish
Qadam 1. Ipni teskari aylantirish nimani anglatishini tushuning
Ipni teskari yo'naltirish, satrdagi belgilar tartibini o'zgartirishni anglatadi. Masalan, "Salom!" Satrining teskari tomoni. "! olleH" dir. Java -da qatorni orqaga qaytarishning ko'plab usullari mavjud.
Qadam 2. StringBuffer sinfining teskari usulidan foydalaning
Parametr sifatida teskari aylantirmoqchi bo'lgan qatorni o'z ichiga oladigan StringBuffer ob'ektini yarating. StringBuffer -ning teskari () usulidan foydalaning va keyin toString () usuli yordamida yangi teskari satrni oling.
umumiy sinf StringManipulation {public static void main (String args) {String str = "Salom!"; StringBuffer buferi = yangi StringBuffer (str); String reversedStr = buffer.reverse (). ToString (); System.out.println ("\" " + str +" / "qatorining teskari tomoni \" " + teskari Str +" / "."); }}
3 -qadam. Belgilarni teskari yo'nalishda aylantiring, bu belgilarni har bir takrorlashda StringBuffer -ga qo'shing
Parametr sifatida o'zgartirishni xohlagan satr uzunligi bilan boshlangan yangi StringBuffer ob'ektini yarating. So'ngra mag'lubiyatning oxirgi belgisidan boshlab, satrning birinchi belgisiga qadar tugallanuvchi satrni takrorlash uchun for loopidan foydalaning. Har bir takrorlashda StringBuffer -ga indeksdagi belgini qo'shing. ToString () usuli yordamida yangi teskari yo'nalishni oling.
umumiy sinf StringManipulation {public static void main (String args) {String str = "Salom!"; StringBuffer buferi = yangi StringBuffer (str.length ()); for (int i = str.length ()-1; i> = 0; i--) {buffer.append (str.charAt (i)); } String reversedStr = buffer.toString (); System.out.println ("\" " + str +" / "qatorining teskari tomoni \" " + teskari Str +" / "."); }}
Qadam 4. Ipni teskari aylantirish uchun rekursiv funksiya yozing
Rekursiv funktsiyada asosiy holat / shart - bu satr null bo'lsa yoki satr uzunligi hech kimdan kam yoki unga teng bo'lsa. Aks holda, teskari () usuli yana birinchi qatorni minus bilan chaqiriladi va birinchi belgi oxirida belgilanadi. Agar biz "Salom!" Qatoridan o'tgan bo'lsak, birinchi teskari () qo'ng'iroqda "ello!" Parametri bo'ladi.
umumiy sinf StringManipulation {public static void main (String args) {String str = "Salom!"; String reversedStr = teskari (str); System.out.println ("\" " + str +" / "qatorining teskari tomoni \" " + teskari Str +" / "."); } xususiy statik String teskari (String str) {if (str == null || str.length () <= 1) return str; teskari qaytish (str.substring (1)) + str.charAt (0); }}
Qadam 5. Ipni qatorlar qatoriga aylantiring, so'ngra birinchi va oxirgi, ikkinchi va ikkinchisini oxirigacha almashtiring
belgilar. Avval satrdagi toCharArray () usuli yordamida satrni bir qator belgilarga aylantiring. Jadvaldagi minus bitta uzunlikka teng bo'lgan oxirgi belgining indeksini oling. Keyin i -ni almashtirib, qatorni takrorlangth belgi va indexOfLastChar - ith har bir iteratsiyadagi belgi. Nihoyat, belgilar qatorini yana qatorga aylantiring.
umumiy sinf StringManipulation {public static void main (String args) {String str = "Salom!"; char charArray = str.toCharArray (); int indexOfLastChar = charArray.length - 1; uchun (int i = 0; i <charArray.length/2; i ++) {char temp = charArray ; charArray = charArray [indexOfLastChar - i]; charArray [indexOfLastChar - i] = temp; } String reversedStr = new String (charArray); System.out.println ("\" " + str +" / "qatorining teskari tomoni \" " + teskari Str +" / "."); }}
Qadam 6. Sizning chiqishingizni ko'rib chiqing
Mana, satrlarni qaytarish uchun ushbu usullarning birortasi natijasi.
5 -dan 4 -usul: Oq bo'shliqni satrda kesib tashlang
Qadam 1. Ipdagi bo'sh joyni kesish nimani anglatishini tushuning
Java -da satrni kesish satrdagi bosh va oxirgi bo'sh joyni olib tashlashni anglatadi. Masalan, agar sizda satr bo'lsa"
Salom Dunyo!
"va siz" Salom, dunyo! "deb yozishni xohlaysizmi, boshida va oxirida bo'sh joy bo'lmasa, siz satrni kesib qo'yishingiz mumkin. String klassi trim () usulini taqdim etadi, bu satr nusxasini qaytaradi. bosh va oxirgi oq bo'sh joy olib tashlanadi yoki agar bo'sh joy bo'lmasa.
Bosqich 2. Bo'sh joyni kesish uchun String ob'ektidagi String sinfining trim () usulidan foydalaning
E'tibor bering, agar trim () usuli null bo'lsa, istisno qiladi. Trim () usuli asl satr tarkibini o'zgartirmaydi, chunki Java -dagi satrlar o'zgarmas, ya'ni mag'lubiyat holati yaratilgandan keyin uni o'zgartirib bo'lmaydi. Aksincha, trim () usuli bo'sh joyi kesilgan yangi qatorni qaytaradi.
Strim trimmedStr = str.trim ();
Qadam 3. Misol qilib ko'ring
Ipning bo'sh joyini qisqartiradigan namuna dasturi:
umumiy sinf StringManipulation {public static void main (String args) {String str = "Salom!"; Strim trimmedStr = str.trim (); System.out.println ("Asl satr \" " + str +" / "."); System.out.println ("Qisqartirilgan satr \" " + trimmedStr +" / "."); }}
5 -usul 5: Stringni ajratish
Qadam 1. Ipni ajratish nimani anglatishini tushuning
Java -da satrni ajratish ma'lum bir ajratuvchi orqali satrni pastki qatorlar qatoriga bo'lish demakdir. Masalan, agar men "qizil, ko'k, yashil, sariq, pushti" qatorni ajratuvchi sifatida vergul bilan ajratsam, {"qizil", "ko'k", "yashil", "sariq", "pushti" qatorini olaman. "}. Ipni ajratishning uch xil usuli.
Qadam 2. Foydalanish
StringTokenizer
satrni belgilash.
Import
java.util. StringTokenizer
. Keyin a ning yangi namunasini yarating
StringTokenizer
tokenize satri va parametr sifatida ajratuvchi bilan. Agar siz ajratgichni parametr sifatida kiritmasangiz, ajratuvchi avtomatik ravishda bo'sh joyga qo'yiladi. Sizda bo'lganidan keyin
StringTokenizer
dan foydalanishingiz mumkin
nextToken ()
har bir tokenni olish usuli.
java.util. Arrays -ni import qilish; java.util. StringTokenizer -ni import qilish; umumiy sinf StringManipulation {public static void main (String args) {String str = "qizil, yashil, ko'k, sariq, pushti"; StringTokenizer tokenizer = yangi StringTokenizer (str, ","); int numberOfTokens = tokenizer.countTokens (); String splitArr = yangi String [numberOfTokens]; for (int i = 0; i <numberOfTokens; i ++) {splitArr = tokenizer.nextToken (); } System.out.println ("\ nOriginal qator:" + str); System.out.println ("Massivni ajratish:" + Arrays.toString (splitArr) + "\ n"); }}
Java 1.4dan oldin
StringTokenizer
class Java -dagi satrlarni ajratish uchun ishlatilgan. Ammo endi, dan foydalanish
StringTokenizer
dan foydalanish tavsiya etilmaydi
Split()
ichida usul
Ip
sinf yoki dan foydalanish
java.util.regex
Qadam 3. dan foydalaning
Ip
sinf
Split()
usul.
The
Split()
usuli ajratuvchi sifatida parametr sifatida qabul qilinadi va tokenlar bilan bir xil bo'lgan pastki qatorlar qatorini qaytaradi.
StringTokenizer
java.util. Arrays -ni import qilish; umumiy sinf StringManipulation {public static void main (String args) {String str = "qizil, yashil, ko'k, sariq, pushti"; String splitArr = str.split (","); System.out.println ("\ nAsl qator:" + str); System.out.println ("Massivni ajratish:" + Arrays.toString (splitArr) + "\ n"); }}
Qadam 4. Ipni ajratish uchun oddiy iboralardan foydalaning
Import
java.util.regex. Pattern
. Dan foydalaning
kompilyatsiya qilish ()
usuli
Naqsh
sinf chegarachini o'rnatadi va keyin beradi
Split()
ajratmoqchi bo'lgan qatorni usuli. The
Naqsh
qatorlar qatorini qaytaradi.
java.util. Arrays -ni import qilish; java.util.regex. Pattern -ni import qilish; umumiy sinf StringManipulation {public static void main (String args) {String str = "qizil, yashil, ko'k, sariq, pushti"; String splitArr = Pattern.compile (",").split (str); System.out.println ("\ nAsl qator:" + str); System.out.println ("Massivni ajratish:" + Arrays.toString (splitArr) + "\ n"); }}
Qadam 5. Sizning chiqishingizni ko'rib chiqing
Mana bu satrlarni ajratish usullaridan birining natijasi.