Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446

    [JAVA]Aiuto nell'utilizzo dell'operatore xor

    Salve ragazzi,corro al dunque:
    cH2 e cH1 sono due array di caratteri,devo scorrere un array carattere per carattere e assegnare questi valori all'altro,perchè devo fare dei controlli su questi(vedere se un determinato carattere è presente e cose del genere).L'esempio che sto seguendo non da porzioni di codice se non questa:

    for(int x=1;x<String.length();x++)
    ch1[i]=ch2[i] ^ ch2[x-1];

    Da ciò che ho capito da questi appunti ogni carattere di ch1 è creato in base al carattere di ch2 con lo stesso indice E da quello che lo precede,credo sia per questo che usi lo xor(operatore che non ho mai trattato).Il compilatore mi da un errore dicendo che c'è una perdita d'informazioni in quanto dallo xor si aspetterebbe un carattere e non un int,ma io in realtà sto solo scorrendo gli indici...Qualcuno sa spiegarmi meglio come posso utilizzare questo ciclo for?(Per chi non avesse capito è una specie di criptaggio per delle password)saluti!


  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [JAVA]Aiuto nell'utilizzo dell'operatore xor

    Originariamente inviato da energie
    Il compilatore mi da un errore dicendo che c'è una perdita d'informazioni in quanto dallo xor si aspetterebbe un carattere e non un int,ma io in realtà sto solo scorrendo gli indici...Qualcuno sa spiegarmi meglio come posso utilizzare questo ciclo for?
    Altra regola: quella del "binary numeric promotion". Se uno degli operandi è double, l'altro viene promosso a double. Se uno degli operandi è float, l'altro viene promosso a float. Se uno degli operandi è long, l'altro viene promosso a long. Altrimenti vengono promossi a int.

    In sostanza vuol dire che ad esempio due operandi di tipo char, con l'operatore binario ^ vengono promossi a int. Quindi:

    ch1[i]=(char) (ch2[i] ^ ch2[x-1]);
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it L'avatar di energie
    Registrato dal
    Apr 2003
    Messaggi
    446
    grazie and,così va alla perfezione!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.