Erro type list does not take parameters

18 respostas
Euder_Vilker1

Erro: type list does not take parameters

public List<Onibus> pesquisarNaListaDeOnibus(String chassi){
		      List<Onibus> listaOnibus = new ArrayList<Onibus>();
		try {
			String sql = "select * from onibus WHERE chassi LIKE ('%"+chassi+"%') "
                                + "OR chassi LIKE ('%"+chassi.toUpperCase()+"%') "
                                + " ORDER BY chassi";

			PreparedStatement stm = connex.getConexao().prepareStatement(sql);
			ResultSet rs = stm.executeQuery();

			while (rs.next()) {
				Onibus bus = new Onibus();
				bus.setAno(rs.getInt("ano"));
				bus.setChassi(rs.getString("chassi"));
				bus.setPlaca(rs.getString("placa"));
				bus.setTipoVeiculo(rs.getString("tipoVeiculo"));
				bus.setNumeroOnibus(rs.getInt("numeroOnibus"));
				listaOnibus.add(bus);
			}
			connex.desconecta();
			return listaOnibus;
		} catch (Exception e) {
			System.out.println("Erro: " + e);
			connex.desconecta();
		}

		return listaOnibus;
	}

18 Respostas

rodriguesabner

Da uma olhada na sua importação, se tiver assim:

import java.awt.List;

troca pra:

import java.util.List;
Euder_Vilker1

Já tinha observado isso, porém mesmo com a mudança da importação o erro permanece.

rodriguesabner

Mostra o erro

Euder_Vilker1

O erro se concentra aqui:

public List pesquisarNaListaDeOnibus(String chassi){
List listaOnibus = new ArrayList();

Erro: type list does not take parameters

rodriguesabner

ta, mostra as importações.

vc trocou o codigo?

staroski

Posta o seu fonte completo, ou você está fazendo import da classe/interface errada ou sua classe também se chama List.

Euder_Vilker1
package DAO;

import conexao.Conexao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import entidades.Onibus;
import java.sql.SQLException;
import java.util.ArrayList;
import java.awt.List;
import java.util.List;
import javax.swing.JOptionPane;

```
public class OnibusDAO {
    Conexao connex = new Conexao();
    Connection con = null;
    PreparedStatement pst = null;
    ResultSet rs = null;

public List<Onibus> pesquisarNaListaDeOnibus(String chassi){
		      List<Onibus> listaOnibus = new ArrayList<Onibus>();
		try {
			String sql = "select * from onibus WHERE chassi LIKE ('%"+chassi+"%') "
                                + "OR chassi LIKE ('%"+chassi.toUpperCase()+"%') "
                                + " ORDER BY chassi";

			PreparedStatement stm = connex.getConexao().prepareStatement(sql);
			ResultSet rs = stm.executeQuery();

			while (rs.next()) {
				Onibus bus = new Onibus();
				bus.setAno(rs.getInt("ano"));
				bus.setChassi(rs.getString("chassi"));
				bus.setPlaca(rs.getString("placa"));
				bus.setTipoVeiculo(rs.getString("tipoVeiculo"));
				bus.setNumeroOnibus(rs.getInt("numeroOnibus"));
				listaOnibus.add(bus);
			}
			connex.desconecta();
			return listaOnibus;
		} catch (Exception e) {
			System.out.println("Erro: " + e);
			connex.desconecta();
		}

		return listaOnibus;
	}
}
```
rodriguesabner

Apaga a linha

java.awt.List
Euder_Vilker1

Apaguei e o erro persiste.

rodriguesabner

mostra o codigo dnv

H

Tenta mudar essa linha para a linha abaixo
List<Onibus> listaOnibus = new ArrayList();

staroski

Tira esse import.

Euder_Vilker1

Substitui, porém o erro persiste!

Euder_Vilker1

Se for o caso de existir uma classe chamada List, como resolver?

staroski

Aí vais ter que declarar explicitamente com o nome do pacote:

java.util.List<Onibus> listaOnibus = new ArrayList();

Mas porque você tem mais uma classe chamada List?
Pra quê essa classe serve?

bdot

Mude o nome para ListCarros por exemplo, gerando valor semântico e evitando confusão com a interface.
Eventualmente haverá classes com o mesmo nome a exemplo da propria classe List, entretanto, não faz muito sentido você entrar na “concorrência” com essas interfaces.

Euder_Vilker1

Verifiquei e não há essa classe, realmente não sei o que esta ocorrendo.

staroski

Então faz favor de postar o código completo de sua classe, senão não conseguimos te ajudar.

Criado 11 de novembro de 2020
Ultima resposta 17 de nov. de 2020
Respostas 18
Participantes 5