package atividade3;
import java.util.*;
import java.io.File;
import java.io.FileNotFoundException;
import java.lang.String;
/*
* AXXXXXO
* MATRÍCULA/LOGIN XXXXXXX
*/
public class Atividade3 {
public String nomearquivo = "pg33056.txt";
public String nome_arquivo = nomearquivo ;
public static void main(String[] args) throws FileNotFoundException{
//leHashSet();
//leTreeSet();
// leLinkedList();
}
void leLinkedList(String nome_arquivo) throws FileNotFoundException{
LinkedList<String> words = new LinkedList<String>();
long totalTime = 0;
Scanner in = new Scanner(new File(nome_arquivo));
while (in.hasNext())
{
String word = in.next();
long callTime = System.currentTimeMillis();
words.add(word);
callTime = System.currentTimeMillis() - callTime;
totalTime += callTime;
}
Iterator<String> iter = words.iterator();
for (int i=1;i<=20 && iter.hasNext();i++)
System.out.println(iter.next());
System.out.println("--------------------------------------------------------------------------");
System.out.println("Lendo arquivo para LinkedList...");
System.out.println("Em LinkedList foram achadas " + words.size() + " palavras. " + totalTime + " milliseconds.");
}
void leTreeSet(String nome_arquivo) throws FileNotFoundException{
LinkedList<String> words = new LinkedList<String>();
long totalTime = 0;
Scanner in = new Scanner(new File(nome_arquivo));
while (in.hasNext())
{
String word = in.next();
long callTime = System.currentTimeMillis();
words.add(word);
callTime = System.currentTimeMillis() - callTime;
totalTime += callTime;
}
Iterator<String> iter = words.iterator();
for (int i=1;i<=20 && iter.hasNext();i++)
System.out.println(iter.next());
System.out.println("--------------------------------------------------------------------------");
System.out.println("Lendo arquivo para TreeSet...");
System.out.println("Em TreeSet foram achadas " + words.size() + " palavras diferentes. " + totalTime + " milliseconds.");
}
void leHashSet(String nome_arquivo) throws FileNotFoundException{
LinkedList<String> words = new LinkedList<String>();
long totalTime = 0;
Scanner in = new Scanner(new File(nome_arquivo));
while (in.hasNext())
{
String word = in.next();
long callTime = System.currentTimeMillis();
words.add(word);
callTime = System.currentTimeMillis() - callTime;
totalTime += callTime;
}
Iterator<String> iter = words.iterator();
for (int i=1;i<=20 && iter.hasNext();i++)
System.out.println(iter.next());
System.out.println("--------------------------------------------------------------------------");
System.out.println("Lendo arquivo para HashSet...");
System.out.println("Em HashSet foram achadas " + words.size() + " palavras diferentes. " + totalTime + " milliseconds.");
}
}
Como chamar métodos da mesma classe
5 Respostas
quer chamar onde?? no fim do código???
seria bom falar a função da classe…
Bem, da forma como está o código, para acessar os métodos dessa classe você precisará instanciar um objeto do tipo da classe dentro do método main(). Ex:
Atividade3 atividade3 = new Atividade3();
Então, você poderá utilizar os métodos deste objeto criado, por meio do operador “.” , por exemplo:
atividade3.leTreeSet(“arquivo”);
Outra opção: se você marcar os métodos da classe com o modificador “static” você poderia utilizá-los sem precisar instanciar um objeto…
Simplesmente descomente (remover as barras // do início da linha) as linhas 17, 18 e 19. e execute
a classe; Você irá chamar os métodos.
Simplesmente descomente (remover as barras // do início da linha) as linhas 17, 18 e 19. e execute
a classe; Você irá chamar os métodos.
É isto mesmo! Obrigado.
Alguém perguntou o que os métodos fazem:
Eles abre um arquivo texto e conta o número de palavras sem repetições. Também contam o tempo consumido para isto.
Já o método com LinkedList, conta apenas as palavras e o tempo consumido.
Obrigado novamente Bruno Tinoco!
tem certeza que os códigos foram executados?
Pois ao que parece nao funciona não, a nao ser que voce declare os metodos como sendo static, ou crie uma instancia da propria classe dentro do método main, como ja falaram acima.