Hirdetés
- Újratervezi az Apple az iPhone előlapját
- Fotók, videók mobillal
- Android alkalmazások - szoftver kibeszélő topik
- Poco F3 - a mindenes, de nem mindenkinek
- Android 16-ra nyitott az egyik legmenőbb csukható
- Milyen okostelefont vegyek?
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Bemutatkozott a Poco X7 és X7 Pro
- Huawei Watch GT 6 és GT 6 Pro duplateszt
- Igazi csúcskészülék lett a Poco F7 Ultra
Új hozzászólás Aktív témák
-
dantes
tag
válasz
Azazello-
#1791
üzenetére
2,
boolean result = S1.equals(S2);4,
for(int i = 0; i < str.length(); ++i) {
System.out.println(i + ": " + str.charAt(i));
}5,
private boolean checkSort(int[] x) {
for (int i = 0; i < x.length - 1; i++) {
if (num > num[i + 1]) {
return false;
}
}
return true;
}6,
HashMap hashMap = new HashMap();
hashMap.put("key", "value");
Object value = hashMap.remove("key");
boolean isContains = hashMap.containsKey("key"); -
bpx
őstag
válasz
Azazello-
#1708
üzenetére
egy bűn ronda és egyszerhasználatos megoldás
(talán ehhez kell a legkevesebb pluszt hozzátenni ill. módosítani a kódban):
Numbers osztályban egy új függvény:
(nem kiírja a sort mint a printLine(), hanem String-et épít belőle - és az utolsó szám után nem tesz space-t)public String getLine() {
String ret = "";
for(int i=0;i<index.length;i++){
ret += String.format("%2d" + (i==index.length-1?"":" "), index[i]);
}
return ret;
}Tickets osztályban kiíratás pedig:
itt ugye "bele van égetve" a programkódba, hogy hol milyen karakterből mennyi legyen (még szerencse hogy a sorok mindig egyforma hosszúak)public void printTicket(){
System.out.println("* * * * * * * * * * * * * *");
System.out.println("** **");
System.out.println("** Lottery Tickets **");
System.out.println("** **");
System.out.println("* * * * * * * * * * * * * *");
for (Numbers n : lottoLines) {
System.out.println("** " + n.getLine() + " **");
}
System.out.println("* * * * * * * * * * * * * *");
}persze lehet sokkal szebben meg univerzálisabban, de egy ekkora példánál felesleges szerintem
-
wiggen123
senior tag
válasz
Azazello-
#1702
üzenetére
Nyomkodjad a spacet meg a backspacet, amíg jó nem lesz, vagy nem tudom milyen tanácsra vársz...
Sose értettem, miért akarnak az emberek ilyen csicsás kiíratás dolgokat programozni. Én mindig csak annyit csináltam, amit feltétlen muszáj volt. Úgyse az a lényeg, hogy milyen szépen íratsz ki konzolra... Egyik tanárom a bináris fákat irattatta ki valami eszméletlen durva módon c-ben. Ha már ennyire csicsázni akarod használj swinget

Mod: Látom nálatok ezen szőröznek, hogy tényleg ilyen csicsa kell a kiíratáshoz. Na akkor én hogy csinálnám: a számokat összefűzném egy stringbe szóközökkel elválasztva. Megnézném mekkora lehet max a hossz (ha minden szám kétjegyű lett a húzásnál az mennyit jelent) ehhez határoznám meg a felső és alsó keretek hosszát. A közbülső ticketes sorokat pedig ahogy már elkezdtem mondani egy sztringbe a számok elválasztva, elé a "* ". Majd kiszámolod mennyi hely van még és annyi spacet hozzáfűzöl egy for ciklussal, végül a * a végére, és kész a ticketes sor is.
-
bpx
őstag
válasz
Azazello-
#1702
üzenetére
a Numbers osztály printline() függvénye új sort kezd, így nehéz lesz a csillagot odavarázsolni a sor végére utólag

ha ettől eltekintünk, a "%2d " miatt ugye mindig egyforma hosszú sorokat ír ki, szóval előre lehet tudni hogy hány db csillag vagy space kell a keret soraiba -
bpx
őstag
válasz
Azazello-
#1694
üzenetére
public void printTicket(){
System.out.println("* * * * * * * * * * * * * *");
System.out.println("** **");
System.out.println("** Lottery Tickets **");
System.out.println("** **");
System.out.println("* * * * * * * * * * * * * *");
//access each element of the arrayList and call its printLine() method
for (Numbers n : lottoLines)
{
n.printLine();
}
}néha rádupláz szerkesztésnél :/
-
bpx
őstag
válasz
Azazello-
#1650
üzenetére
no, hát egy kicsit más mint gondoltam, de mind1
1: kell ugye egy Concert osztály, olyan tagváltozókkal, amiket te döntesz el mi lehet, legyen pl. a koncert éve, és helye
class Concert
{
private int year;
private string location;
}2: egy üres konstruktor, és paraméteres konstruktor, előbbi példánál maradva
class Concert
{
private int year;
private String location;
public Concert()
{
// ide jöhet pl. a default értékek beállítása
}
public Concert(int year, String location)
{
this.year = year;
this.location = location;
}
}a többi osztály ugyanígy
3: ugye privát tagváltozók vannak, nem szeretnénk, hogy mindenki kedvére módosítgassa őket, ezért van külön getter/setter (vagy accessor/mutator) metódus, ahol korlátozhatjuk a módosítást/elérést
például Artist osztály:
public class Artist
{
...
private int age;
...
public void setAge(int age) { this.age = age; }
public int getAge() { return this.age; }
}összes többi tagváltozóra ugyanígy
4: print method, elég egyértelmű sztem
System.out.println(...) és mehet az, amit épp ki kell írni
a változóknak adsz mondjuk default 0/null értéket, és ez alapján lehet vizsgálni, hogy be vannak-e állítva5: az itt leírt szabályokat kell megvalósítani
elég mondjuk a setter részben, és ha már úgyis meg van írva, akkor lehet konstruktorban is azt használni
pl. írja, hogy az Artist kora több mint 0, és kevesebb mint 120
ennek megfelelően kell megírni a settert + a konstruktort hozzáigazítanipublic class Artist
{
private int age;
public void setAge(int age)
{
if ((age > 0) && (age <120)) this.age = age;
}
public int getAge() { return this.age; }
// konstruktor módosítása
public Artist(..., int age, ...)
{
...
setAge(age);
...
}
}
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Ne várj sokat a vásárlással: drágulás a láthatáron
- Black Friday november 29. / Cyber Monday december 2.
- Sorozatok
- Újratervezi az Apple az iPhone előlapját
- Otthoni hálózat és internet megosztás
- gban: Ingyen kellene, de tegnapra
- Autós topik
- Kerékpárosok, bringások ide!
- Luck Dragon: Asszociációs játék. :)
- Háztartási gépek
- További aktív témák...
- BESZÁMÍTÁS! ASRock B550M R7 5700X 32GB DDR4 1TB SSD RTX 4070 Super 12GB GameMax Aero Mini ECO 650W
- GigGigabyte RX 9070 XT Gaming OC Ice 16G (Bontatlan)
- BESZÁMÍTÁS! ASUS H510M i7 10700 16GB DDR4 512GB SSD RTX 3060 12GB GDDR6 Zalman T4 Plus ADATA 600W
- Xiaomi 15 Ultra Silver Chrome 120 Hz WQHD+ LTPO AMOLED, Leica 1 + 200 MP periszkóp 16/512 GB
- Latitude 5450 14" FHD IPS Ultra 5 125U 16GB 512GB NVMe ujjlolv IR kam gar
- 152 - Lenovo LOQ (15IRH8) - Intel Core i5-12450H, RTX 4060
- BESZÁMÍTÁS! Asus H370-A i5 9600K 16GB DDR4 512GB SSD RTX 2060 Super 8GB Zalman T7 Zalman 500W
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- Garmin Forerunner 405 GPS óra
- Apple iPhone X Space Gray Ikonikus dizájn, Face ID, OLED kijelző 64 GB Használt, megkímélt ,100%
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő

(talán ehhez kell a legkevesebb pluszt hozzátenni ill. módosítani a kódban):
), csak arra akartam rámutatni, hogy a jelenlegi printline() implementációval ez nem fog menni, de egyébként egyszerű megoldani


