Geral
Programação Orientada a Objetos COM230
Semana 5
0

Questão

Em Java, os elementos do Map são armazenados em pares chave/valor. As chaves são valores exclusivos associados a valores individuais. Um Mapa não pode conter chaves duplicadas, e cada chave está associada a um único valor. Assim, leia o texto a seguir sobre o uso de Mapas na orientação a objetos:

“Maps associam chaves a valores. As chaves em um Map devem ser únicas, mas os valores associados não precisam ser. Se um Map contém chaves únicas e valores únicos, diz-se que implementa um mapeamento de um para um. Se somente as chaves são únicas, diz-se que o Map implementa um mapeamento de muitos para um – muitas chaves podem mapear para um valor” (DEITEL; DEITEL, 2016, p. 560).

DEITEL, P.; DEITEL, H. Java: como programar. 10. ed. São Paulo: Pearson Education do Brasil, 2016.

Sobre a utilização de Maps e as suas características, avalie as afirmativas a seguir.


I. Maps diferem de Sets pelo fato de que Maps contêm chaves e valores, enquanto Sets contêm somente valores.

II. Se tentar armazenar uma entrada com a mesma chave de uma entrada anterior, a segunda entrada será salva, automaticamente, com outro índice.

III. Quando inserimos um item em um Mapa de Hash não ordenado, ele pode residir em qualquer posição no objeto Mapa.

IV. A função Hash é o núcleo da implementação de um Mapa de Hash. O hashing ideal deve produzir um índice diferente para cada chave, impedindo, completamente, as colisões.


Está correto o que se afirma em:

A)

I, III e IV, apenas.

B)

I e III, apenas.

C)

II e III, apenas.

D)

I, II e IV, apenas.

E)

I e II, apenas.

function vote(questaoId, value) { window.location.href = "/accounts/login/?next=/questao/3646/"; return; fetch(`/vote/questao/${questaoId}/`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-CSRFToken': '4G2W21DBSKVlQfV9RzSx4JjgVOzAzxBUuRnscxgCeLfOZsthNHSYRtr9GSLFMSRU' }, body: JSON.stringify({ value: value }) }) .then(response => response.json()) .then(data => { if (data.success) { document.getElementById(`score-${questaoId}`).textContent = data.score; const upBtn = document.querySelector(`button[onclick="vote(${questaoId}, 1)"]`); const downBtn = document.querySelector(`button[onclick="vote(${questaoId}, -1)"]`); upBtn.classList.remove('active-up'); downBtn.classList.remove('active-down'); if (data.user_vote === 1) upBtn.classList.add('active-up'); if (data.user_vote === -1) downBtn.classList.add('active-down'); } }); }