Hirdetés
- Újratervezi az Apple az iPhone előlapját
- Mobil flották
- Samsung Galaxy A56 - megbízható középszerűség
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Samsung Galaxy S23 Ultra - non plus ultra
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Poco F7 – bajnokesélyes
- Akciófigyelő: kedvezménnyel nyit az Earfun Air Pro 4+
- Yettel topik
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
Ú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?:))
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Kertészet, mezőgazdaság topik
- One otthoni szolgáltatások (TV, internet, telefon)
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Temu
- Kihúzhatja a gyufát a PC-s gyártóknál az érkező új Xbox
- Újratervezi az Apple az iPhone előlapját
- ASRock lapok általában
- Gumi és felni topik
- ASUS routerek
- További aktív témák...
- Precision 5570 15.6" FHD+ IPS i7-12800H RTX A2000 32GB 1TB NVMe ujjlolv IR kam gar
- Lenovo Thinkbook L16 Gen 1 Magyar Ultra U 135U, 16GB DDR5, 512GB NVME, Gari: 2029-05-29
- AlzaErgo M120B Secure Pivot TV tartó konzol - ÚJ
- AlzaErgo M120B Secure Pivot TV tartó konzol - használt
- BESZÁMÍTÁS! ASRock B450 R5 5500 16GB DDR4 250GB SSD 1TB HDD GTX 1050Ti 4GB GameMax STORM ADATA 600W
- Nvidia Quadro P400/ P600/ P620/ P1000/ T400/ T600/ T1000 - Low profile (LP) + RTX A2000 6/12Gb
- BESZÁMÍTÁS! Asus X470 R9 5900X 32GB DDR4 1TB SSD RTX 3070 Ti 8GB Zalman Z1 PLUS A-Data 750W
- Lenovo ThinkCentre M920q/ Dell OptiPlex 3070/ Hp EliteDesk 800 G4-G5 mini, micro PC-Számla/garancia
- Apple iPhone 11 64GB, Kártyafüggetlen, 1 Év Garanciával
- Honor 200 Lite 256GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

(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


