Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
String s = "47658353"; int[] ia = new int[s.length()]; for(int i = 0; i < ia.length; i++) { ia[i] = Integer.parseInt(s.substring(i,i+1)); } Kommentar: arne_v
String s = "47658353"; String[] ia = new String[s.length()]; for(int i = 0; i < ia.length; i++) { ia[i] = s.substring(i,i+1); }
int val = 47658353; int[] ia = new int[(int)(Math.log(val)/Math.log(10))+1]; int tmp = val; for(int i = 0; i < ia.length; i++) { ia[ia.length - i - 1] = tmp % 10; tmp = tmp / 10; }
log er en lidt halvdyr operation, så hvis den skal kaldes milliarder af gange, så kan du omkode det til f.eks.:
int val = 47658353; int[] ia = new int[digits(val)]; int tmp = val; for (int i = 0; i < ia.length; i++) { ia[ia.length - i - 1] = tmp % 10; tmp = tmp / 10; }
arne_v >> jeg ved ikke om det er for meget forlangt, men jeg ville blive meget glad hvis du ville kommentere den kode du postede (12/04-2003 13:18:44). Du skal nok få 60 point for det...
// her har vi start værdien int val = 47658353; // log10(x) = log(x)/log(10) // antal cifre i val = log10(val)+1 = log(val)/log(10)+1 // alloker array med antal cifre int[] ia = new int[(int)(Math.log(val)/Math.log(10))+1]; // tmp=val int tmp = val; // for antal cifre i val for(int i = 0; i < ia.length; i++) { // array element bagfra = sidste ciffer i tmp ia[ia.length - i - 1] = tmp % 10; // drop sidste ciffer i tmp tmp = tmp / 10; }
Logaritme tricket kan så erstattes af koden fra 13:41:54 kommentaren for 1-8 cifrede tal.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.