El objeto es nulo desde la segunda llamada al método

Esto aqui:

Set<String> mySet = new HashSet<>(mMap.get(idName));

crea un nuevo conjunto que es una copia del contenido que tiene en su mapa. Si, en cambio, trabaja directamente en el objeto establecido almacenado en el mapa, también actualiza el contenido del "mapa".

Eso es todo lo que hay que hacer: la diferencia entre modificar el mapa de datos "raíz" y actualizar una copia de esos datos.

Respuesta 1

Como Set es el objeto de tipo Referencia, por primera vez cuando coincide con la condición y luego borra el conjunto, ahora el conjunto queda vacío y el valor correspondiente a se 1convierte en []conjunto vacío. Supongamos que myMap tiene valor: 1, ["1", "2", "3"]

Ahora, cuando ejecuta myMethod(1)por primera vez, borra el conjunto correspondiente al valor de1

Ahora el valor del mapa se convierte en: 1, []

Por lo tanto, nuevamente satisface su condición, if(mySet != null)pero no agrega nada a la htmlvariable ya que el conjunto mySetestá vacío. Entonces, devuelve la variable html vacía.

Respuesta: 2

Así que tengo una aplicación que usa archivos fuente Java y Kotlin (todos ubicados en el directorio / src / main / kotlin porque eventualmente queremos migrar a kotlin de todos modos) y eso genera un ...

¿Hay algún sitio con una explicación completa del algoritmo CLAHE y tal vez algún código de muestra? Hasta ahora solo he encontrado el código para matlab sin explicación y necesito implementar el mío (...

Estoy tratando de extraer una palabra después de una palabra dada. por ejemplo: si mi cadena es "http: // localhost: 8080 / api / rest / loan / application / 1007 / solicitante / 951 / pan", entonces quiero extraer la palabra que viene después ...

Estoy desarrollando una aplicación C # para ejecutar pruebas JUnit automáticamente. Como es complicado mover la ubicación actual donde se ejecuta mi aplicación C #, necesito ejecutar las pruebas JUnit sin ...