opa, olha eu de novo 
eu nao sabia se criava um novo topico ou aproveitava aquele, resolvi criar outro, por se tratar de assuntos totalmente diferentes…
bom eu estou tentando usar um construtor mais nao estou obtendo sucesso, vejam:
[code]public class Estacao{
Radio d = new Radio();
String[] e = new String[300];
public void Estacao(String nome){
d.frequencia++;
e[d.frequencia] = nome;
}[/code]
[quote=erros]C:\Documents and Settings\Luiz Fernando\Meus documentos\Java\comecandoZero\Radio.java:30: cannot resolve symbol
symbol : constructor Estacao (java.lang.String)
location: class Estacao
Estacao j = new Estacao(“Joven Pan”);
^
C:\Documents and Settings\Luiz Fernando\Meus documentos\Java\comecandoZero\Radio.java:31: cannot resolve symbol
symbol : constructor Estacao (java.lang.String)
location: class Estacao
Estacao h = new Estacao(“Espaco HipHop”);
^
C:\Documents and Settings\Luiz Fernando\Meus documentos\Java\comecandoZero\Radio.java:32: cannot resolve symbol
symbol : constructor Estacao (java.lang.String)
location: class Estacao
Estacao m = new Estacao(“Mix”);
^
3 errors[/quote]
alguem da uma luz?
abracos
E ae blz?
Tenta tirar o void que vc colocou como retorno do construtor.
ja tinha conseguido aqui
mais muito obrigado do mesmo jeito
abracos
opz, err…
agora nao ta passando o parametro :S, porque?
olha como estou fazendo:
[code]public class Estacao{
public Estacao(String nome){
Radio b = new Radio();
b.frqnow++;
b.e[b.frqnow] = nome;
}
}[/code]
e como estou usando
Estacao Mix = new Estacao("Mix");
Estacao Espaco = new Estacao("Espaco Rap");
Estacao Joven = new Estacao("Joven Pan");
e para mostrar:
System.out.print("Estacao: " + r.e[r.getFrq()] + " - " + r.getFrq() + "\n");
o array esta definido no Radio.class:
int frqnow = 99;
String[] e = new String[300];
era para dar certo, mais ta bugado…
olha como retorna:
Estacao: null - 102
o n aparece certo, mais aparece null no nome da estacao, porque?
abracos
Peguei o bonde andando, mas vc está setando no array de estações com frequencia++ e depois buscando por um outro número?
DFigo, na posição 102 do array realmente tem um objeto?
é exatamente o que estou fazendo…
ae esta meu problema, porque era para ter algo, mais se esta retornando null creio que nao tenha… o que estou tentado fazer é uma radio, olhe como estou fazendo:
[code]Radio.java
public class Radio{
private int ligado = 0;
private int frequencia = 101;
private int volume = 1;
int contador = 100;
Estacao[] estacoes = new Estacao[300];
public void setVol(int i){
volume = i;
}
public int getVol(){
return volume;
}
public void setFrq(int i){
frequencia = i;
}
public int getFrq(){
return frequencia;
}
public void addEstacao(Estacao s){
estacoes[contador++] = s;
}
public void ligaDesliga(){
if(ligado == 0){
ligado = 1;
}else{
ligado = 0;
}
}
public int getOnOff(){
return ligado;
}
}[/code]
[code]Estacao.java
public class Estacao{
private String titulo;
private int frequencia;
public Estacao(String t,int f){
titulo = t;
frequencia = f;
}
}[/code]
[code]Opera.java
class Opera{
public static void main(String[] args){
Estacao joven = new Estacao("Joven Pan",101);
Estacao mix = new Estacao("Mix",102);
Estacao espaco = new Estacao("Espaco Rap",103);
Radio r = new Radio();
String[] onOff = {"Radio Desligada.","Radio Ligada."};
r.ligaDesliga(); r.addEstacao(joven); r.addEstacao(mix);
System.out.print(onOff[r.getOnOff()] + "\n");
System.out.print("Estacao: " + r.estacoes[r.getFrq()] + " - " + r.getFrq() + "\n");
r.setFrq(101);
System.out.print("Estacao: " + r.estacoes[r.getFrq()] + " - " + r.getFrq() + "\n");
r.setFrq(102);
System.out.print("Estacao: " + r.estacoes[r.getFrq()] + " - " + r.getFrq() + "\n");
System.out.print("Volume da radio: " + r.getVol() + "\n");
r.setVol(20);
System.out.print("Volume da radio: " + r.getVol() + "\n");
r.ligaDesliga();
System.out.print(onOff[r.getOnOff()] + "\n");
}
}[/code]
estou fazendo isso, pois meu amigo Isoron esta me ajudandoa aprender java, e isso seria um “exercicio”, enfim, a Radio funciona so que rerotna como null os nomes das estacoes,…
e entao? onde errei? minha logica de programacao esta errada? meus conhecimentos oop nao sao sucifientes para fazer isso?
to ficando loco ja =[
obrigado desde ja
abracos
Ae, sua frequencia começa com 101, mas seu contador começa com 100.
Tenta mudar o contador para 101, acho que funciona.
entao cara, o valor inicial do contador tem que ser 1 a menos que a frequencia, porque olha:
public void addEstacao(Estacao s){
estacoes[contador++] = s;
}
assim que ele adiciona a primeira estacao ele pega o contador e soma 1, entao a primeira Estacao teria a frequencia 101…
abracos
nãnãnãnãããã…
Tente fazer isso:
[quote] int i = 0;
System.out.println(i++);
i = 0;
System.out.println(++i);
[/quote]
E pense de novo o que disse! 
o i++ imprimiu 0
o ++i imprimiu 1
:S
voce poderia me dizer porque acontece isso?
abracos
e obrigado !
Basicamente o i++ utiliza valor antes de somar, e o ++i soma antes de utilizar.
Olha, cara, de boa, já que vc está estudando java, o que é bom, dá uma lida nos tutoriais do GUJ, começando pelos tutoriais de Java Básico. Pq esse tipo de dúvida (do i++) é muito básica.
Lendo e fazendo os tutoriais, vc acaba matando esse tipo de problema e ganha tempo!
Abraço!!!
eu li um monte de tutoriais e artigos do guj, mais nao vi nenhum que falasse disso…
mesmo assim muito obrigado, entendi a diferenca entre ++i e i++
abracos