Hirdetés
- Luck Dragon: Asszociációs játék. :)
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- Magga: PLEX: multimédia az egész lakásban
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- Mr Dini: Mindent a StreamSharkról!
- gban: Ingyen kellene, de tegnapra
- Dr. Mózes: Lakberendezési tanácskérés
- eldiablo: 30 év után szakítottunk, de azért még beszélünk...
- Brogyi: CTEK akkumulátor töltő és másolatai
Új hozzászólás Aktív témák
-
Ursache
senior tag
Ahogy mondtad, hogy programnyelvet kell felismertetni, feldolgozni, egyből a fordítóprogramok tárgy ugrott be, onnét meg bisonc++ és flex. Gondoltam, hogy java-ban is van valami ehhez hasonló (ennek megfelelő) változat, és van
Szépen elkülönítve vannak a részek, struktúrált felépítés, semmi gányolás. Lexikális elemzés, szintaktikus elemzés, szemantikus elemzés, kódgenerálás (kódoptimalizálás).De ennek azért komoly elméleti háttere is van (LA)LR(1) vagy általánosítva k-ra. SLR(1), meg mindenféle formális nyelvek, automata, grammatikák, nyelvosztályok. VDA (véges determinisztikus automaták), különféle algoritmusok, CYK algo, etc... Szóval könnyen el lehet benne veszni.
Hajrá!

-
thon73
tag
Bocsánat, hogy magamnak válaszolok, de időközben végül egy próbaprogrammal megfejtettem:
Object longobject = 0x0102030405060708L;
long longprimitive = (long)longobject;
// char charprimitive = (char)longobject; -> exception
// int intprimitive = (int)longobject; -> exception
char charprimitive = (char)(long)longobject;
int intprimitive = (int)(long)longobject;
// Character charobject = (Character)longobject; -> exception
// Integer intobject = (Integer)longobject; -> exception
Character charobject = Character.valueOf( (char)((Long)longobject).longValue() );
// (char)(long)longobject;
Integer intobject = (int)(long)longobject;Végülis logikus: a wrapper osztályok (szinte) kizárólag a saját primitivjükkel átjárhatóak (boxing). És csak a primitivek alakíthatóak egymásba (casting), a nem öröklési viszonyban álló objectek nem. (Bár a Long-Object átalakítás szintén casting, ha mindent jól értettem.)
Gondolom, ez itt sokaknak nagyon alap szint; de én azért jól megszenvedtem vele, mire kiolvastam a tudományból, hogy pontosan mi is kell ide meg hogyan működik...
-
thon73
tag
A Long Object "lebutítását" csak így tudtam megoldani:
Object result = getLongValue();
result = (long) result & (long) Character.MAX_VALUE;Működni működik, csak nem tűnik túl szépnek.
Viszont egy lépéssel később megint elakadtam. A "lebutított" értéket át is szeretném pakolni egy másik wrapper osztályba. ((Egy univerzális feldolgozó Object-ként kapja meg az értékeket ((Long a numerikus és String a Stringek számára), és különböző átalakítások, ellenőrzések után ezt kellene visszaadnia, csak éppen a kívánt méretnek megfelelő wrapper osztályba helyezve. Pl. Objekctként numerikus Long érték -> Objectként numerikus Character érték.))
Hogyan tudok egy Objectet, ami bizonyosan egy Long értéket tartalmaz, a lehető legegyszerűbben egy olyan Object-té alakítani, ami Character-t tartalmaz? ((A fordító vagy feleslegesnek látja a próbálkozásaimat, vagy hibaüzenetekkel bombáz.))
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- GYÖNYÖRŰ iPhone 13 mini 128GB Blue -1 ÉV GARANCIA -Kártyafüggetlen, MS3884, 100% Akkumulátor
- Apple iPhone 14 Pro Max 128GB,Átlagos,Dobozaval,12 hónap garanciával
- Dell Latitude 7420 Core i7-1185 G7, 16GB RAM, SSD, jó akku, számla, 6 hó gar, szép állapot
- GYÖNYÖRŰ iPhone 13 Pro Max 128GB Silver -1 ÉV GARANCIA - Kártyafüggetlen, MS4160
- HIBÁTLAN iPhone 13 Pro Max 256GB Sierra Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3521
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Szépen elkülönítve vannak a részek, struktúrált felépítés, semmi gányolás. Lexikális elemzés, szintaktikus elemzés, szemantikus elemzés, kódgenerálás (kódoptimalizálás).

)

