Dúvida em subSet

6 respostas
T

No seguinte código:

import java.util.*;

public class TreeSetTest
{
	public static void main(String... wow){

		TreeSet<String> s = new TreeSet<String>();

		TreeSet<String> subs = new TreeSet<String>();

		s.add("a"); s.add("b"); s.add("c"); s.add("d"); s.add("e");

		subs = (TreeSet)s.subSet("b", true, "d", true);

		s.add("g"); //Primeiro add
		s.pollFirst();
		s.pollFirst();
		s.add("c2"); // segundo add

		System.out.println("Conjunto s: "+s);
		System.out.println("Conjunto subs: "+subs);
    }
}

Por que o primeiro add adiciona o elemento apenas no conjunto 's',enquanto que o segundo add adiciona tanto em 's' quanto em 'subs' ???

6 Respostas

V

porque o segundo add vc está adicionando um valor que está entre os limites do seu subs (entre “b” e “d”)…

evertonsilvagomesjav

deixa eu aproveitar o topico e tirar uma duvida tb:

tenho o seguinte subset:

eu sei que nesse subSet poderar ser adicionado algo entre “b” e “d”, e quanto ao “true” que ta ali o que é?

T

evertonsilvagomesjava:
deixa eu aproveitar o topico e tirar uma duvida tb:

tenho o seguinte subset:

eu sei que nesse subSet poderar ser adicionado algo entre “b” e “d”, e quanto ao “true” que ta ali o que é?

O true significa que vc inclui ‘b’ e ‘d’, ou seja, (abusando da notação matemática) [b,d]. Se fosse os dois false, seria: ]b,d[ (não inclue b e d).

evertonsilvagomesjav

nao sei se etendi direito, mas o true quer dizer que “b” e “d” pode ser incluido tb é isso? Se fosse falso nao poderia incluir b e d? Acho q nao entendi bem rs

V

é isso msm evertonsilvagomesjava…

evertonsilvagomesjav

hum ok vlw

Criado 1 de fevereiro de 2010
Ultima resposta 1 de fev. de 2010
Respostas 6
Participantes 3