לעיתים קרובות אנו צריכים להמיר מחרוזת למערך התווים בתוכניות ג'אווה או להמיר מחרוזת לתו מאינדקס מסוים.
מחרוזת לתו ב-Java
המחלקה String כוללת שלושה שיטות הקשורות לתו. בואו נסתכל עליהן לפני שנסתכל על דוגמה לתוכנית ג'אווה להמרת מחרוזת למערך תווים.
char[] toCharArray()
: שיטה זו ממירה מחרוזת למערך תווים. גודל מערך התווים הוא זהה לאורך המחרוזת.char charAt(int index)
: שיטה זו מחזירה תו באינדקס מסוים של המחרוזת. שימוש בשיטה זו יזריק חריגה מסוגStringIndexOutOfBoundsException
אם הערך של האינדקס הוא שלילי או גדול מאורך המחרוזת.getChars(int srcBegin, int srcEnd, char dst[], int dstBegin)
: שיטה זו היא שיטה מאוד שימושית כאשר ברצונך להמיר חלק מהמחרוזת למערך תווים. שני הפרמטרים הראשונים מגדירים את נקודת ההתחלה והסיום של המחרוזת; התו האחרון שיועתק הוא באינדקס srcEnd-1. התווים מועתקים לתוך מערך התווים מתחילים באינדקס dstBegin ונגמרים ב-dstBegin + (srcEnd-srcBegin) – 1.
בואו נסתכל על דוגמה פשוטה לתוכנית ג'אווה להמרת מחרוזת למערך תווים.
package com.journaldev.string;
public class StringToCharJava {
public static void main(String[] args) {
String str = "journaldev";
//מחרוזת למערך תווים
char[] chars = str.toCharArray();
System.out.println(chars.length);
//תו באינדקס מסוים
char c = str.charAt(2);
System.out.println(c);
//העתקת תווים ממחרוזת למערך תווים
char[] chars1 = new char[7];
str.getChars(0, 7, chars1, 0);
System.out.println(chars1);
}
}
בתוכנית הנ"ל, שימוש ב־toCharArray
ו־charAt
הוא פשוט וברור מאוד. בדוגמת getChars
, התווים הראשונים השבעה של str יועתקו ל־chars1 החל מהאינדקס שלו, שהוא 0. זהו כל העניין של המרת מחרוזת למערך תווים ושל תוכנית Java שממריאה מחרוזת לתו יו. הפניה: מסמך API
Source:
https://www.digitalocean.com/community/tutorials/string-char-array-java