Hoje na aula discutimos muito esse método.
A sua classe Testando deveria salvar o que o método retorna, ou pelo menos
imprimir, algo como:

public class Testando {
    public static void main(String[] args) {

        System.out.println(Cargo.obtem("boy"));

    }

}

Como explicado na aula, a maneira mais fácil de resolver essa parte da lista
é fazer um método que faça:

public static Cargo obtem(String s) {
  a) transforma a string s em maiúsculas, usando método da classe String
  b) cria uma variável tipo vetor de Cargo, e faz ela apontar para o vetor
que contém todos os objetos do enum
     (lembra do método values()?)
  c) procure no vetor a posição do objeto que ao receber toString() retorna
a mesma string s
  d) se achar, o valor dessa posição deve ser retornado pelo método.
  e) se não achar, seu método deve retornar null.
}

Jonathan

2010/4/20 Peter P. Lupo <[email protected]>

> Se não retorna é pq não entra no if, certo?
> Logo, o que na comparação seu if pode estar errado?
> Pq vc não tenta imprimir o que é retornado por valueOf?
>
> Abraço
>
> Peter P. Lupo
> http://craftnicely.blogspot.com - http://sites.google.com/site/pplupo
> MPS.BR Authorized Implementation Practitioner - Certified ScrumMaster
> Sun Certified Java Associate - Java Brown Belt
> +55 (021) 81742487
>
>
> 2010/4/20 Romulo Freires <[email protected]>
>
> public static Cargo obtem(String nome){
>>         nome = nome.toUpperCase();
>>         if (valueOf(nome) == BOY);{
>>             return BOY ;
>>
>> Com isso os erros de cima pararam mas quando eu faço o teste
>>
>> public class Testando {
>>
>>     public static void main(String[] args) {
>>         // TODO Auto-generated method stub
>>
>>         Cargo.obtem("boy");
>>
>>     }
>>
>> }
>>
>> ele não retorna nada e logico que se eu coloco algo do tipo
>> Cargo.obtem("by") ocorre um erro devido a própria condição.
>>
>> O que eu quero saber é pq ele não retorna nada.
>>
>> abraços galera.
>>
>> Em 19 de abril de 2010 23:13, Peter P. Lupo <[email protected]> escreveu:
>>
>>> O compilador checa se vc está retornando algo compatível (do mesmo tipo
>>> ou um subtipo) com o valor de retorno. Null vai servir em todos os casos
>>> onde o retorno for um objeto.
>>>
>>> Se vc fez um desvio (um if por exemplo), o compilador vai verificar se o
>>> seu código retorna algo mesmo que não entre no desvio.
>>>
>>> Então se vc fizer
>>>
>>> if (...) {
>>>     return BOY;
>>> }
>>>
>>> o compilador irá reclamar pois caso não entre no if, não haverá retorno.
>>> Uma solução é acrescentar um return fora do if ou no else.
>>>
>>> Abraço
>>>
>>> Peter P. Lupo
>>> http://craftnicely.blogspot.com - http://sites.google.com/site/pplupo
>>> MPS.BR Authorized Implementation Practitioner - Certified ScrumMaster
>>> Sun Certified Java Associate - Java Brown Belt
>>> +55 (021) 81742487
>>>
>>>
>>> 2010/4/19 Romulo Freires <[email protected]>
>>>
>>>>  Tô tendo problemas com a assinatura "public static Cargo obtem(String
>>>> nome", TALVEZ SEJA UMA COISA BOBA, mas o fato é que eu fiquei preso
>>>> aí.
>>>>
>>>> segue a parte que não estou conseguindo implementar!
>>>>
>>>>
>>>> "e) Deve haver um método de classe para obter a instância do enum a
>>>> partir da string do seu nome,
>>>> com a assinatura: public static Cargo obtem(String nome)
>>>> Por exemplo: Cargo.obtem("boy") deve retornar a referência da
>>>> instância BOY.
>>>> OBS1: o argumento desse método não precisa estar necessariamente em
>>>> maiúsculas, o seu método
>>>> deve fazer a conversão.
>>>> OBS2: caso o argumento em maiúsculas não corresponda a nenhum enum com
>>>> esse nome, o
>>>> método deve retornar null."
>>>>
>>>> Devido a essa Assinatura eu estou tendo problemas com o RETURN.
>>>>
>>>> O eclipse cobra um return null e eu não estou conseguindo me livrar
>>>> disso, mesmo com um método pronto.
>>>>
>>>> Se alguém puder ajudar eu agradeço muito.
>>>>
>>>> Abraços galera.
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Comp 2 - Geral" group.
>>>> To post to this group, send email to [email protected].
>>>> To unsubscribe from this group, send email to
>>>> [email protected]<comp2-geral%[email protected]>
>>>> .
>>>> For more options, visit this group at
>>>> http://groups.google.com/group/comp2-geral?hl=en.
>>>>
>>>>
>>>  --
>>> You received this message because you are subscribed to the Google Groups
>>> "Comp 2 - Geral" group.
>>> To post to this group, send email to [email protected].
>>> To unsubscribe from this group, send email to
>>> [email protected]<comp2-geral%[email protected]>
>>> .
>>> For more options, visit this group at
>>> http://groups.google.com/group/comp2-geral?hl=en.
>>>
>>
>>  --
>> You received this message because you are subscribed to the Google Groups
>> "Comp 2 - Geral" group.
>> To post to this group, send email to [email protected].
>> To unsubscribe from this group, send email to
>> [email protected]<comp2-geral%[email protected]>
>> .
>> For more options, visit this group at
>> http://groups.google.com/group/comp2-geral?hl=en.
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Comp 2 - Geral" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<comp2-geral%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/comp2-geral?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups "Comp 
2 - Geral" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/comp2-geral?hl=en.

Responder a