JavaRush /جاوا بلاگ /Random-SD /جاوا ۾ اسٽرنگ ڪلاس

جاوا ۾ اسٽرنگ ڪلاس

گروپ ۾ شايع ٿيل
جاوا ۾ اسٽرنگ ڪلاس جاوا ۾ اسٽرنگ سان ڪم ڪرڻ لاءِ ٺهيل آهي. جاوا پروگرام ۾ بيان ڪيل سڀئي اسٽرنگ لٽرلز (مثال طور، "abc") اسٽرنگ ڪلاس جا مثال آهن. اچو ته ان جي اهم خصوصيتن تي نظر رکون:
  1. ڪلاس لاڳو ڪري ٿو Serializable۽ انٽرفيس CharSequence. جيئن ته اهو پيڪيج ۾ شامل آهي java.lang، ان کي درآمد ڪرڻ جي ضرورت ناهي.
  2. جاوا ۾ اسٽرنگ ڪلاس هڪ فائنل ڪلاس آهي ۽ ٻار نٿا ٿي سگهن.
  3. اسٽرنگ ڪلاس هڪ غير بدلائيندڙ طبقو آهي، مطلب ته ان جي شين جي ٺهڻ کان پوءِ تبديل نه ٿي ڪري سگهجي. String اعتراض تي ڪو به عمل جيڪو String ڪلاس جي ھڪڙي اعتراض جي نتيجي ۾ ھڪڙو نئون اعتراض ٺاھيندو.
  4. ان جي بدلجڻ جي ڪري، اسٽرنگ ڪلاس جون شيون ٿريڊ محفوظ آھن ۽ گھڻن موضوعن واري ماحول ۾ استعمال ڪري سگھجن ٿيون.
  5. جاوا ۾ هر شئي کي هڪ طريقي سان اسٽرنگ ۾ تبديل ڪري سگهجي ٿو toStringته سڀئي جاوا ڪلاس ڪلاس کان ورثي ۾ آهن Object.
جاوا ۾ اسٽرنگ ڪلاس - 1

جاوا اسٽرنگ سان ڪم ڪرڻ

هي جاوا ۾ سڀ کان عام استعمال ٿيندڙ طبقن مان هڪ آهي. اهو طريقو آهي هڪ اسٽرنگ ۾ ڪجهه اکرن جو تجزيو ڪرڻ، اسٽرنگ جي مقابلي ۽ ڳولها لاءِ، سب اسٽرنگ ڪڍڻ، اسٽرنگ جي ڪاپي ٺاهي سڀني اکرن کي لوئر ۽ اپر ڪيس ۾ تبديل ڪرڻ، ۽ ٻيا. اسٽرنگ ڪلاس جي سڀني طريقن جي هڪ فهرست سرڪاري دستاويزن ۾ ملي سگهي ٿي . جاوا پڻ هڪ سادي ميکانيزم کي لاڳو ڪري ٿو ڪنٽينٽيشن (ڳنڍڻ واري تارن) لاءِ، پرائمٽيوز کي اسٽرنگ ۾ تبديل ڪرڻ ۽ ان جي برعڪس. اچو ته جاوا ۾ String طبقي سان ڪم ڪرڻ جا ڪجهه مثال ڏسو.

تار ٺاهڻ

اسٽرنگ ڪلاس جو هڪ مثال ٺاهڻ جو آسان طريقو اهو آهي ته ان کي اسٽرنگ لٽريچر جي قدر تفويض ڪجي:
String s = "I love movies";
بهرحال، اسٽرنگ ڪلاس ۾ ڪيترائي ٺاھيندڙ آھن جيڪي توھان کي اجازت ڏين ٿا:
  • هڪ خالي اسٽرنگ تي مشتمل هڪ اعتراض ٺاهيو
  • string variable جي ڪاپي ٺاهيو
  • ڪردار جي صف جي بنياد تي هڪ اسٽرنگ ٺاهيو
  • بائيٽ ايري جي بنياد تي هڪ اسٽرنگ ٺاهيو (اڪائونٽ انڪوڊنگ ۾ وٺندي)
  • وغيره

تار جو اضافو

جاوا ۾ ٻه تار شامل ڪرڻ بلڪل سادو آهي استعمال ڪندي +. جاوا توهان کي اجازت ڏئي ٿو ته ٻئي متغير ۽ اسٽرنگ لٽرلز هڪ ٻئي ڏانهن شامل ڪريو:
public static void main(String[] args) {
    String day = "Day";
    String and = "And";
    String night = "Night";

    String dayAndNight = day + " " + and + " " + night;
}
اسٽرنگ ڪلاس جي شين کي ٻين ڪلاسن جي شين سان شامل ڪرڻ سان، اسان پوئين کي گهٽائي اسٽرنگ فارم ۾ آڻينداسين. ٻين طبقن جي شين کي اسٽرنگ جي نمائندگي ۾ تبديل ڪرڻ کي toStringاعتراض تي هڪ امڪاني طريقي سان ڪال ذريعي ڪيو ويندو آهي. اچو ته ان کي هيٺين مثال سان ڏيکاريون:
public class StringExamples {
    public static void main(String[] args) {
        Human max = new Human("Max");
        String out = "java object: " + max;
        System.out.println(out);
        // Output: Java object: Person named Max
    }

    static class Human {
        private String name;

        public Human(String name) {
            this.name = name;
        }

        @Override
        public String toString() {
            return "The Man with the Name" + name;
        }
    }
}

اسٽرنگ جو مقابلو

تارن جو مقابلو ڪرڻ لاءِ، توھان ھي طريقو استعمال ڪري سگھو ٿا equals():
public static void main(String[] args) {
    String x = "Test String";
    System.out.println("Test String".equals(x)); // true
}
جڏهن تارن جو مقابلو ڪرڻ وقت ڪيس اسان لاءِ اهم نه آهي، اسان کي اهو طريقو استعمال ڪرڻو پوندو equalsIgnoreCase():
public static void main(String[] args) {
       String x = "Test String";
       System.out.println("test string".equalsIgnoreCase(x)); // true
}

ڪنهن شئي/پريميٽ کي اسٽرنگ ۾ تبديل ڪرڻ

ڪنهن به جاوا ڪلاس جي مثال کي تبديل ڪرڻ لاءِ يا ڪنهن به ابتدائي ڊيٽا جي قسم کي اسٽرنگ نمائندگي ۾، توهان استعمال ڪري سگهو ٿا طريقو String.valueOf():
public class StringExamples {
    public static void main(String[] args) {
        String a = String.valueOf(1);
        String b = String.valueOf(12.0D);
        String c = String.valueOf(123.4F);
        String d = String.valueOf(123456L);
        String s = String.valueOf(true);
        String human = String.valueOf(new Human("Alex"));

        System.out.println(a);
        System.out.println(b);
        System.out.println(c);
        System.out.println(d);
        System.out.println(s);
        System.out.println(human);
        /*
        Output:
        1
        12.0
        123.4
        123456
        true
        Person named Alex
         */
    }

    static class Human {
        private String name;

        public Human(String name) {
            this.name = name;
        }

        @Override
        public String toString() {
            return "The Man with the Name" + name;
        }
    }
}

ھڪڙي تار کي ھڪڙي عدد ۾ تبديل ڪرڻ

گهڻو ڪري توهان کي اسٽرنگ کي نمبر ۾ تبديل ڪرڻ جي ضرورت آهي. پرائمري قسم جي لفافي طبقن جا طريقا آهن جيڪي هن مقصد کي پورو ڪن ٿا. اهي سڀئي طريقا لفظ پارس سان شروع ٿين ٿا. Integerهيٺ ڏنل انگن اکرن ( ) ۽ جزوي ( Double) انگن ۾ اسٽرنگ جي ترجمي تي غور ڪريو :
public static void main(String[] args) {
    Integer i = Integer.parseInt("12");
    Double d = Double.parseDouble("12.65D");

    System.out.println(i); // 12
    System.out.println(d); // 12.65
}

تارن جي مجموعن کي اسٽرنگ نمائندگي ۾ تبديل ڪرڻ

جيڪڏهن توهان کي ڪجهه مجموعن جي سڀني عنصرن کي تبديل ڪرڻ جي ضرورت آهي اسٽرنگ جي نمائندگي ۾ هڪ خودمختيار ڊيليميٽر ذريعي، توهان جاوا اسٽرنگ ڪلاس جا هيٺيان طريقا استعمال ڪري سگهو ٿا:
  • join(CharSequence delimiter, CharSequence... elements)
  • join(CharSequence delimiter, Iterable<? extends CharSequence> elements)
ڪٿي delimiterآهي عنصر جدا ڪندڙ، ۽ elementsهڪ اسٽرنگ صف/ اسٽرنگ گڏ ڪرڻ جو مثال آهي. اچو ته هڪ مثال ڏسون جتي اسان اسٽرنگ جي لسٽ کي اسٽرنگ ۾ تبديل ڪندا آهيون، هر هڪ کي سيميڪولن سان الڳ ڪري:
public static void main(String[] args) {
    List<String> people = Arrays.asList(
            "Philip J. Fry",
            "Turanga Leela",
            "Bender Bending Rodriguez",
            "Hubert Farnsworth",
            "Hermes Conrad",
            "John D. Zoidberg",
            "Amy Wong"
    );

    String peopleString = String.join("; ", people);
    System.out.println(peopleString);
    /*
    Output:
    Philip J. Fry; Turanga Leela; Bender Bending Rodriguez; Hubert Farnsworth; Hermes Conrad; John D. Zoidberg; Amy Wong
     */
}

تارن جي هڪ قطار ۾ ورهائڻ

هي آپريشن هن طريقي سان ڪيو ويندو آهي split(String regex) جدا ڪندڙ هڪ اسٽرنگ باقاعده اظهار آهي regex. هيٺ ڏنل مثال ۾، اسان ان جي سامهون آپريشن ڪنداسين جيڪو اسان اڳئين مثال ۾ ڪيو هو.
public static void main(String[] args) {
    String people = "Philip J. Fry; Turanga Leela; Bender Bending Rodriguez; Hubert Farnsworth; Hermes Conrad; John D. Zoidberg; Amy Wong";

    String[] peopleArray = people.split("; ");
    for (String human : peopleArray) {
        System.out.println(human);
    }
    /*
    Output:
    Philip J. Fry
    Turanga Leela
    Bender Bending Rodriguez
    Hubert Farnsworth
    Hermes Conrad
    John D. Zoidberg
    Amy Wong
     */
}

هڪ لڪير ۾ هڪ عنصر جي پوزيشن جو تعين ڪرڻ

جاوا ٻوليءَ ۾، String طريقن جو هڪ سيٽ مهيا ڪري ٿو هڪ تار ۾ ڪردار/سبسٽرنگ جي پوزيشن کي طئي ڪرڻ لاءِ:
  1. indexOf(int ch)
  2. indexOf(int ch, int fromIndex)
  3. indexOf(String str)
  4. indexOf(String str, int fromIndex)
  5. lastIndexOf(int ch)
  6. lastIndexOf(int ch, int fromIndex)
  7. lastIndexOf(String str)
  8. lastIndexOf(String str, int fromIndex)
ڪٿي:
  1. ch- علامت جيڪو توھان ڳولي رھيا آھيو ( char)
  2. str- ڳولها تار
  3. fromIndex- پوزيشن جنهن مان عنصر ڳولڻ لاء
  4. طريقا indexOf- مليل پهرين عنصر جي پوزيشن واپس ڪريو
  5. طريقا lastIndexOf- آخري عنصر جي پوزيشن کي واپس ڏيو
جيڪڏهن عنصر جيڪو توهان ڳولي رهيا آهيو اهو نه مليو آهي، طريقا واپس آڻيندا لائن -1. اچو ته ڪوشش ڪريون اکر جو سيريل نمبر A, K, Z, Яانگريزي الفابيٽ ۾، پر ياد رکو ته جاوا ۾ هڪ تار ۾ اکرن جي انڊيڪسنگ صفر کان شروع ٿئي ٿي:
public static void main(String[] args) {
    String alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    System.out.println(alphabet.indexOf('A')); // 0
    System.out.println(alphabet.indexOf('K')); // 10
    System.out.println(alphabet.indexOf('Z')); // 25
    System.out.println(alphabet.indexOf('Я')); // -1
}

تار مان ذيلي اسٽرنگ ڪڍڻ

اسٽرنگ مان سبسٽرنگ ڪڍڻ لاءِ، جاوا ۾ اسٽرنگ ڪلاس طريقا مهيا ڪري ٿو:
  • substring(int beginIndex)
  • substring(int beginIndex, int endIndex)
اچو ته ڏسون ته اسان ڪيئن استعمال ڪري سگھون ٿا عنصر جي پوزيشن ۽ سبسٽرنگ ڪڍڻ جا طريقا ان جي رستي مان فائل جو نالو حاصل ڪرڻ لاءِ:
public static void main(String[] args) {
    String filePath = "D:\\Movies\\Futurama.mp4";
    int lastFileSeparatorIndex = filePath.lastIndexOf('\\');
    String fileName = filePath.substring(lastFileSeparatorIndex + 1);
    System.out.println(fileName); //9
}

اسٽرنگ کي اپر/ لوئر ڪيس ۾ تبديل ڪريو:

اسٽرنگ ڪلاس اسٽرنگ کي اپر ڪيز ۽ لوئر ڪيز ۾ تبديل ڪرڻ جا طريقا مهيا ڪري ٿو:
  • toLowerCase()
  • toUpperCase()
اچو ته ڏسو ته اهي طريقا ڪيئن ڪم ڪن ٿا مثال استعمال ڪندي:
public static void main(String[] args) {
    String fry = "Philip J. Fry";

    String lowerCaseFry = fry.toLowerCase();
    String upperCaseFry = fry.toUpperCase();

    System.out.println(lowerCaseFry); // philip j. fry
    System.out.println(upperCaseFry); // PHILIP J. FRY
}
هن جاوا ڪلاس سان ڪم ڪرڻ جاوا رش آن لائن ڪورس جي شروعاتي سطحن تي اڀياس ڪيو ويو آهي:

اضافي ذريعن

اسٽرنگ ڪلاس بابت ڄاڻ پڻ ڏني وئي آهي ٻين مضمونن ۾ JavaRush ڪميونٽي ۾:
  1. جاوا ۾ اسٽرنگس - هي آرٽيڪل جاوا ۾ تارن سان ڪم ڪرڻ تي ڪجهه بنيادي شيون شامل ڪري ٿو.
  2. جاوا اسٽرنگ. انٽرويو سوال ۽ جواب، حصو 1 - هي آرٽيڪل موضوع تي انٽرويو سوالن تي بحث ڪري ٿو String، ۽ وضاحتن ۽ ڪوڊ مثالن سان سوالن جا جواب پڻ مهيا ڪري ٿو.
  3. جاوا ۾ اسٽرنگس (class java.lang.String) - ھي آرٽيڪل اسٽرنگ ڪلاس جو گہرا تجزيو مهيا ڪري ٿو، ۽ ھن طبقي سان ڪم ڪرڻ جي پيچيدگين تي پڻ بحث ڪري ٿو.
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION