- Magga: PLEX: multimédia az egész lakásban
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- eBay-es kütyük kis pénzért
- Mr. Y: Motoros sztorik #06
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- NASsoljunk: ZyXEL NSA-310 és az FFP
- Őskoczka
- gban: Ingyen kellene, de tegnapra
Új hozzászólás Aktív témák
-
D4nte
csendes tag
A legegyszerűbb akkor, ha meg is mutatom, amit leírtam.
public class Credits {
public static void main(String[] args) {
// a film adatainak beállítása
String title = "The Piano";
int year = 1993;
String director = "Jane Campion";
String role1 = "Ada";
String actor1 = "Holly Hunter";
String role2 = "Baines";
String actor2 = "Harvey Keitel";
String role3 = "Stewart";
String actor3 = "Sam Neill";
String role4 = "Flora";
String actor4 = "Anna Paquin";
// az adatok megjelenítése
System.out.println(title + " (" + year + ")\n" + "A "
+ director.toUpperCase() + " film.\n\n" +
role1 + "\t" + actor1.toUpperCase() + "\n" +
role2 + "\t" + actor2.toUpperCase() + "\n" +
role3 + "\t" + actor3.toUpperCase() + "\n" +
role4 + "\t" + actor4.toUpperCase());
}
} -
D4nte
csendes tag
A change* változókba nem szükséges külön eltárolnod a nagybetűsített dolgokat, annyi, hogy a printedben hívod meg ugyan új a függvényt az eredetiekre, amennyiben a kiíratáson kívül másra nem akarod használni ezeket a nagybetűsített verziókat. Ettől még az eredeti stringek (az előző hozzászólásokból is kiderülten) változatlanok maradnak.
-
Lacces
őstag
Nekem sem tiszta, mit akarsz pontosan, de lehet én vagyok lüke hozzá.
Ez lehet az amire gondoltál szerintem:
String result = title + " (" + year +")\n" +
"A " + director + " film.\n\n" +
(role1 + "\t" + actor1 + "\n" +
role2 + "\t" + actor2 + "\n" +
role3 + "\t" + actor3 + "\n" +
role4 + "\t" + actor4 + "\n" +
change).toUpperCase();
System.out.println(result);
role1-től a change-ig minden nagybetűs a többit meg kicsiben hagyja a result Stringben.
A toUpperCase() után oda lehet szúrni a toStrin()-et is de ez nem kötelező, anélkül is nagybetűsre alakítja.Karma hsz-e is hasznos. De szerintem még nem tartasz ott, hogy tud, ő miért javasolta a StringBuildert
Bár az is, igaz, hogy inkább forciklusban használják a StringBuildert.
Ennek oka röviden, hogy a String az egy olyan állandó, amelynek értéke futás közben megváltozhatatlan. Ha úgy mond konketenálsz egy String-et akkor új String jön létre.
role1 + "t" -> akkor ez egy új String objektum ami a memóriában van, és nem a régi módoítottad, ami szintén a memóriában van, és marad a program végéig! StringBuilder esetében pedig a régit tudod módosítani, és így csak String objektum van a memóriában. A JVM nem módosítja sosem a Stringeket, hanem újat hozz létre mindig! És ezzel eszi a memóriát. És ez azért is baj, mert a Szemétgyűjtő a Stringeket nem kezeli, nem dobja ki őket.
Bár van egy előnye ennek, az ha mégegyszer egy ugyanolyan String objektum jön létre (ugyanaz az értéke), akkor a JVM nem hozz létre új Strng-et hanem egész egyszerűen már egy meglévőre hivatkozik.
De ha tévedet, jönnek a többiek és nagy örömmel kijavítanak. -
Karma
félisten
Hogy mit szeretnél? Fontos lépés a programozásban, hogy pontosan tudod mit és miért akarsz csinálni. A zajt kordában kell tartani.
Jelen példa esetén nekem nem jött át a szándék. Kifejthetnéd.
Mindenesetre ha egy nagy stringben akarsz mindent összegyűjteni, akkor nincs más dolgod, mint összefűzöd őket. A rossz megoldás a + operátor, a kicsit jobb a StringBuffer/StringBuildet használata, nekem személy szerint az Apache Commons Lang nevű library StringUtils.join() metódusa tetszik a legjobban - nem vagyok a kerék újrafeltalálásának híve.Persze a gyakorlás az más tészta. De akkor is legyen legalább minimális értelme.
-
Karma
félisten
Ez a számítás teljesen jó ebben a formában szerintem.
A Math osztályban találsz tetszőleges hatványra emelő metódust, de a négyzet pont olyan, hogy ezért felesleges ezt bevonni.
---
Az alaphelyzetre visszatérve nem vagyok annyira meggyőződve arról, hogy jól választottál nyelvet. Amit most írsz stílus, ami egyszer strukturált programozásig fejlődhet, szerintem nem igényli a Javát; viszont rossz Java programozási gyakorlatot ültethet el a fejedben, amit nehéz lesz kiirtani.
-
Két alapvető dolgot tegyünk tisztába:
1. A tizedesvesszőt ponttal jelölik szinte minden prognyelvben
2. Int típusú változnak nem adhatsz értékül lebegőpontos számot. Tehát vagy lebegőpontosként definiálod a weight változót,// lebegőpontos, a szám végén egy f betűvel jelöljük
float weight = 250.0f;
weight += 0.45f * 3;
// dupla pontosságú lebegőpontos
double weight = 250.0;
weight += 0.45 * 3;vagy castolod a jobboldalt egész számmá:
weight += (int)(0.45f * 3);
Az utóbbinál figyelni kell, mert pontosságot veszíthetsz.
Sok sikert a tanuláshoz!
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Milyen autót vegyek?
- Windows 11
- Elektromos cigaretta 🔞
- Steam, GOG, Epic Store, Humble Store, Xbox PC Game Pass, Origin Access, uPlay+, Apple Arcade felhasználók barátságos izgulós topikja
- One otthoni szolgáltatások (TV, internet, telefon)
- NBA és kosárlabda topic
- Magga: PLEX: multimédia az egész lakásban
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Hosszabb bemutatót kapott a Borderlands 4
- Genshin Impact (PC, PS4, Android, iOS)
- További aktív témák...
- BONTATLAN Új Iphone 16 PRO 128Gb - 1TB Független 1év Apple GARANCIA Deák Térnél Azonnal Átvehető.
- Új Bontatlan Mac Studio M4 Max 2025 14cCPU /32cGPU / 36GB RAM / 512GB SSD - Azonnal Átvehető Deák.
- BONTATLAN Új Iphone 16e 128-512GB 1év APPLE garancia gyári független Deák AZONNAL Átvehető Deák térn
- ÚJ bontatlan S9 45mm Silver Stainless steel Cellular milanese fémszíj 199.900 azonnal átvehető Deák
- ÚJ kipróbálásra felbontott MacBook Pro 16 M4 Pro 14CPU/20GPU 24GB/512GB SSD Magyar billentyűzet Azon
- Lenovo ThinkPad 40AF docking station (DisplayLink)
- LG 65QNED87T / 65" - 164 cm QNED / 4K UHD / 120Hz & 3ms / HDR 10 Pro / FreeSync Premium / HDMI 2.1
- Csere-Beszámítás! AMD Ryzen 7 7800X3D Processzor!
- Samsung Galaxy A32 4G 128GB, Kártyafüggetlen, 1 Év Garanciával
- ÁRGARANCIA! Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RTX 5090 32GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest