|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: May 2009
Messaggi: 366
|
[JAVA] acquisizione Byte
salve ragazzi ho questo problema leggo un tipo di dato bigint da mysql
che ha una precisione di 20 cifre(cioè con bigint riesco a rappresentare 20 cifre), la mia domanda è dalla precisione posso risalire alla dimensione in byte di bigint. Grazie a tutti.
__________________
visitate http://www.forumsenzacontro.altervista.org |
|
|
|
|
|
#2 | |
|
Member
Iscritto dal: Dec 2006
Messaggi: 198
|
Quote:
ceil(log256(numero)) L'ho buttata lì, non ho prestato attenzione a off-by-1 ed eventuali, ma in linea di massima la logica dovrebbe essere questa. |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Oct 2006
Città: Roma
Messaggi: 1383
|
Java nn c'entra.
99.999.999.999.999.999.999 in binario corrisponde a 110101111000111010111100010110101100011000011111111111111111111 (convertito or ora con la calcolatrice di Windows) che sarebbero 64 bit, cioé 8 byte, e non é neanche il massimo rappresentabile. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Oct 2006
Città: Roma
Messaggi: 1383
|
ehm, ho sbagliato
![]() la calcolatrice di Windows convertendo in binario andava in overflow per rappresentare 20 volte 9 servono 2 o 3 bit in piu. |
|
|
|
|
|
#5 | |
|
Member
Iscritto dal: Dec 2006
Messaggi: 198
|
Quote:
Se non è così ignora la mia soluzione ![]() PS: Ah, che forse intenda la dimensione dell'oggetto BigInt? In questo è veramente un bel casino, perchè oltre a studiarti come si memorizza i dati il BigInt, devi anche tenere in considerazione che la JVM aggiunge dell'overhead suo per il GC e chissà che altro. |
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: May 2009
Messaggi: 366
|
Quote:
riesco a risalire alla precisione (da rs.getmetedata().getPrecision() dove rs e un ResultSet), ma non alla sua dimensione in byte? Grazie ciao.
__________________
visitate http://www.forumsenzacontro.altervista.org |
|
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Apr 2006
Messaggi: 22462
|
Quote:
http://java.sun.com/j2se/1.4.2/docs/...igInteger.html
__________________
amd a64x2 4400+ sk939;asus a8n-sli; 2x1gb ddr400; x850 crossfire; 2 x western digital abys 320gb|| asus g1
Se striscia fulmina, se svolazza l'ammazza |
|
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
|
Quote:
__________________
|
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: May 2009
Messaggi: 366
|
bigint è un esempio devo convertire tutti i tipi dei dati dei vari dbms in tipi definiti da me ecco perchè mi serve sapere la dimensione di ogni tipo che leggo per poterlo convertire nel tipo giusto.
__________________
visitate http://www.forumsenzacontro.altervista.org |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
scusa, ma chiedo: stai cercando di risolvere lo stesso problema che avevi esposto in questa discussione? Ho cercato di darti una mano, ma ad un certo punto non mi era chiaro quello che ti serviva... ciao. P.S.: Comunque se ora stai cercando di eseguire il mapping tra i tipi di dato definiti in Mysql e tipi Java, l'approccio è il medesimo: devi prenderti le specifiche (come ti ha suggerito ^TiGeRShArK^) di Mysql per vedere come li codifica e poi trovare una corrispondenza per i tipi Java, avendo le specifiche dei tipi primitivi Java sotto mano.
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) Ultima modifica di banryu79 : 13-10-2009 alle 11:14. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:34.




















