JavaRush /Блоги Java /Random-TG /Сатрҳо дар Java
articles
Сатҳи

Сатрҳо дар Java

Дар гурӯҳ нашр шудааст
Дар ин дарс мо тарзи кор бо сатрҳоро дар Java меомӯзем. Сатрҳо, ки дар барномасозӣ хеле васеъ истифода мешаванд, пайдарпайии аломатҳо мебошанд. Дар забони барномасозии Java сатрҳо an object мебошанд. Платформаи Java синфро Stringбарои эҷод ва коркарди сатрҳо таъмин мекунад. Сатрҳо дар Java - 1

Эҷоди сатрҳо

Роҳи соддатарини сохтани сатр чунин аст:
String greeting = "Hello world!";
Дар ин ҳолат, "Салом Ҷаҳон!" як сатри аслӣ (яъне доимӣ) аст, ки аз пайдарпаии аломатҳои дар нохунак дохилшуда иборат аст. Ҳар вақте ки компилятор бо сатри литералӣ дучор мешавад, он an objectи навъи Stringдорои арзишро эҷод мекунад, дар ҳолати мо, "Салом Ҷаҳон!". Мисли ҳама гуна an objectи дигар, сатрро бо истифода аз калимаи калидӣ сохтан мумкин аст new. Синф Stringдорои се конструктор аст, ки ба шумо имкон медиҳад an objectро бо истифода аз манбаъҳои гуногун, ба мисли массиви аломатҳо созед .
char[] helloArray = {'h', 'e', 'l', 'l', 'o', '.'};
String helloString = new String(helloArray);
System.out.println(helloString);
Сатри охирини мисол саломро дар экран чоп мекунад . Синф Stringтағирнопазир аст, бинобар ин вақте ки мо an objectро эҷод мекунем, мо онро тағир дода наметавонем. Баъзе усулҳое, ки мо дар поён дида мебароем, метавонанд инро ислоҳ кунанд. Зеро Stringтағирнопазир, ин усулҳо сатри наверо, ки натиҷаи амалиётро дар бар мегирад, эҷод ва бармегардонанд.

Дарозии сатри Java

Усулҳои ба даст овардани маълумот дар бораи сатр усулҳои дастрасӣ номида мешаванд. Яке аз ин усулхо length(). Он шумораи аломатҳоро дар сатр бармегардонад. Дар мисоли зерин lenон 17 хоҳад буд:
String palindrome = "Dont saw I saw Tod";
int len = palindrome.length();
Тағирёбанда palindromeдорои палиндром аст, яъне. калима ё ҷумлае, ки ҳар ду тараф якхела хонда мешавад. Биёед як барномаи хурде нависем, ки палиндромро баргардонад. Мо усули charAt(i), ки аломати i -уми сатрро бармегардонад, аз 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Ин code сатри наверо, ки ба он замима шудааст, бармегардонад string2. Шумо инчунин метавонед ин усулро бо сатри литерал истифода баред:
"My name is ".concat("Rumplestiltskin");
Аксар вақт сатрҳо бо истифода аз +оператори “ ” пайваст карда мешаванд, мисол:
"Hello," + " world" + "!"
Дар натиҷа сатри " Салом, ҷаҳон!" " Оператори " +" барои намоиши иттилоот васеъ истифода мешавад, масалан:
String string1 = "saw I was ";
System.out.println("Dot " + string1 + "Tod");
Рамз " Нукта дидам, ки ман Тод будам " мебарояд. Чунин пайвастшавӣ метавонад дар якҷоягӣ бо ҳама гуна an objectҳои дигар истифода шавад. Барои an objectҳое, ки сатр нестанд, усул даъват карда мешавад 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);
шумо метавонед ин codeро истифода баред:
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