Java-ban a null literál az érték hiányát jelöli.
A primitív adattípusoknak Java-ban mindig van alapértelmezett értékük, ezért soha nem lehetnek null értékűek.
Konvenció szerint kisbetűvel kezdődnek, például int.
A referenciatípusok egy objektum memóriacímét tárolják, és felvehetik a null értéket is.
Általában nagybetűvel kezdődnek, például String.
Ha megpróbálsz egy primitív változónak null értéket adni, az fordítási idejű hibát eredményez, mert a változó mindig a hozzá rendelt típus primitív értékét tárolja.
//Throws compile time error stating the required type is int, but null was provided
int number = null;
Ha egy referenciaváltozónak adsz null értéket, az nem eredményez fordítási idejű hibát, mert a referenciaváltozók nullázhatók.
//No error will occur as the String variable str is nullable
String str = null;
Ebben a feladatban olyan kódot írsz, amely névjelvényeket nyomtat gyári alkalmazottak számára.
Az alkalmazottaknak van azonosítójuk, nevük és részlegnevük. Az alkalmazotti jelvények címkéi a következő formátumot követik: "[id] - name - DEPARTMENT".
Valósítsd meg a Badge.print() metódust úgy, hogy visszaadja az alkalmazott jelvényének címkéjét:
Badge badge = new Badge();
badge.print(734, "Ernest Johnny Payne", "Strategic Communication");
// => "[734] - Ernest Johnny Payne - STRATEGIC COMMUNICATION"
Ügyelj arra, hogy a részleg neve a címkén csupa nagybetűvel jelenjen meg.
A számítógépes rendszer egyik furcsasága miatt előfordul, hogy az új alkalmazottaknak a gyárban való kezdéskor még nincs azonosítójuk.
Mivel a jelvény kötelező, ideiglenes jelvényt kapnak, amelyen nincs ott az azonosító előtagja. Módosítsd a Badge.print() metódust, hogy támogassa azokat az új alkalmazottakat, akiknek még nincs azonosítójuk:
Badge badge = new Badge();
Badge.print(null, "Jane Johnson", "Procurement");
// => "Jane Johnson - PROCUREMENT"
Még a gyár tulajdonosának is mindig jelvényt kell viselnie.
A tulajdonosnak azonban nincs részlege. Ebben az esetben a címkén a részlegnév helyett "OWNER" szerepeljen.
Módosítsd a Badge.print() metódust, hogy a tulajdonos számára is kiírjon egy címkét:
Badge badge = new Badge();
badge.print(254, "Charlotte Hale", null);
// => "[254] - Charlotte Hale - OWNER"
Figyelj rá, hogy előfordulhat, hogy a tulajdonos egyben új alkalmazott is:
Badge badge = new Badge();
badge.print(null, "Charlotte Hale", null);
// => "Charlotte Hale - OWNER"
Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Java nyelvet 26 fogalom158 feladat segítségével, valódi emberi mentorálással, mindez ingyen.