Kezdőoldal » Számítástechnika » Programozás » Java-ban, hogyan tudom ezt a...

Java-ban, hogyan tudom ezt a problémát megoldani?

Figyelt kérdés
Egy metodusnak egy String a paramétere, ami egy Vezeték+Keresztnév lesz, és azt kell a metodusban ellenőtiznem, hogy ez valóban egy név pár e, szóval, hogy mindkettő legalább egy karakter, hogy van köztük szóköz, aztán, hogy a kezdő betűk azok nagy betűk e. Hogyan tudom ezt megcsinálni? Egyelőre azt akartam az if() be beirni, hogy pl. a paraméterem az (String fullname) és, hogy a fullname (0). eleme nagy betű e, de nemtudom, hogy ezt is hogy oldhatnám meg, van az angol ABC nagybetűinek valami halmaza, amire hivatkozhatok java-ban?

2016. okt. 11. 17:45
 1/8 anonim ***** válasza:

Simán tudsz úgy hivatkozni a karakterekre, mintha számok lennének. ASCII táblában ugye ABC rendben vannak. Tehát:


if (szoveg.charAt(0) >= 'A' && szoveg.charAt(0) <= 'Z')

2016. okt. 11. 18:29
Hasznos számodra ez a válasz?
 2/8 anonim ***** válasza:

Én erre regex-szel mozdulnék rá. Ha kifejezetten magyar nevekre kell működnie, akkor még alátennék egy vezetéknév-keresztnév adatbázist is, csak hogy ne tudjanak olyan baromságokat beírni, mint:

Nagyfarkú Diófa

Ez ugyebár teljesen megfelel a feltételeknek, de lássuk be, ilyen neve kis hazánkban senkinek sem lehet.

2016. okt. 11. 18:32
Hasznos számodra ez a válasz?
 3/8 anonim ***** válasza:
#2 megoldása még a felhasználói élmény növelésére is nagyon jó. Ha már van egy ilyen adatbázisod, akkor mondjuk a Levenshtein-szótávolság algoritmusa alapján helyre is tudod állítani a véletlenül elgépelt neveket. Ha mondjuk valaki beírja, hogy "naggy istávn", akkor a programod kijavíthatja magától "Nagy István"-ra.
2016. okt. 11. 18:42
Hasznos számodra ez a válasz?
 4/8 A kérdező kommentje:
Az első válasz teljesen megfelel az elvárásaimnak és a beadandó feladatom elvárásainak, viszont köszönöm a második választ is, ha komolyabb programhoz kellene ez, akkor aligha nem tényleg az lenne a legjobb megoldás, ha egy adatbázishoz kapcsolnám
2016. okt. 11. 18:50
 5/8 anonim ***** válasza:

Az adatbázisos ötlet teljesen abszurd.

Nem lehet felkészíteni minden névre, meg amúgy se nagyon lenne értelme.

2016. okt. 11. 18:57
Hasznos számodra ez a válasz?
 6/8 A kérdező kommentje:
Már miért ne lehetne minden névre felkészíteni? Szerintem van az elfogadott nevekről egy lista, de nem vagyok benne biztos szóval nem tudok ez ügyben vitatkozni
2016. okt. 11. 19:24
 7/8 anonim ***** válasza:

Szia! Tudod hogy már lényegtelen a kérdés, de én így oldanám meg:

(ha le akarjuk ellenőrizni, hogy megfelelt-e az elvárásainknak)

boolean nev(String nev) {

String[] str;

try{

str=nev.split(" ");

} catch(Exception e) {

return false;}

for(String s:str) {

if(s.charAt(0)!=s.charAt(0).toUpperCase()|| s.length()<1) {

return false;}

}

return true;


Bocsi ha valamit elírtam, telefonról vagyok. Ha a s.charAt(0).toUpperCase() nem működik, próbáld meg őket előszőr String változóba áttenni, és utána legyen az összehasonlítás és a toUpperCase ().

2016. okt. 12. 21:21
Hasznos számodra ez a válasz?
 8/8 anonim ***** válasza:
*Tudom
2016. okt. 12. 23:08
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!