- Fórumok
- Szoftverfejlesztés
- Java programozás
- (kiemelt téma)
- Luck Dragon: Asszociációs játék. :)
- gban: Ingyen kellene, de tegnapra
- gerner1
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- sziku69: Fűzzük össze a szavakat :)
- djculture: Az elvileg már senkinek nem kellő HDD-k ára is egekbe emelkedett 4 hónap alatt
- eBay-es kütyük kis pénzért
- Gurulunk, WAZE?!
- Archttila: SMART tesztelés automatizálva: smartctl poller script Zsh-ban, RPi-re
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
Új hozzászólás Aktív témák
-
axioma
veterán
Enyém minden frontend backend ahogy van.
Most hogy mondod igen ennek több értelme van. Én teljesen úgy gondolkodtam, hogy a műveleti mezőnek TextField-nek kell lennie, és ha mondjuk becopy-zod a "4*(3+sin(12))"-t akkor nincs gombnyomás ami mentén felosztod a műveleteket meg nyeljen le üres zárójelet ilyenek.
De akkor "csak" össze kellene foltoznom egy reguláris kifejezést amivel szétbontom, és műveleti sorrendben végigmegyek tömbbön.Semmis akkor a kérdés, csak évek óta nem csináltam ilyesmit, és túl későn este akartam hozzákezdeni. Inkább le is tagadom, hogy hozzákezdtem volna megy a letagadom kupacba.
Me'g mindig nem. A szamologepbe NEM copy-zol olyat ami oda van irva (legalabbis az mar nem szamologep hanem mini-excel...). A szamologep a billentyunyomkodasok menten mukodik. Peldaul azt irja be hogy 12 / 17 sin. Ez lesz a sin(12/17). De mi a fenenek kuldened ebben a formaban a backend-nek? Te a nem szamjegy gombnyomasoknal, ha volt uj szam akkor azt es a muveletet kuldod el, es reszeredmenyt vissza. Tehat 12,/ eseten vissza 12, 17 sin-re vissza a sin(12/17). Ha megengeded a precedenciat (es/vagy zarojelet, de ez azert eggyel komplexebb, en elsore megneznem hogy a feladatleiras alapjan muszaj-e, mert a sima szamologep NEM tudja es a legtobb usernek kb. nem is kell), akkor annyi hogy a backend-en kell egy verem is. De a szamologepen tulkepp forditott lengyel, tokenizalt a bemenet (ugye a sin-ra se a 3 betut kell atkuldeni, hanem egy kodot ami azt jelenti nalad hogy a sin gombot nyomtak meg).
-
floatr
veterán
Enyém minden frontend backend ahogy van.
Most hogy mondod igen ennek több értelme van. Én teljesen úgy gondolkodtam, hogy a műveleti mezőnek TextField-nek kell lennie, és ha mondjuk becopy-zod a "4*(3+sin(12))"-t akkor nincs gombnyomás ami mentén felosztod a műveleteket meg nyeljen le üres zárójelet ilyenek.
De akkor "csak" össze kellene foltoznom egy reguláris kifejezést amivel szétbontom, és műveleti sorrendben végigmegyek tömbbön.Semmis akkor a kérdés, csak évek óta nem csináltam ilyesmit, és túl későn este akartam hozzákezdeni. Inkább le is tagadom, hogy hozzákezdtem volna megy a letagadom kupacba.
Na most javíts ki ha rosszul értelmezem, de te egy kifejezés kiértékelőt akarsz írni? Mert az azért nem annyira triviális... bár az amőba sem
-
axioma
veterán
Sziasztok!
Számológépet csinálok, és bajban vagyok a string parsing-al. Minél többet gondolkodok rajta annál jobban túlbonyolítom...
Neten keresve, vagy csak kétszámos megoldásokat találok amiben nincs is parsing, vagy visszadob a 120 ezredik split() pont mentén leíráshoz.
Tudnátok esetleg ajánlani valamilyen referenciát/példát ahol bármi hasonló megvan valósítva? Szóban is bőven elég lenne, csak hogy nagyjából milyen módszerrel lenne szépen megoldva.Egy kis rant: nyakamba varrtak egy számológépet amiben minden alapműveletnek, sin, tan cos, asztali, és webes nézettel aminek azonos adatbázisa van, működjön minden fő számrendszerben, minden alap mértékegységet váltson át, és API-n keresztül menjen a valuta váltás.
Mindeközben mások nyamvadt amőbát csinálnak meg recepkönyvet. String in, save click, és csókolom.Mit szeretnel parse-olni? Ha jol ertem akkor a tied a frontend. Ha meg igy van, akkor a gombnyomasok tulajdonkeppen megcsinaljak neked a tokenizalast, sot tulkepp rogton a kifejezesfat is felepitheted mindig ahogy jon a kovetkezo gombnyomas (nyilvan szamoknal a szamjegyeket erdemes a frontenden osszevarni es 1x konvertalni). De mar csak azert is igy erdemes mukodnie mert a szamologep a reszeredmenyt altalaban mar irja.
Vagy valamit nem ertek jol. -
mobal
nagyúr
Sziasztok!
Számológépet csinálok, és bajban vagyok a string parsing-al. Minél többet gondolkodok rajta annál jobban túlbonyolítom...
Neten keresve, vagy csak kétszámos megoldásokat találok amiben nincs is parsing, vagy visszadob a 120 ezredik split() pont mentén leíráshoz.
Tudnátok esetleg ajánlani valamilyen referenciát/példát ahol bármi hasonló megvan valósítva? Szóban is bőven elég lenne, csak hogy nagyjából milyen módszerrel lenne szépen megoldva.Egy kis rant: nyakamba varrtak egy számológépet amiben minden alapműveletnek, sin, tan cos, asztali, és webes nézettel aminek azonos adatbázisa van, működjön minden fő számrendszerben, minden alap mértékegységet váltson át, és API-n keresztül menjen a valuta váltás.
Mindeközben mások nyamvadt amőbát csinálnak meg recepkönyvet. String in, save click, és csókolom.Problémás kód részletet tudnál szolgáltatni?
-
-Faceless-
őstag
Sziasztok!
Nem javaztam már évek óta, de most egy projekthez csináltam egy Kerteshaz.java fájlt ami benne van a Haz package-ben, és le kellene fordítanom a varos.jar fajllal együtt.javac -cp -g varos.jar Kerteshaz.java
fordításra viszont mindenhol "package does not exist"-et kapok. Nem tudom, hogy én csinálok valami nagyon basic dolgot rosszul, de az éjszaka már megpróbáltam egy Windows-os, egy Linux-os gépen a szükséges java verzióval, google keresésre elolvastam az első 3 oldalnyi találatot, és legalább 10-szer átnéztem elírás után, de semmit nem találtam.Rendkívül hálás lennék, ha valaki tudna esetleg segíteni
Semmi, kár volt éjszakázni.
Ha gondoljátok lehet törölni -
axioma
veterán
Például lenne egy 5x5-ös objektumokból álló tömböm (a pálya), és ki szeretnék osztani a 25 mezőből 5-öt üresnek majd 10-et az 1-es játékosnak, 5-öt a 2-esnek, 5-öt a 3-asnak. Itt az 5, 10, 5, 5 lenne az x, y, z, stb.
Létrehozok egy pályával megegyező méretű segéd tömböt, amit feltöltök az előbbinek megfelelően 5 0-val, 10 1-el, és így tovább.
Ezt a segédtömböt összekeverem, a véletlen mezőkiosztásért, majd egyszerű tömbbejárással átadom az értékeket a pályának.A segédtömb feltöltése lenne a gond, mivel változó számú játékosnak változó számú mezőt kellene kiosztani.
Meg tudnám oldani, hogy tömbbejárásban visszaszámlálom a lehetséges játékosok mezőszámait, de nekem nem tűnik szépnek.Mar nem azert, de ezt kicsit lehetne szerintem egyszerusiteni. En azt tennem, mar a jelenleginek minel kisebb modositasaval, hogy
- megkeverek egy 0..(N-1) tombot
- amikor irom a masik tombbe, akkor dontom el, hogy az az index hanyadik reszbe esik, es az alapjan irom az eredetibe a megfelelo erteket (raadasul ha ilyen szep szamaid vannak, akkor oszthatod ugy hogy az otodere csinalsz egy switch-et, sot akar erre me'g aritmetikai kifejezest is...).
Bar ha megfelelo valoszinusegekkel generalnal es a vegen csak azokat tenned fel, amikbol me'g hianyzik egyebkent ujat "dobsz", az is eleg veletlen tabla kene legyen. -
Lortech
addikt
Itt a konkrét kód DiceWars.java. Még félig sincs kész, de nem tudok emiatt továbbhaladni. Bocsánat a rendetlen kódért, csak először működjön alapon, ha megoldottam a problémát kitakarítok.
#Karma Rendben addig is azokat átírom.
A link nem jött össze, de javítottam. - Karma
57. sorban keletkezik NPE.
palya.palya[seged2] null, null objektum a getJatekosSzam() metódus hívás NPE-t eredményez.
IoMuveletek osztály 6. sorában példányosítod a palya meződet:
public Palya palya = new Palya();Ez önmagában nem inicializálja a palya.palya elemeit Mezőkre. Ezt a palyaEpito metódusban csinálnád, viszont ezt ezen a példányon nem hívod meg.
Azt látom, hogy a Main osztályodban meghívod palyaEpito metódust, de azt egy másik példányon teszed, a 20. sorban:
pj.palyaEpito();Viszont ezt a pj objektumot nem adod át az IoMuveletek osztálynak, hanem IoMuveletek-ben létrehozol egy teljesen új Palya példányt.
-
-Faceless-
őstag
Itt a konkrét kód DiceWars.java. Még félig sincs kész, de nem tudok emiatt továbbhaladni. Bocsánat a rendetlen kódért, csak először működjön alapon, ha megoldottam a problémát kitakarítok.
#Karma Rendben addig is azokat átírom.
A link nem jött össze, de javítottam. - Karma
Köszönöm a javítást!
Tudom, hogy nagy kérés egy ilyen katyvaszban hibát keresni, de jelen pillanatban nem tudok máshol segítséget kérni, és rendkívül hálás lennék. -
Karma
félisten
Sziasztok!
Volna egy kis (elég nagy) problémám. Volna egy ehhez hasonló kódrészlet:
public class Field{
int diceCount, playerNumber;
//get and set methods etc.
}
public class Board{
public Field[] board = new Field[36];
public void boardBuilder(){
for(int i = 0; i < board.length; i++){
board[i] = new Field();
//give value to the Fields
}
}
}
public class IoMethods{
public Board board = new Board();
public void boardPrintOut(){
int helper;
for(int i = 0; i < 6; i++){
for(int j = 0; j < 6; j++){
//The next line is where it gets the Exception
helper = board.board[i*6 + j].getPlayerNumber();
//print part
}
}
}
}Már stack overflow-on is kétszer kétféleképpen rákérdeztem, de csak újra, és újra ugyan azt a választ kapom.
A Board-ban létrehozom a tömbböt, majd incializálom az objektumokat. A Boardon belül kiiratom ott minden rendben van. Az össze objektumnak megvannak az értékei.
Majd kaptam két különböző megoldást:-1- Készítsek egy konstruktort a Board-nak:
Board() {
this.boardBuilder();
}-2- Nem hívtam meg a boardBuildert: (de meghívtam, mert különben a Boardon belül nem tudnék benne értéket tárolni...)
Az első megoldásra a Boardon kívül minden meghívásnál elvesznek a tárolt értékek, és csak 0-val tér vissza.
A második megoldára pedig a példakódon is jelölt módon a tömb végigléptetésekor NullPointerE.-t kapok.Nagyon megköszönném a segítséget, mert kezdek kifutni az időből, és még mindig ilyeneken vagyok fenn akadva.

Pedig teljesen jók a válaszok. Alapvetően a boardBuilder metódus egy koncepcionális hiba, az egészet szüntesd meg, és tedd a konstruktorba a tömb elemeinek inicializálását. Ezzel NPE-d nem lesz több.
Hogy miért veszik el adat, az ebből a kódrészletből nem derül ki. Mivel minden tagváltozód publikus, bárhol elronthatod. Jót tenne a játéknak, ha elkezdenél objektum-orientáltan hozzáállni: az osztályok belső állapota privát, kifelé csak egy interfészt mutatnak, amik az általuk támogatott műveletekből áll.
Például a Board esetén a tömb privát, de van egy műveleted, ami egy X, Y koordinátapárhoz visszaadja az oda illő Fieldet.
-
Lortech
addikt
Sziasztok!
Volna egy kis (elég nagy) problémám. Volna egy ehhez hasonló kódrészlet:
public class Field{
int diceCount, playerNumber;
//get and set methods etc.
}
public class Board{
public Field[] board = new Field[36];
public void boardBuilder(){
for(int i = 0; i < board.length; i++){
board[i] = new Field();
//give value to the Fields
}
}
}
public class IoMethods{
public Board board = new Board();
public void boardPrintOut(){
int helper;
for(int i = 0; i < 6; i++){
for(int j = 0; j < 6; j++){
//The next line is where it gets the Exception
helper = board.board[i*6 + j].getPlayerNumber();
//print part
}
}
}
}Már stack overflow-on is kétszer kétféleképpen rákérdeztem, de csak újra, és újra ugyan azt a választ kapom.
A Board-ban létrehozom a tömbböt, majd incializálom az objektumokat. A Boardon belül kiiratom ott minden rendben van. Az össze objektumnak megvannak az értékei.
Majd kaptam két különböző megoldást:-1- Készítsek egy konstruktort a Board-nak:
Board() {
this.boardBuilder();
}-2- Nem hívtam meg a boardBuildert: (de meghívtam, mert különben a Boardon belül nem tudnék benne értéket tárolni...)
Az első megoldásra a Boardon kívül minden meghívásnál elvesznek a tárolt értékek, és csak 0-val tér vissza.
A második megoldára pedig a példakódon is jelölt módon a tömb végigléptetésekor NullPointerE.-t kapok.Nagyon megköszönném a segítséget, mert kezdek kifutni az időből, és még mindig ilyeneken vagyok fenn akadva.

Ha minden lényeges infó vagy a teljes kód megvolna a kérdésedben, tapasztalt szem fél perc alatt kiszúrná a problémát. Helyette van sok felesleges infó, amit azért nem biztos, hogy sokaknak van ideje kibogozni.
NPE ad neked sorszámot, az alapján elég egyértelmű szokott lenni szemmel veréssel is a probléma, ha mégsem, akkor bele kell állni debuggal, ha kell, visszanézni a stacken a frame-eket, a változóid állapotát. -
Karma
félisten
Például lenne egy 5x5-ös objektumokból álló tömböm (a pálya), és ki szeretnék osztani a 25 mezőből 5-öt üresnek majd 10-et az 1-es játékosnak, 5-öt a 2-esnek, 5-öt a 3-asnak. Itt az 5, 10, 5, 5 lenne az x, y, z, stb.
Létrehozok egy pályával megegyező méretű segéd tömböt, amit feltöltök az előbbinek megfelelően 5 0-val, 10 1-el, és így tovább.
Ezt a segédtömböt összekeverem, a véletlen mezőkiosztásért, majd egyszerű tömbbejárással átadom az értékeket a pályának.A segédtömb feltöltése lenne a gond, mivel változó számú játékosnak változó számú mezőt kellene kiosztani.
Meg tudnám oldani, hogy tömbbejárásban visszaszámlálom a lehetséges játékosok mezőszámait, de nekem nem tűnik szépnek.Rövidtávon megkönnyíted a saját életed, ha a kétdimenziós tömböket elfelejted, helyette egy dimenzióban tárolod a pályád és okosan indexelsz (pl. x,y koordinátákhoz a tömb y*N+x. elemét veszed). Ekkor a tömb feltöltése és megkeverése is triviálissá válik.
Mr Dini: Nem baj, hogy a szintaktikán elakadtál, mert a Thread.sleeppel amúgy is kinyírnád a játékot. Ezért nem is mondom meg, hogy lehetne feloldani az előző fordítási hibát.
Ha Bukkit plugint írsz esetleg, azzal meg lehet oldani ezt helyesen is. Tiszta Java-val nem tudom hirtelen, hogy tudnál egyszerűen visszatérni a UI szálra.
-
zsambek
aktív tag
Sziasztok!
Ismét zátonyra futottam. Most olyan problémám lenne, hogy hogyan lehetne szépen 2 dimenziós tömböt például x, y, z darab különböző konstanssal feltölteni.
Szóval mintha volna egy 6x6-os tömböm, amibe helyezzek el 6 db nullát, 4 db 1-est, stb.A korábban felhozott Fisher-Yates keveréshez használnám. Most hirtelenjében csak olyan megoldás jut eszembe, hogy végiglépkednék a tömbön, visszaszámlálom hány darab van, majd a következőre lépek, viszont amennyi féleképpen fel kellene töltenem, ez nagyon nem tűnik szépnek. Az Arrayfill()-el pedig csak egy konstanssal tudnám.
Minden bizonnyal egyszerű a megoldás, csak megint üresbe váltott az agyam, és nem jut más eszembe.
Előre is megköszönném!

Szia!
Kicsit ki tudnad fejteni, hogy x,y,z kulonbozo konstanssal feltolteni? Illetve, hogy pontosan mi az alap otlet, mert most igy annyira nem latom, hogy mit szeretnel. Esetleg egy peldaval tudnad szimulalni?
-
Karma
félisten
A range változó inputtól függően 28 - 36 - 48, de azt hiszem találtam rá megoldást. Még nem próbáltam ki, de ez meg fog felelni a célnak.
Pályaméret alapján egyenlő számú mező kiosztására lenne használva.public static void main(String[] args) {
Integer[] arr = new Integer[1000];
for (int i = 0; i < arr.length; i++) {
arr[i] = i;
}
Collections.shuffle(Arrays.asList(arr));
System.out.println(Arrays.toString(arr));
}A Collections.shuffle egyébként a helyes megoldás a feladatodra, örülök hogy megtaláltad. Az ebben implementált Fisher-Yates keverés egyenletes, szemben egy tipikus naív megoldással. Például itt van kifejtve, példával.
-
zsambek
aktív tag
Sziasztok!
Kezdő vagyok még java-ban, és lenne pár kérdésem.
Egy egyszerű konzolos játékot írnék, de pár dolgon fenn akadtam.
Próbáltam angolul rákeresni, de vagy nincs rá megoldás, vagy még nem elég jó az angolom ahhoz, hogy megtaláljam, amit akarok.
Szóval az első az lenne, hogy van-e közvetlen mód arra, hogy kiderítsem egy osztálynak hány példányosítása van?
Csinálhatnám egyszerűen, úgy is, hogy létrehozáskor számlálom, csak az érdekelne van-e más megoldás?Illetve a számomra fontosabb, hogy van-e ismétlés nélküli paraméteres random szám generátor?
Erre csak az jutott eszembe, hogy normál paraméterest használok, majd ha az adott tag volt már, akkor újra futtatnám, de erről nekem visít, hogy ronda.Nagyon hálás lennék, ha tudnátok segíteni.

Szia!
Az elsore sajnos nincs otletem, de erosen arra tippelek, hogy legyen egy static int-ed, amit constructor lefutasakor novelsz, es amikor a garbage collector elkapja, akkor pedig csokkentesz.
A random generatorosra viszont pedig sajnos valamilyen hasonlo lesz a megoldas. Hanyszor szeretnel egyebkent generaltatni? Illetve mekkora a range?
Új hozzászólás Aktív témák
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
- Fórumok
- Szoftverfejlesztés
- Java programozás
- (kiemelt téma)
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Apple MacBook
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Konkrét moderációval kapcsolatos kérdések
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Xbox tulajok OFF topicja
- Elemlámpa, zseblámpa
- Konzol Screenshot
- Battlefield 6
- Nem kell még temetni: 2 éves órajelcsúcsot döntöttek meg Raptor Lake-kel
- Projektor topic
- További aktív témák...
- 24 magos AMD Threadripper alapú munkára kiváló félgép, 128GB RAM-mal
- HP ZBook Fury 15 G7 i7-10850H 32GB 512GB SSD Quadro T2000 4GB FHD HUN bill, szép állapotban eladó
- Eladó MacBook Pro 16,1 2019 CTO
- új 0 km es garanciás lenovo loq rtx 5050 8gb
- Eladó teljesen újszerű karcmentes Samsung Galaxy Watch Ultra
- Honor 400 5G 512GB 8GB RAM Desert Gold Újszerű állapotban 2027.03.23-ig garanciával
- BESZÁMÍTÁS! Asus Rog STRIX RTX 2080 8GB videókártya garanciával hibátlan működéssel
- Xiaomi Redmi A5 / 3/64GB / Kártyafüggetlen / 12Hó Garancia
- Corsair iCUE ELITE CPU Cooler LCD Display Upgrade Kit
- iPhone 14 256GB Midnight -2 ÉV GARANCIA - Kártyafüggetlen, MS5281
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


