Ordenação de List [RESOLVIDO]

Galera, estou lendo nomes de um arquivo .txt e acrescentando em uma lista. Logo após, quero ordenar esses nomes mas nao estou conseguindo, esta dando erro de execução na “Collections.sort(lista);”

Algué pode me ajudar?

Segue o código abaixo:

package ordenaLista;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class OrderarLista implements Comparable{

private String name = "";
/**
 * @param args
 */
public static void main(String[] args) {
	try {
		File file = new File("C:/PH/Teste/workspace/nomes.txt");
		FileReader reader = new FileReader(file);
		BufferedReader br = new BufferedReader(reader);
		List lista = new ArrayList<String>();
		
		while(br.ready()){
			String linha = br.readLine();
			lista.add(br.readLine());
			System.out.println("lista: "+lista);
		}

		Collections.sort(lista);
		
		for (int i=0; i<lista.size();i++){
			System.out.println("Lista: "+lista.get(i));
		}

	} catch (Exception e) {
		e.printStackTrace();
	}

}
public int compareTo(Object o) {
    String obj = (String) o;
    return name.compareTo(name);
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

}

Qual é o erro?

bom dia raphael01,
para melhor visualização do seu código favor posta-lo entre as tags “[ code ] [ /code ]” (sem espaço e aspas).
Assim:

package ordenaLista;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class OrderarLista implements Comparable{

private String name = "";
/**
* @param args
*/
public static void main(String[] args) {
try {
File file = new File("C:/PH/Teste/workspace/nomes.txt");
FileReader reader = new FileReader(file);
BufferedReader br = new BufferedReader(reader);
List lista = new ArrayList<String>();

while(br.ready()){
String linha = br.readLine();
lista.add(br.readLine());
System.out.println("lista: "+lista);
}

Collections.sort(lista);

for (int i=0; i<lista.size();i++){
System.out.println("Lista: "+lista.get(i));
}

} catch (Exception e) {
e.printStackTrace();
}

}
public int compareTo(Object o) {
String obj = (String) o;
return name.compareTo(name);
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

} 

Fiz alguns ajustes.

package ordenaLista;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class OrderarLista implements Comparable{

private String name = "";
/**
* @param args
*/
public static void main(String[] args) {
try {
File file = new File("C:/PH/Teste/workspace/nomes.txt");
FileReader reader = new FileReader(file);
BufferedReader br = new BufferedReader(reader);
List lista = new ArrayList<String>();

while(br.ready()){
String linha = br.readLine();
lista.add(linha);
System.out.println("lista: "+lista);
}

Collections.sort(lista);

for (int i=0; i<lista.size();i++){
System.out.println("Lista: "+lista.get(i));
}

} catch (Exception e) {
e.printStackTrace();
}

}
public int compareTo(Object o) {
String obj = (String) o;
return name.compareTo(name);
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

} 

Ok PEdro.

Segue o erro

java.lang.NullPointerException
	at java.lang.String.compareTo(Unknown Source)
	at java.lang.String.compareTo(Unknown Source)
	at java.util.Arrays.mergeSort(Unknown Source)
	at java.util.Arrays.mergeSort(Unknown Source)
	at java.util.Arrays.mergeSort(Unknown Source)
	at java.util.Arrays.sort(Unknown Source)
	at java.util.Collections.sort(Unknown Source)
	at ordenaLista.OrderarLista.main(OrderarLista.java:29)

Isso ai quer dizer que a sua lista esta vazia, você tem certeza que ela esta sendo preenchida?

Segue exemplo:

class Ordena implements Comparator<String> {

		@Override
		public int compare(String o1, String o2) {
			return o1.compareTo(o2);
		}
		
	}

Collections.sort(list, new Ordena());

Esse erro deu com o ajuste que eu fiz já?

Consegui resolver galera.
Fui ver se a lista estava vazia seguindo o conselo do lucas e o erro estava no código abaixo:

while(br.ready()){
	String linha = br.readLine();
	lista.add(br.readLine());
	System.out.println("lista: "+lista);
}

Em 2 momentos eu usei o “br.readLine();”, assim era incrementado na lista de 2 em dois e quando chegava no ultimo registro, ele pulava e dava Null.
Retirei a linha “String linha = br.readLine();” e funcionou.

Obrigado.

então edita seu topico e coloque a tag [RESOLVIDO] nele para melhor organização do forum.
obrigado