Jump to content

como verificar se matriz está vazia?


vasco16
 Share

Recommended Posts

boas pessoal tenho de criar um metodo que insere uma linha (vector) numa matriz.

Tenho

Matriz[tamanho1][tamanho2]

e o meu metodo receve um vector com valores, e tem como tamanho, tamanho2

e agora tenho de inserir (ou passar) esse valores para a minha matriz, mas tenho de ver se ela está vazia e se nao tiver qual é a linha que posso inserir os valores...

e isto:

if (matriz == null)

nao funciona..

Alguma sugestão?

cumps.

Link to comment
Share on other sites

Quando crias uma matriz de um determinado tipo, todas as suas posições vão ser inicializadas com o valor default para esse tipo, de modo que não existe uma definição de "vazio". O que podes fazer é, aquando da criação da matriz, inicializá-la toda com um valor que queiras considerar como representante do vazio (por exemplo, numa matriz de inteiros, colocares todas as posições com o valor -1). Depois basta pesquisares por esse valor para detectar onde podes inserir o teu vector.

Link to comment
Share on other sites

Quando crias uma matriz de um determinado tipo, todas as suas posições vão ser inicializadas com o valor default para esse tipo, de modo que não existe uma definição de "vazio". O que podes fazer é, aquando da criação da matriz, inicializá-la toda com um valor que queiras considerar como representante do vazio (por exemplo, numa matriz de inteiros, colocares todas as posições com o valor -1). Depois basta pesquisares por esse valor para detectar onde podes inserir o teu vector.

o problema é que o meu vector pode vir com inteiros positivos e negativos..

Link to comment
Share on other sites

Se a matriz é de inteiros, pessoalmente, zero faz mais sentido para ver se está vazia ou não.

A única forma de ver se a matriz está vazia é percorrer todas as posições e ver se essas posições contém o valor que tu consideras ser vazio. Esse valor vai depender do problema que estás a resolver.

matriz == null

Isto apenas verifica se a referência está iniciada ou não. Se isto devolver null, então não tens qualquer matriz, tens uma referência que ainda não aponta para um lugar válido em memória.

Link to comment
Share on other sites

Se a matriz é de inteiros, pessoalmente, zero faz mais sentido para ver se está vazia ou não.

A única forma de ver se a matriz está vazia é percorrer todas as posições e ver se essas posições contém o valor que tu consideras ser vazio. Esse valor vai depender do problema que estás a resolver.

matriz == null

Isto apenas verifica se a referência está iniciada ou não. Se isto devolver null, então não tens qualquer matriz, tens uma referência que ainda não aponta para um lugar válido em memória.

Estou a desenvolver um sistema de votação, dai o eleitor puder votar -1 0 ou 1, porque neste metodo so tenho de inserir dados, mais à frente é que os valido.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.