Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Il primo Micro RGB di Samsung per il salotto è il 65 pollici da 2.749 euro. Sul banco di misura abbiamo rilevato 2.000 nit di picco, nero assoluto con il local dimming e il 91,4% del BT.2020, il colore più ampio che abbiamo misurato su un LCD
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
Apple ha rinnovato iPhone 18 Pro soprattutto dentro: chip A20 Pro a 2 nm con memoria affiancata al SoC, camera di vapore tre volte più ampia, Dynamic Island più piccola del 25% grazie a Face ID sotto il display e fotocamera principale con diaframma variabile da f/1.48 a f/4. Lo abbiamo misurato al colorimetro e nei benchmark, usato con iOS 27 e messo alla prova in fotografia tra laghi, borghi e interni poco illuminati
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
A Londra, per il trentennale dei Toughbook, Panasonic ha presentato il tablet G3 e il 2-in-1 34. Con Jon Tucker, a capo dell'ingegneria europea, abbiamo parlato di ciò che non si vede: batterie, antenne, porte seriali e accorgimenti nati sul campo
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 23-05-2007, 07:17   #1
danyroma80
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 1520
come inizializzo un array di byte?

Sto scrivendo un'applicazione java che comunica con un'altra applicazione tramite socket. Le funzioni che ho a disposizione sono read e write che prendono come argomenti un array di byte.

Quando definisco ad esempio
byte[] a;
come lo inizializzo? come faccio a scriverci dentro i byte che voglio siano spediti dall'altra parte?
danyroma80 è offline   Rispondi citando il messaggio o parte di esso
Old 23-05-2007, 08:05   #2
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
Quote:
Originariamente inviato da danyroma80 Guarda i messaggi
Sto scrivendo un'applicazione java che comunica con un'altra applicazione tramite socket. Le funzioni che ho a disposizione sono read e write che prendono come argomenti un array di byte.

Quando definisco ad esempio
byte[] a;
come lo inizializzo? come faccio a scriverci dentro i byte che voglio siano spediti dall'altra parte?
http://java.sun.com/j2se/1.4.2/docs/...lang/Byte.html

vedi se ti può essere utile usare la classe Byte .. oppure ci scrivi in modo diretto nel tipo primitivo

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 23-05-2007, 08:30   #3
danyroma80
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 1520
come faccio a scriverci in modo diretto?

vorrei riempire ogni byte dell'array con un numero che va da 0 a 255 in decimale oppure da 00 a FF in esadecimale ma ovviamene non posso utilizzare banalmente gli int visto che ognuno è rappresentato da 4 byte anche se il numero è inferiore a 255 e ne basterebbe uno solo.
danyroma80 è offline   Rispondi citando il messaggio o parte di esso
Old 23-05-2007, 08:37   #4
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da danyroma80 Guarda i messaggi
come faccio a scriverci in modo diretto?

vorrei riempire ogni byte dell'array con un numero che va da 0 a 255 in decimale oppure da 00 a FF in esadecimale ma ovviamene non posso utilizzare banalmente gli int visto che ognuno è rappresentato da 4 byte anche se il numero è inferiore a 255 e ne basterebbe uno solo.
Fare un cast a byte?
__________________
Andrea, Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 23-05-2007, 08:41   #5
danyroma80
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 1520
Quote:
Originariamente inviato da andbin Guarda i messaggi
Fare un cast a byte?
no perchè così i numeri da 128 a 255 me li rappresenta negativi
danyroma80 è offline   Rispondi citando il messaggio o parte di esso
Old 23-05-2007, 08:48   #6
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da danyroma80 Guarda i messaggi
no perchè così i numeri da 128 a 255 me li rappresenta negativi
Allora ....

1) In Java un byte ha valori in un range -128 ~ +127 e basta.

2) Dipende da cosa ci devi fare con quei byte. Se da un int 212 (0xD4) ottieni un byte che ha quindi valore -44, dipende da cosa ci devi poi fare.
Se da qualche parte vuoi riottenere un int, farai b & 0xFF, e riottieni 212 (0xFF è una costante int, il byte viene portato a int ma limitato, con la AND, a 8 bit).
Intendo dire ... chissenefrega se diventa negativo ... dipende da cosa ci devi fare!!
__________________
Andrea, Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 23-05-2007, 10:03   #7
danyroma80
Senior Member
 
Iscritto dal: Oct 2005
Messaggi: 1520
dall'altra parte ho una applicazione symbian che in base ai byte che arrivano fa determinate operazioni. Questa applicazione non l'ho scritta io e quindi non posso modificarla.

Ad esempio se questa legge il byte FE ovvero 254 in decimale fa una determinata operazione.

Ora come gli invio 254 in rete?

int i=254;
byte a=(byte)i;
outputs.write(a);

In rete viene effettivamente spedito 11111110 in binario?

Ultima modifica di danyroma80 : 23-05-2007 alle 10:09.
danyroma80 è offline   Rispondi citando il messaggio o parte di esso
Old 23-05-2007, 10:15   #8
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da danyroma80 Guarda i messaggi
dall'altra parte ho una applicazione symbian che in base ai byte che arrivano fa determinate operazioni. Questa applicazione non l'ho scritta io e quindi non posso modificarla.

Ad esempio se questa legge il byte FE ovvero 254 in decimale fa una determinata operazione.
Quindi, presumo io, il byte lo tratta come unsigned.

Quote:
Originariamente inviato da danyroma80 Guarda i messaggi
Ora come gli invio 254 in rete?

int i=254;
byte a=(byte)i;
outputs.write(a);

In rete viene effettivamente spedito 11111110 in binario?
Certamente! Quello che viene spedito è appunto 0xFE (11111110 in binario). Poi dipende da come lo si vuole interpretare, se con segno allora è -2, se senza segno allora è 254. La questione è tutta lì.
__________________
Andrea, Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura Samsung Micro RGB R95H, il primo LCD a LED rossi...
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre iPhone 18 Pro: la recensione del miglior iPhone ...
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34 Panasonic, 30 anni di Toughbook: la "Bibbia...
realme C100x, lo smartphone economico con la batteria da 7500 mAh. La recensione realme C100x, lo smartphone economico con la bat...
Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
SpaceX mostra nuove immagini del lancio ...
Cina: CAS Space e Guangzhou Laboratory e...
Nikon Comedy Wildlife Awards 2026: le fo...
Samsung Galaxy A57 e A37 costano di più ...
Windows 11 26H2 taglia il consumo di RAM...
KINGPIN è tornato! Il re dell'ove...
CPU usata, ban ereditato: il caso del Ry...
Spunta un engineering sample di Ryzen 9 ...
iPhone 18 Pro, alcuni utenti segnalano s...
Android Auto: Gemini ascolta la domanda ...
OpenAI avvisa oltre 100 organizzazioni p...
Dall'AI alla SI: il rebranding di Trump ...
0patch offrirà supporto esteso pe...
Sudo sembra un iPod, ma nasconde una car...
Meta, OpenAI e Google rifanno OpenClaw: ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 00:18.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v