- Nvidia GPU-k jövője - amit tudni vélünk
- Bambu Lab 3D nyomtatók
- 5.1, 7.1 és gamer fejhallgatók
- Milyen széket vegyek?
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Tápos kibeszélő offtopik
- Vezeték nélküli fülhallgatók
- NVIDIA® driverek topikja
- 3D nyomtatás
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
Ú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?:))
- Nvidia GPU-k jövője - amit tudni vélünk
- Le Mans Ultimate
- Call of Duty: Warzone
- Bambu Lab 3D nyomtatók
- iPhone topik
- 5.1, 7.1 és gamer fejhallgatók
- Békéscsaba és környéke adok-veszek-beszélgetek
- Mibe tegyem a megtakarításaimat?
- Csendben elkaszálták a Hulu-féle Hitman sorozatot
- Nintendo Switch 2
- További aktív témák...
- iPhone 11 64GB 100% (3hónap Garancia)- AKCIÓ
- MacBook Pro 14" 2023 M3 Pro 11/14 mag, 36 GB RAM, 512GB SSD - 27% ÁFA 0383AB
- Apple iPhone 15 128GB,Újszerű,Dobozaval,12 hónap garanciával
- Beszámítás! Apple Mac Mini M4 16GB 256GB számítógép garanciával, hibátlan működéssel
- Lenovo ThinkPad T14S Gen1 Ryzen5 4650U Refurbished - Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
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).

)

