2013-09-28 2 views
0

Я читаю текстовый файл:Как я могу вызвать переменную из строки?

3 
H2O 
O -0.0000 -0.0589 -0.0000 
H -0.8110 0.4677 0.0000 
H 0.8110 0.4677 0.0000 

С этим я могу собрать 3D модель воды. Этот файл сначала показывает, какой элемент, затем x, y и z. Каждый элемент будет другого цвета. Я создал перечисление для этого:

public enum AtomColors { 

// Sign(red, green, blue, alpha); 
H(1, 1, 1, 1), He(1, 1, 1, 1), O(1, 1, 1, 1); 

private final float red, green, blue, alpha; 

    AtomColors(float red, float green, float blue, float alpha) { 
     this.red = red; 
     this.green = green; 
     this.blue = blue; 
     this.alpha = alpha; 
    } 

    public Color getColor() { 
     return new Color(red, green, blue, alpha); 
    } 

} 

Как я могу получить цвет? Текстовый файл возвращает строку, когда мне нужно получить доступ к соответствующей ей переменной. Есть идеи?

ответ

7

Как насчет valueOf()?

AtomColors.valueOf(someStr); 
+1

'AtomColors.valueOf (someStr) .getColor()', при условии, что 'valueOf' возвращает правильный результат, но тем не менее правильно (PS- только нит комплектование;)) – MadProgrammer

+0

Вау, это было просто! Спасибо за вашу помощь! –

Смежные вопросы