Hirdetés
- Milyen processzort vegyek?
- Bambu Lab 3D nyomtatók
- 5.1, 7.1 és gamer fejhallgatók
- Az Inteltől – nem csak az Intelnek
- Milyen billentyűzetet vegyek?
- Először sikerült AI felskálázót integrálnia a Proton fő komponensébe a Valve-nak
- Külső merevlemezek - USB, eSATA, FireWire HDD
- boot hiba
- Multimédiás / PC-s hangfalszettek (2.0, 2.1, 5.1)
- Apple MacBook
Ú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?:))
- Xiaomi 15T - reakció nélkül nincs egyensúly
- Szeged és környéke adok-veszek-beszélgetek
- PlayStation 5
- Battlefield 6
- Kínai és egyéb olcsó órák topikja
- Vivo X300 Pro – messzebbre lát, mint ameddig bírja
- Android szakmai topik
- Okos Otthon / Smart Home
- Milyen processzort vegyek?
- One otthoni szolgáltatások (TV, internet, telefon)
- További aktív témák...
- T14 Gen1 27% 14" FHD IPS Ryzen 5 PRO 4650U 16GB 512GB NVMe ujjlolv IR kam gar
- ÚJ MSI CYBORG 15 A13VF - 15.6"FHD 144Hz - i7-13620H - 16GB - 512GB - Win11 - RTX 4060 -3 év garancia
- GAMER PC! i7-12700KF / RTX 3060 Ti / Z690 / 16GB 3200MHz / Z690 / 1TB NVMe / 700w!
- Ryzen 5 3600X Komplett PC 32GB RAM, 1.5TB NVMe SSD, Vízhűtés
- Latitude 5440 27% 14" FHD IPS i7-1365U 16GB 512GB NVMe magyar vbill ujjolv IR kam gar
- iPhone 14 Pro Max emelt kapacitású 4790mAh diagnosztizálható akkumulátor, +ajándék ragasztó
- HP ZBook Fury G7 Intel Core i7-10850H Refurbished - Garancia
- HP 13 Elitebook 830 G7 FHD IPS 600nit i5-10210U 16GB 256GB SSD Intel UHD Win11 Pro 4G LTE Garancia
- BESZÁMÍTÁS! MSI B450 R7 5700X 32GB DDR4 512GB SSD RTX 3080 10GB Zalman Z1 Plus Cooler Master 750W
- Geforce GTX 1050, 1050 Ti, 1060, 1650, 1660 - GT 1030 - Low profile is (LP)
Á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


