JavaRush /Blog Jawa /Random-JV /Ngopi #115. Cara prasaja kanggo nglumpukake obyek ing Jaw...

Ngopi #115. Cara prasaja kanggo nglumpukake obyek ing Jawa. charAt () cara - carane nggunakake ing Jawa

Diterbitake ing grup

Cara sing gampang kanggo nglumpukake obyek ing basa Jawa

Sumber: Dev.to Ing conto iki, kita bakal sinau carane nyederhanakake pengelompokan kanggo obyek Peta sing ngemot koleksi minangka nilai. Ngopi #115.  Cara prasaja kanggo nglumpukake obyek ing Jawa.  cara charAt() - carane nggunakake ing Jawa - 1Contone, kita duwe obyek Peta sing kuncine yaiku Integer lan nilai-nilai kasebut minangka array saka strings:
Grouper<Integer, String> grouper = new ArrayListGrouper<>();
        grouper.put(1, "a");
        grouper.put(1, "b");
        grouper.put(1, "c");
        grouper.put(1, "c");
        grouper.put(2, "c");
asil:
{1=[a, b, c, c], 2=[c]}
Kabeh sing kudu ditindakake yaiku nemtokake strategi pengelompokan. Contone, kelas ArrayListGrouper sing wis ditemtokake nggunakake ArrayList minangka strategi . Kita mesthi bisa nemtokake Grouper anyar sing bakal nggunakake GroupingStrateg sing beda . Saiki ayo ngganti ArrayList dadi HashSet kanggo nggawe unsur unik:
public class HashSetGrouper<K, V> extends Grouper<K, V> {

    public HashSetGrouper() {
        super(HashSet::new);
    }
}
Banjur kita nyoba:
@Test
    public void testHashSetGrouper() {
        Grouper<Integer, String> grouper = new HashSetGrouper<>();
        grouper.put(1, "a");
        grouper.put(1, "b");
        grouper.put(1, "c");
        grouper.put(1, "c");
        grouper.put(2, "c");
        System.out.println(grouper);

    }
asil:
{1=[a, b, c], 2=[c]}
Tombol 1 saiki duwe set sing nilai c ora diulang. Kode conto dikirim ing Github .

charAt () cara - carane nggunakake ing Jawa

Source: FreeCodeCamp Metode charAt () ing Jawa ngasilake nilai karakter char ing senar ing indeks tartamtu utawa tartamtu. Dina iki kita bakal weruh carane nggunakake charAt () cara , miwiti karo sintaks sawijining, lan banjur katon ing sawetara conto lan kasus nggunakake.

Cara nggunakake metode Java charAt().

Mangkene sintaks kanggo metode charAt() katon kaya :
public char charAt(int index)
Elinga yen karakter bali saka senar nggunakake cara charAt () saka jinis data char . Kita bakal weruh carane iki mengaruhi concatenation nilai bali ing wayahe. Saiki ayo deleng conto:
public class Main {
  public static void main(String[] args) {

    String greetings = "Hello World";

    System.out.println(greetings.charAt(0));
    // H
  }
}
Ing kode ing ndhuwur, string kita, sing disimpen ing variabel sing disebut salam , ujar "Hello World". Kita nggunakake cara charAt () kanggo entuk karakter ing indeks 0. Karakter kasebut yaiku huruf H. Karakter pisanan bakal tansah ana ing indeks 0, kaloro ing indeks 1, lan sateruse. Spasi ing antarane substrings uga dianggep minangka indeks. Ing conto ing ngisor iki, kita bakal weruh apa sing kedadeyan nalika kita nyoba nyambungake karakter bali sing beda. Concatenation tegese nggabungake loro utawa luwih nilai bebarengan (ing umume kasus, istilah iki digunakake kanggo nyambungake karakter utawa substrings ing senar).
public class Main {
  public static void main(String[] args) {
    String greetings = "Hello World";

    char ch1 = greetings.charAt(0); // H
    char ch2 = greetings.charAt(4); // o
    char ch3 = greetings.charAt(9); // l
    char ch4 = greetings.charAt(10); // d

    System.out.println(ch1 + ch2 + ch3 + ch4);
    // 391
  }
}
Nggunakake metode charAt () , kita entuk karakter kanthi indeks 0, 4, 9 lan 10, yaiku huruf H, o, l lan d. Kita banjur nyoba nyetak lan nyambungake karakter kasebut:
System.out.println(ch1 + ch2 + ch3 + ch4);
Nanging tinimbang bali "Tahan", kita entuk 391. Iki amarga nilai bali ora strings maneh, nanging jinis char . Dadi nalika kita concatenate wong, interpreter nambah Nilai ASCII tinimbang. H nduweni nilai ASCII 72, o nduweni nilai 111, l nduweni nilai 108, lan d nduweni nilai 100. Yen kita nambahake bebarengan, kita entuk 391, sing bali ing conto pungkasan.

Kesalahan StringIndexOutOfBoundsException

Nalika kita ngliwati nomer urutan sing luwih gedhe tinimbang jumlah karakter ing senar, kita entuk kesalahan StringIndexOutOfBoundsException ing konsol. Kesalahan iki uga ditrapake kanggo panggunaan indeksasi negatif, sing ora didhukung ing Jawa. Ing basa pemrograman kaya Python sing ndhukung indeksasi negatif, pass -1 bakal menehi karakter utawa nilai pungkasan ing set data, padha karo carane 0 tansah ngasilake karakter pisanan. Iki contone:
public class Main {
  public static void main(String[] args) {
    String greetings = "Hello World";

    char ch1 = greetings.charAt(20);

    System.out.println(ch1);

    /* Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 20
    */
  }
}
Ing kode ing ndhuwur kita wis ngliwati indeks 20: char ch1 = greetings.charAt(20); , sing ngluwihi jumlah karakter ing variabel salam kita , mula entuk kesalahan. Sampeyan bisa ndeleng pesen kesalahan sing dikomentari ing blok kode ing ndhuwur. Uga, yen kita ngliwati nilai negatif kaya iki: char ch1 = salam.charAt (-1); , banjur kita entuk kesalahan sing padha.

Kesimpulan

Ing artikel iki, kita sinau carane nggunakake cara charAt () ing Jawa. Kita weruh carane ngasilake karakter ing senar adhedhasar nomer indeks lan apa sing kedadeyan nalika kita nggabungake karakter kasebut. Kita uga ngedika bab sawetara kasus ngendi sampeyan bisa njaluk respon kesalahan nalika nggunakake cara charAt () ing Jawa.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION