webForumDet fria alternativet

Enum problem

2 svar · 552 visningar · startad av oGGo

oGGoMedlem sedan apr. 2003132 inlägg
#1

Tjena!

Sitter här med ett litet problem som jag inte vet hur jag skall lösa.
Jag har skapat två olika Enumeratorer och vill nu slumpa ut värden ur dessa.

Jag använder Math.Random för att slumpa ett tal som sedan skall plocka denna från Enumeratorn

Exempelvis: Grader(2) skulle ge mig värdet 'generalmajor'.
Nu går det dock inte att göra på detta vis och undrar om någon vet vad som möjligtvis skulle kunna lösa detta säkert tämligen simpla problem, dvs. att istället för att använda Grader.generalmajor använda sig av positionerna.

Tack på förhand

/oGGo

package uppgift9;
import static javax.swing.JOptionPane.showMessageDialog;

public class Main
{
    
    private enum Grader
    {
        general, generallöjtnant, generalmajor, översteAvFörstaGraden, överste, överstelöjtnant,
        major, kapten, löjtnant, fänrik, fanjunkare, seregant, överfurir, furir, korpral, menig
    }
    
    private enum Kommandon
    {
        högerOm, vänsterOm, heltOm, framåtMarsch, halt, givAkt, manöver, lediga, högerVänsterOm
    }
    
    public static long Militär1;
    public static long Militär2;
    
    private static long Kommando1;
    private static long Kommando2;
    
    
    public static void main(String[] args)
    {
        Militär1 = Math.round(15*Math.random());
        Militär2 = Math.round(15*Math.random());
        
        Kommando1 = Math.round(8*Math.random());
        Kommando2 = Math.round(8*Math.random());
        
        Kommandon k = Kommandon(2);

    }
    
}
thojo280Medlem sedan dec. 200463 inlägg
#2

Ersätt Kommandon k = Kommandon(2) med Kommandon k = Kommandon.values()[2];

oGGoMedlem sedan apr. 2003132 inlägg
#3

thojo280 skrev:

Ersätt Kommandon k = Kommandon(2) med Kommandon k = Kommandon.values()[2];

Tack för hjälpen, det fungerade utmärkt!

Tack tack! =)

Genererad på 364 ms · cache AV · v20260730165559-full.f96bc7eb