Cómo verificar el número de instancias de un dominio en un archivo de texto

Tengo un archivo de texto que contiene dominios como

ABC.COM
ABC.COM
DEF.COM
DEF.COM
XYZ.COM

Quiero leer los dominios del archivo de texto y verificar cuántas instancias de dominios hay. Leer un archivo de texto es fácil, pero estoy confundido sobre cómo verificar la cantidad de instancias de dominios. Por favor ayuda.

Respuesta 1
    List<String> domains=new ArrayList<String>(); // values from your file
    domains.add("abc.com");
    domains.add("abc.com");
    domains.add("xyz.com");
   //added for example
    Map<String,Integer> domainCount=new HashMap<String, Integer>();
    for(String domain:domains){
        if(domainCount.containsKey(domain)){
            domainCount.put(domain, domainCount.get(domain)+1);
        }else
            domainCount.put(domain, new Integer(1));

    }
    Set<Entry<String, Integer>> entrySet = domainCount.entrySet();
    for (Entry<String, Integer> entry : entrySet) {
        System.out.println(entry.getKey()+" : "+entry.getValue());
    }
Respuesta: 2

Dividir por espacio (las instancias de cadena tienen método split), iterar a través de la matriz de resultados y usar Map<String(domainName), Integer(count)>, cuando el dominio está en el mapa, que aumentar el recuento en el mapa en 1, cuando no lo está, poner el nombre de dominio en el mapa y establecer 1 como valor.

Respuesta: 3

La mejor solución es usar un Mapa para mapear las palabras Mapa con frecuencia.

Map<String,Integer> frequency = new LinkedHashMap<String,Integer>();

  • Leer archivo

    BufferedReader in = new BufferedReader(new FileReader("infilename"));
    String str;
    while ((str = in.readLine()) != null) {
        buildMap(str);
    }
    in.close();
    
  • Método de mapa de compilación: puede dividir las URL en su archivo leyéndolas línea por línea y dividiéndolas con delimitador (en el espacio de su caso).

    String [] words = line.split(" ");   
    for (String word:words){
        Integer f = frequency.get(word);
        if(f==null) f=0;
        frequency.put(word,f+1);
    }
    
  • Descubra un dominio particular con:

    frequency.get(domainName)

Ref: frecuencia de conteo de una cuerda

Respuesta: 4

Necesito conectarme al servidor remoto a través de FTPS (implícito o explícito). Me conecté con éxito al servidor a través de FileZilla. También probé el código para recuperar el archivo de ftp público: ftp.mozilla.org Ahora necesito ...

Quiero imprimir la fecha y la hora en el archivo que no está en la pantalla, este es mi código: String fileName = NameEnter.getText (); Logger logger = Logger.getLogger ("puzzleNumberGame.securityScreen"); ...

El siguiente fragmento de jsp: <% while (set.next ()) {%> <li> <% - instrucción 3 -%> <a class = "thumb" href = "/ home / non-admin / project uploads / usuarios del proyecto / "<% +%> <...

Necesito obtener el hostId de mi servidor usando un programa Java. ¿Hay algo en la API de Java incorporado que me pueda ayudar a hacer esto? lab.com $ hostid f9y7777j -> ¿Cómo puedo obtener esto usando java?