Częstotliwość występowania liter w kolekcji

0

Witam, mógłby ktoś pomoc z zadaniem https://ibb.co/4JGJy4L
Kompilator mnie zawiesza po pierwszym miesiącu zawsze

import java.util.*;

public class Zadanie4 {
    public static void main(String[] args) {
        List<String> miesiace = new ArrayList<String>();
        Map<Integer, String> mapa = new HashMap<>();
        String[] alf = {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","ń","o","p","r","s","t","u","ó","w","x","y","z","ż","ź"};
        miesiace.add("styczeń");
        miesiace.add("luty");
        miesiace.add("marzec");
        miesiace.add("kwiecień");
        miesiace.add("maj");
        miesiace.add("czerwiec");
        miesiace.add("lipiec");
        miesiace.add("sierpień");
        miesiace.add("wrzesień");
        miesiace.add("październik");
        miesiace.add("listopad");
        miesiace.add("grudzień");
        char bufC;
        int j=0;
        String buf;
        for (int i=0;i<=27;i++) {
            buf = miesiace.get(i);
            while (j<=miesiace.get(j).length()){
                bufC=buf.charAt(j);
                j++;
                System.out.println(bufC);
            }
//            mapa.put(i, alf[i]+" - ");
//            System.out.print(mapa);

        }
    }
}
0

Jeśli chcesz to robić tak łopatologicznie, to potrzebujesz 3 zagnieżdżonych pętli:

  1. iteruję po wszystkich znakach
  2. iteruję po wszystkich miesiącach
  3. iteruję po wszystkich znakach z miesiąca

Wewnątrz 3 pętli porównujesz bieżący znak z miesiąca ze znakiem z (1) i jak się zgadzają to podbijasz counter dla tego znaku.

1

Ja bym zrobił to tak - zadeklarował mapę <Character, Integer>, brał kolejny element z listy, dał do pętli for (char c : twojMiesiac.toCharArray()), potem warunek if(mapa.containsKey(ch) to mapa.put( ch, (Integer) mapa.get(ch) + 1) a jak nie to wsadzasz ten znak i przypisujesz mu wartość 1 ;) Podpunkty 4 i 5 są raczej banalne więc myślę, że sobie spokojnie sam poradzisz :D

0

Kilka dni temu był identyczny post.

Kolekcja Map,String

0

Dzięna

1 użytkowników online, w tym zalogowanych: 0, gości: 1