[c#] Lord Orion che ama il c sciarp [c#] Lord Orion che ama il c sciarp

Pagina 1 di 3 123 UltimaUltima
Risultati da 1 a 20 di 48

Discussione: [c#] Lord Orion che ama il c sciarp

  1. #1
    61,861 L'avatar di fulviuz
    Data Registrazione
    Jan 2016
    Località
    Trasferito a Borgo Panigale
    Messaggi
    16.658

    [c#] Lord Orion che ama il c sciarp

    Codice minchione a seguire...
    vorrei in pratica data una lista di oggetti, che in questo caso contiene 3 stringhe (e non tre numeri, bada bene viva la facilità), fare in modo che
    gli oggetti della lista siano ordinati in base non a Testo (alfabetically fregacazzo), ma per Roba1 e Roba2, ma non in via alfabetica, ma secondo una priorità che do io.

    Tipo priorità= prima i CAZZO, poi i CULO e poi i FIGA

    e poi

    priorità dei colori= prima i VERDI, poi i ROSSI...ecc...

    HOW?
    Non ho voglia di fare codifiche numeriche del tipo CAZZO=1 ecc... non ho sbatta


    Codice:
            public class Riga
            {
                public string Testo { get; set; }
                public string Roba1 { get; set; }
                public string Roba2{ get; set; }
    
                public Riga(string testo, string r1, string r2)
                {
                    Testo = testo;
                    Roba1 = r1;
                    Roba2 = r2;
                }
            }
    
    
            private void button1_Click(object sender, EventArgs e)
            {
    
                List<Riga> list = new List<Riga>();
    
                list.Add(new Riga("asdfasfasfasdfkljadfkljasflkjasdfk322111111111lj", "CAZZO","ROSSO"));
                list.Add(new Riga("afrewrwe343sdfkymyaculo5ljadfkljasflkjasd3fklj", "FACCIA","VERDE"));
                list.Add(new Riga("asdfasfasfasdf342343242345kljadfkljasflkjas68", "CULO","ROSSO"));

  2. #2
    Moggi idolo!
    Data Registrazione
    Jan 2016
    Località
    Melbourne
    Messaggi
    15.632
    Gamer IDs

    PSN ID: ilbelbecchino Steam ID: 76561198018696825

    Re: [c#] Lord Orion che ama il c sciarp

    Io sto imparando C# da usare in Unity, quindi fottecazzi di sta roba

  3. #3
    Bannato
    Data Registrazione
    Jan 2016
    Messaggi
    3.445

    Re: [c#] Lord Orion che ama il c sciarp

    pensavo si parlasse di musica

  4. #4
    ND
    Guest

    Re: [c#] Lord Orion che ama il c sciarp

    Citazione Originariamente Scritto da Sandro Storti Visualizza Messaggio
    Io sto imparando C# da usare in Unity, quindi fottecazzi di sta roba
    Difficile ?


    Inviato dal mio iPhone utilizzando Tapatalk

  5. #5
    61,861 L'avatar di fulviuz
    Data Registrazione
    Jan 2016
    Località
    Trasferito a Borgo Panigale
    Messaggi
    16.658

    Re: [c#] Lord Orion che ama il c sciarp

    Citazione Originariamente Scritto da Sandro Storti Visualizza Messaggio
    Io sto imparando C# da usare in Unity, quindi fottecazzi di sta roba
    Pg.x+=10;
    Pg.y+=10;
    if(Pg.x>1) Pg.x=0;
    alsoAlwaysCazzoduro();
    while(1){ vaiViah();}

  6. #6
    61,861 L'avatar di fulviuz
    Data Registrazione
    Jan 2016
    Località
    Trasferito a Borgo Panigale
    Messaggi
    16.658

    Re: [c#] Lord Orion che ama il c sciarp

    Beh, fatto, ho cambiato i riferimenti testuali in interi secondo uno switch e poi ho fatto orderby per tutti i riferimenti a seguire...

  7. #7
    Senior Member L'avatar di Leizar
    Data Registrazione
    Jan 2016
    Messaggi
    1.893

    Re: [c#] Lord Orion che ama il c sciarp

    La classe riga deve implementare icomparable (me pare si chiami così).

    Adesso sono al gabinetto, dopo cena verifico il conto corrente, se trovo 100€ in più ti posto il codice bell'effatto.

  8. #8
    Autovelox
    Guest

    Re: [c#] Lord Orion che ama il c sciarp

    list.shuffle(Math.rand(1));

  9. #9
    ¯\_(ツ)_/¯ L'avatar di ZTL
    Data Registrazione
    Jul 2017
    Località
    Roma
    Messaggi
    30.220
    Gamer IDs

    Steam ID: alberace

    Re: [c#] Lord Orion che ama il c sciarp

    thread.close;

  10. #10
    Autovelox
    Guest

    Re: [c#] Lord Orion che ama il c sciarp

    franko.sborra();

  11. #11
    61,861 L'avatar di fulviuz
    Data Registrazione
    Jan 2016
    Località
    Trasferito a Borgo Panigale
    Messaggi
    16.658

    Re: [c#] Lord Orion che ama il c sciarp

    public void SvapoLife(){
    Svapo svapo= new Svapo();
    try{
    while(true) svapo.creaThread("Just 4 Spam"; creaTitoloRandom(); creaContenutoAmminchia());
    }catch(exceptionBan e){
    createNewAccount();
    SvapoLife(); //fuck recursion
    }
    }

  12. #12
    Senior Member L'avatar di Leizar
    Data Registrazione
    Jan 2016
    Messaggi
    1.893

    Re: [c#] Lord Orion che ama il c sciarp

    Codice:
    public class Riga : IComparable<Riga>
        {
            public string Testo { get; set; }
            public string Roba1 { get; set; }
            public string Roba2 { get; set; }
    
            public Riga(string testo, string r1, string r2)
            {
                Testo = testo;
                Roba1 = r1;
                Roba2 = r2;
            }
    
            public int CompareTo(Riga other)
            {
                // return -1 if this instance precedes obj in the sort order.
                // return 0 if this instance occurs in the same position in the sort order as obj.
                // return 1 if this instance follows obj in the sort order.
    
                if (this.Roba1.Equals(other.Roba1) && this.Roba2.Equals(other.Roba2)) return 0;
                // metti qui le altre regole
                // oppure:
                Random random = new Random();
                return random.Next(-1,1);
    
            }
        }
    
    
        private void button1_Click(object sender, EventArgs e)
        {
    
            List<Riga> list = new List<Riga>();
    
            list.Add(new Riga("asdfasfasfasdfkljadfkljasflkjasdfk322111111111lj", "CAZZO", "ROSSO"));
            list.Add(new Riga("afrewrwe343sdfkymyaculo5ljadfkljasflkjasd3fklj", "FACCIA", "VERDE"));
            list.Add(new Riga("asdfasfasfasdf342343242345kljadfkljasflkjas68", "CULO", "ROSSO"));
    
            list.Sort();
        }
    Poi se Roba1 e Roba2 non sono stringhe arbitrarie ma possono assumere solo certi valori, potresti semplificarti un po' la vita con gli enum ad esempio.

  13. #13
    61,861 L'avatar di fulviuz
    Data Registrazione
    Jan 2016
    Località
    Trasferito a Borgo Panigale
    Messaggi
    16.658

    Re: [c#] Lord Orion che ama il c sciarp

    Nice, la proverò, grazie Leizar ♥

  14. #14
    Senior Member L'avatar di CrazyBed
    Data Registrazione
    Jan 2016
    Messaggi
    361
    Gamer IDs

    Steam ID: cres8

    Re: [c#] Lord Orion che ama il c sciarp

    L'enumeratore è la scelta migliore e potresti usarlo per dare ad ogni colore un valore da 0 a che ne so per l'accesso diretto ad un bellissimo array di interi nella classe COLORE che contiene le priorità di ogni colore.
    Poi ci fai un bel metodo per cambiare le priorità e bon. Infine scegli l'algoritmo di ordinamento che preferisci e bon. Io userei un bel heap sort FATTO IN CASA.

  15. #15
    Shogun Assoluto L'avatar di MrBungle
    Data Registrazione
    Jan 2016
    Messaggi
    20.139
    Gamer IDs

    Steam ID: MrBungle-J4S

    Re: [c#] Lord Orion che ama il c sciarp

    credevo si parlasse del "do diesis" :V

  16. #16
    Moggi idolo!
    Data Registrazione
    Jan 2016
    Località
    Melbourne
    Messaggi
    15.632
    Gamer IDs

    PSN ID: ilbelbecchino Steam ID: 76561198018696825

    Re: [c#] Lord Orion che ama il c sciarp

    Citazione Originariamente Scritto da ND Visualizza Messaggio
    Difficile ?


    Inviato dal mio iPhone utilizzando Tapatalk
    Unity o la programmazione?

    Inviato dal mio SM-G935F utilizzando Tapatalk

  17. #17
    Senior Member L'avatar di BlackCaesar
    Data Registrazione
    Jan 2016
    Località
    Rotterdam
    Messaggi
    1.951

    Re: [c#] Lord Orion che ama il c sciarp

    Citazione Originariamente Scritto da Leizar Visualizza Messaggio
    Codice:
    public class Riga : IComparable<Riga>
        {
            public string Testo { get; set; }
            public string Roba1 { get; set; }
            public string Roba2 { get; set; }
    
            public Riga(string testo, string r1, string r2)
            {
                Testo = testo;
                Roba1 = r1;
                Roba2 = r2;
            }
    
            public int CompareTo(Riga other)
            {
                // return -1 if this instance precedes obj in the sort order.
                // return 0 if this instance occurs in the same position in the sort order as obj.
                // return 1 if this instance follows obj in the sort order.
    
                if (this.Roba1.Equals(other.Roba1) && this.Roba2.Equals(other.Roba2)) return 0;
                // metti qui le altre regole
                // oppure:
                Random random = new Random();
                return random.Next(-1,1);
    
            }
        }
    
    
        private void button1_Click(object sender, EventArgs e)
        {
    
            List<Riga> list = new List<Riga>();
    
            list.Add(new Riga("asdfasfasfasdfkljadfkljasflkjasdfk322111111111lj", "CAZZO", "ROSSO"));
            list.Add(new Riga("afrewrwe343sdfkymyaculo5ljadfkljasflkjasd3fklj", "FACCIA", "VERDE"));
            list.Add(new Riga("asdfasfasfasdf342343242345kljadfkljasflkjas68", "CULO", "ROSSO"));
    
            list.Sort();
        }
    Poi se Roba1 e Roba2 non sono stringhe arbitrarie ma possono assumere solo certi valori, potresti semplificarti un po' la vita con gli enum ad esempio.
    CompareTo confermo. In alternativa puoi usare OrderBy sugli IEnumerable passando come argomento una funzione che definisce una chiave di priorità secondo l'ordinamento che vuoi tu, che è meno anni ottanta.

    Esempio:

    ALLABRACE Priorità 0
    CIVAS Priorità 1
    CESARINO Priorità 2
    FULVIO Priorità 3

    A OrderBy passerai una lambda del tipo

    Codice:
    x =>
      {
         if (x == "ALLABRACE")
           return 0;
         else if (x == "CIVAS")
           return 1;
         else if (x == "CESARINO")
           return 2;
         else if (x == "FULVIO")
           return 3;
         else
           throw new System.ArgumentException("8====D~~~~");
      }
    Prova sto codice, se non ho capito un cazzo di quello che vuoi fare scusa ma è tardi e ho lavorato una giornata:

    Codice:
    namespace OrderTest
    {
      class Item
      {
        public string Code { get; set; }
        public string PriorityFirst { get; private set; }
        public string PrioritySecond { get; private set; }
    
        private static Dictionary<string,int> PriorityTable =
          new Tuple<string, int>[]
          {
            new Tuple<string, int>("CACCA",1),
            new Tuple<string,int>("PUPU", 2),
            new Tuple<string,int>("PIPI", 3),
            new Tuple<string,int>("ALLABRACE", 0),
            new Tuple<string,int>("CIVAS", 1),
            new Tuple<string,int>("CESARINO", 2),
            new Tuple<string,int>("FULVIO", 3)
          }.ToDictionary(x => x.Item1, x => x.Item2);
    
        public Item(string code, string priority1, string priority2)
        {
          Code = code;
          PriorityFirst = priority1;
          PrioritySecond = priority2;
        }
    
        public int Priority
        {
          get
          {
            return PriorityTable[PriorityFirst] * 10 + PriorityTable[PrioritySecond];
          }
        }
    
        public override string ToString()
        {
          return Code + "," + PriorityFirst + "," + PrioritySecond;
        }
    
      }
    
    
      class Program
      {
    
        static void Main(string[] args)
        {
          Item[] testList = new Item[]
            {
              new Item("aabaadadaebege", "PIPI", "FULVIO"),
              new Item("adadaw", "PUPU", "CESARINO"),
              new Item("aababege", "CACCA", "ALLABRACE"),
              new Item("axxcefqfq", "CACCA", "FULVIO"),
            };
          var orderedList = testList.OrderBy(x => x.Priority);
          foreach (var x in orderedList)
            Console.WriteLine(x);
        }
      }
    }
    Ultima modifica di BlackCaesar; 08-09-17 alle 00:32

  18. #18
    ND
    Guest

    Re: [c#] Lord Orion che ama il c sciarp

    Citazione Originariamente Scritto da Sandro Storti Visualizza Messaggio
    Unity o la programmazione?

    Inviato dal mio SM-G935F utilizzando Tapatalk
    La programmazione su unity. Ho visto che ci sono motori già fatti tipo il corgi engine e mi domandavo rispetto ai blueprint di ue4 se fosse molto più complesso

  19. #19
    Moggi idolo!
    Data Registrazione
    Jan 2016
    Località
    Melbourne
    Messaggi
    15.632
    Gamer IDs

    PSN ID: ilbelbecchino Steam ID: 76561198018696825

    Re: [c#] Lord Orion che ama il c sciarp

    Rispetto ue4 non lo so

    Inviato dal mio SM-G935F utilizzando Tapatalk

  20. #20
    Predicatore Google L'avatar di Mdk
    Data Registrazione
    Jan 2016
    Messaggi
    19.224

    Re: [c#] Lord Orion che ama il c sciarp

    In PHP era sicuramente più facile e più meglio

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
Chi Siamo
Forum ufficiale della rivista
The Games Machine
Seguici su