Java ap­akš­virknes metode tiek izmantota, lai izvilktu ap­akš­vir­kni no lielākas virknes. To var izmantot divos dažādos veidos: vai nu atdalot virkni no indeksa līdz galam, vai arī iz­man­to­jot iepriekš definētu ap­akš­virknes sākuma un beigu indeksu.

Kas ir Java ap­akš­virknes metode un kā to izmanto?

Java valodā rakstzī­mes, cipari un speciālie simboli var tikt apvienoti Java virknē. Ja vēlaties izvilkt konkrētu apakškopu no lielākas virknes, jums ir vairākas iespējas. Metode Java String.split() sadala visu virkni at­se­viš­ķās daļās, lai, piemēram, sniegtu skaidrāku pārskatu par virkni. Metode substring() iet vēl vienu soli tālāk un atgriež tikai to virknes daļu, kuru jūs definējat. Jūs varat definēt, kuru virknes daļu vēlaties izgūt, iz­man­to­jot tikai sākuma indeksu vai gan sākuma, gan beigu indeksu. Šajā apmācībā mēs ie­pa­zīs­ti­nā­sim ar Java metodi substring() tās dažādajās formās.

Kā lietot Java substring() ar beginIndex

Kā minēts iepriekš, ir divi veidi, kā izmantot Java substring() metodi. Pirmais definē tikai iz­gūs­ta­mās ap­akš­virknes sākuma punktu. Tas sadala virkni no šī indeksa līdz virknes pēdējam simbolam. Tās sintakse izskatās šādi:

String substring(int beginIndex)
java

Lai izmantotu substring(), vispirms ievadiet virkni, no kuras vēlaties izgūt ap­akš­vir­kni. Tad iz­man­to­jiet veselu skaitli, lai definētu, kur ap­akš­virknei jāsākas. Izvadi var apskatīt ar Java komandu System.out.println. Metode darbojas ie­kļau­jo­ši, kas nozīmē, ka arī rakstzīme, kas atrodas ievadītā indeksa pozīcijā, tiks atdalīta. Ja beginIndex vērtība ir mazāka par 0 vai lielāka par teksta faktisko garumu, tiks parādīts kļūdas ziņojums.

Ap­ska­tī­sim vienkāršu piemēru, lai redzētu, kā tieši substring() darbojas Java. Iz­vei­do­sim virkni un pēc tam izvilksim ap­akš­vir­kni.

public class Main {
	public static void main(String args[]) {
	String Str = new String("This is an example. This is another sentence.");
	System.out.print("The substring is: ");
	System.out.println(Str.substring(20));
	}
}
java

Kad pa­lai­dī­siet kodu, iegūsiet šādu rezultātu:

The substring is: This is another sentence.
java

Protams, tas darbojas tikpat labi arī ar cipariem:

public class Main {
	public static void main(String args[]) {
	String Str = new String("192.448.782.1142");
	System.out.print("The last four digits are: ");
	System.out.println(Str.substring(12));
	}
}
java

Šeit ir rezultāts:

The last four digits are: 1142
java

Kā lietot substring() kopā ar beginIndex un endIndex

Otrais veids, kā izmantot Java substring() metodi, ļauj labāk kontrolēt rezultātā iegūto ap­akš­vir­kni. Jūs ne tikai no­rā­dī­siet ap­akš­virknes sākuma punktu, bet arī beigu punktu. Sintakse izskatās šādi:

String substring(int beginIndex, int endIndex)
java

beginIndex ir ie­kļau­jošs, bet endIndex ir iz­slē­dzošs. Vēlreiz aplūkosim vienkāršu piemēru:

public class Main {
	public static void main(String args[]) {
	String Str = new String("This is an example. This is another sentence.");
	System.out.print("The substring is: ");
	System.out.println(Str.substring(8, 18));
	}
}
java

Rezultāts ir:

The substring is: an example
java

Jūs varat arī viegli izvilkt ap­akš­vir­kni no viena vārda. Nākamajā piemērā mēs iz­vei­do­sim iepirkumu sarakstu:

public class Main {
	public static void main(String args[]) {
	String Str = new String("Eggs, Honey, Milk, Bread");
	System.out.print("The substring is: ");
	System.out.println(Str.substring(7, 10));
	}
}
java

Jaunais izvades rezultāts iz­ska­tī­sies šādi:

The substring is: one
java

Pēdējā piemērā parādīsim praktisku Java substring() metodes lie­to­ša­nas gadījumu. Ie­do­mā­jie­ties, ka esat saņēmis klientu datus noteiktā formātā. Ja vēlaties izdalīt tikai daļu no šīs in­for­mā­ci­jas, substring() ir ideāls ri­si­nā­jums. Ap­ska­tī­sim kodu:

public class Main {
	public static void main(String args[]) {
	String Str = new String("247: Taylor, Javal|taylorj@example.com|London|12.04.1972");
	System.out.print("Here is the customer’s email address: ");
	System.out.println(Str.substring(19, 38));
	}
}
java

Šeit ir izvade:

Here is the customer’s email address: taylorj@example.com
java
Go to Main Menu