JavaRush /Blog Java /Random-MS /10 Soalan Paling Banyak Ditanya Mengenai String di Jawa
ext4
Tahap

10 Soalan Paling Banyak Ditanya Mengenai String di Jawa

Diterbitkan dalam kumpulan

10 soalan paling kerap ditanya mengenai rentetan di Jawa disebut di sini

[Terjemahan] 10 soalan yang paling banyak ditanya tentang rentetan di Jawa - 1
  1. Bagaimana untuk membandingkan rentetan? Apa yang perlu digunakan: " ==" atau equals()?

    Ringkasnya, " ==" membandingkan rujukan kepada rentetan, tetapi equals()membandingkan nilai yang terkandung dalam rentetan tersebut. Jika anda tidak mahu menyemak bahawa dua rentetan adalah objek yang sama, maka anda harus menggunakan equals().

    Ia juga bagus untuk mengetahui konsep kolam rentetan .

  2. Mengapakah char[]rentetan ( String) diutamakan untuk melindungi maklumat sensitif?

    Rentetan tidak boleh diubah . Ini bermakna apabila rentetan dibuat, ia tidak akan diubah suai sehingga pemungut sampah dijalankan. Dalam kes tatasusunan, agak jelas bahawa kita boleh menukar elemennya. Dengan cara ini, maklumat sensitif (seperti kata laluan) tidak akan disimpan dalam teks yang jelas di mana-mana dalam program.

  3. Bolehkah kita lulus rentetan sebagai parameter apabila menggunakan pernyataan suis ?

    Ya, bermula dari versi 7 JDK. Sebelum ini, dalam versi 6, ini tidak mungkin.

    // java 7 only!
    switch (str.toLowerCase()) {
          case "a":
               value = 1;
               break;
          case "b":
               value = 2;
               break;
    }
  4. Bagaimana untuk menukar rentetan kepada nilai integer?

    int n = Integer.parseInt("10");

    Begitu juga dengan jenis primitif lain di Jawa.

  5. Bagaimana untuk memisahkan rentetan ke dalam garisan yang dibatasi ruang?

    Cara paling mudah ialah menggunakan ungkapan biasa. " \s" bertindak sebagai pengganti untuk aksara ruang putih seperti " ", " \t", " \r", " \n".

    String[] strArray = aString.split("\\s+");
  6. < Apakah kaedah ini sebenarnya substring()?

    Dalam JDK 6, kaedah substring()menunjukkan sebahagian daripada aksara daripada rentetan sedia ada, tetapi tidak mencipta contoh rentetan yang berasingan. Untuk mencipta rentetan baharu, yang diwakili sebagai tatasusunan aksara, anda boleh menambah beberapa rentetan kosong, contohnya, seperti ini:

    str.substring(m, n) + ""

    Hasilnya ialah pelbagai aksara, yang merupakan rentetan baharu kami. Pendekatan ini kadangkala boleh mengurangkan masa pelaksanaan kod kerana pengumpul sampah boleh memusnahkan rentetan besar yang tidak digunakan dan hanya menyimpan subrentetan.

    Dalam Oracle JDK 7, kaedah substring()mencipta tatasusunan aksara baharu tanpa menggunakan yang sedia ada. Anda juga boleh melihat gambar rajah yang mewakili perbezaan antara kaedah substring() dalam JDK 6 dan JDK 7 .

  7. String vs StringBuilder vs StringBuffer

    Stringvs StringBuilder: StringBuilderboleh ubah, yang bermaksud kita boleh menukar kandungannya selepas objek dicipta.

    StringBuildervs StringBuffer: StringBufferdisegerakkan, bermakna ia berfungsi dengan betul apabila digunakan daripada berbilang benang pada masa yang sama, tetapi lebih perlahan daripada StringBuilder.

  8. Bagaimana untuk mengulang baris beberapa kali?

    Dalam Python, kita hanya boleh mendarab rentetan dengan nombor ndan kemudian ia akan berulang n kali. Di Java, kita boleh menggunakan kaedah repeat()daripada StringUtilskelas perpustakaan Apache Commons Lang.

    String str = "abcd";
    String repeated = StringUtils.repeat(str,3);
    //abcdabcdabcd
  9. Bagaimana untuk menukar rentetan kepada tarikh?

    String str = "Sep 17, 2013";
    Date date = new SimpleDateFormat("MMMM d, yy", Locale.ENGLISH).parse(str);
    System.out.println(date);
    //Tue Sep 17 00:00:00 EDT 2013
  10. Bagaimana untuk mengira bilangan kemunculan watak tertentu dalam rentetan?

    Gunakan kelas StringUtilsdaripada perpustakaan Apache Commons Lang.

    int n = StringUtils.countMatches("11112222", "1");
    System.out.println(n);
Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION