Colocar 2 palavras da lista!

2 respostas
S
Olá pessoal, mais uma vez venho recorrer à vossa ajuda. Tenho o seguinte programa:
public static void main(String[] args) throws IOException {
		Vector<String> vs= new Vector<String>();
		try {
			

			FileReader fr= new FileReader("C:/Documents and Settings/Desktop/Lista.txt");
			BufferedReader br= new BufferedReader(fr);
			for (;;) {
				String line= br.readLine();
				if ( line == null ) break;
				vs.add(line);
			}
			br.close();
		}
		catch (Exception exc) {
			exc.printStackTrace();
		}

                              String directiveArg;

		String directiveArgA = "medicina site:pt";//Aqui quero por uma word qualquer da list

		String directiveArgB;

		GoogleSearch s = new GoogleSearch();

		
		FileWriter fw= new FileWriter("C:/Documents and Settings/Desktop/scp1.txt", true);
		PrintWriter pw= new PrintWriter(fw);

		try {
			GoogleSearchResult r, rA, rB;
			s.setQueryString(directiveArgA);
			rA = s.doSearch();

			
			for (String word : vs) {
				directiveArg= "medicina \"" + word + "\" site:pt";
				directiveArgB= word + " site:pt";

				s.setStartResult(0); // setStartResult is 0 based

				s.setQueryString(directiveArg);
				r = s.doSearch();

				s.setQueryString(directiveArgB);
				rB = s.doSearch();
e o que queria era que a directiveArgA tomasse outra palavra de uma lista de palavras q tenho num ficheiro, e nao que fosse a constante medicina!Como posso resolver isso? tb tenho este programa:
public class Pair implements Comparable {

	String word1;
	String word2;
	int count;
	double assoc;
	
	public int compareTo(Object o) {
		Pair p = (Pair)o;
		
		int t = word1.compareTo(p.word1);
		if(t != 0)
			return t;
		return word2.compareTo(p.word2);
	}
	
}

Ajuda?!
Obrigado

2 Respostas

davidbuzatto
String a = "logo vou almoçar";

List< String > lista = new ArrayList< String >();
lista.add( "dormir" );
lista.add( "viajar" );
lista.add( "correr" );

String b = a.replace( "almoçar", lista.get( 1 ) );

System.out.println( b ); // vai resultar em "logo vou viajar";

Cuidado com o seu compareTo... Vc está fazendo o cast de Pair sem verificar se o objeto passado é de fato uma instância de Pair...
Utilize um if antes "if ( o instanceof Pair ) { ai vc faz o cast... }".
Cuidado com os campos default tbm, use campos private e utilize gets e sets para obter e alterar o estado do objeto.

Até mais!

davidbuzatto

Dê uma olhada na documentação para aprender as outras variações do método replace… Existe o replaceAll que aceita expressões regulares tbm.
A classe String tem vários métodos para vc encontrar o pedaço que você quer retirar da String original.

Criado 18 de dezembro de 2007
Ultima resposta 18 de dez. de 2007
Respostas 2
Participantes 2