Problem początkującego.

0

Witam!
Od dzisiaj próbuję bawić się Javą i już mam problem.

Mam taki kod:

public class Program {
public static void main(String args[]) {
if(args.lenght>0) {
String tekst=args[0];
System.out.print(tekst);
}
else {
System.out.print("Brak danych");
}
}
}

Gdy chcę sprawdzić czy wszystko jest dobrze wywala mi błąd że we fragmencie

if(args.lenght>0) {

nie wie co to jest kropka :/
W podręczniku kod jest identyczny i tam podobno działa.

0

Coś kłamiesz, Java nie pisze takich komunikatów jak: "nie wiem co to jest kropka". Jak już coś pisze, to zwykle w języku obcym. Więc wklej cały komunikat błędu i cały kod, co go napisałeś.

0

Powinno być:

String[] args

a nie:

String args[]

W Javie jest inaczej niż w C++.

0

Powinno być:
String[] args

Trochę mnie przeraził ten post, więc sprawdziłem i sprawa ma się tak, że nie ma lenght tylko length i wtedy działa. I to niezależnie gdzie są nawiasy.

0

lengHT ?

0

Fakt jest tam literówka, ale poprawnie w Javie piszę się String[] args a nie String args[] przynajmniej jeśli chodzi o argumenty metody main. Te dwa zapisy oznaczają co innego.

0

Zgadza się... jest literówka...jaki wstyd [???]
Ale w książce wyraźnie jest, że nawias jest po args.

0

@jagi, głupoty pleciesz. Fragment dokumentacji:

The [] may appear as part of the type at the beginning of the declaration, or as part of the declarator for a particular variable, or both, as in this example:

byte[] rowvector, colvector, matrix[];

This declaration is equivalent to:

byte rowvector[], colvector[], matrix[][];
0
Satyr93 napisał(a)

Zgadza się... jest literówka...jaki wstyd [???]
Ale w książce wyraźnie jest, że nawias jest po args.

Tak tez jest poprawnie. Nie ma po co sie sprzeczać jak jest lepiej. W niektórych książkach jest napisane ze lepiej dac [] zaraz po typie bo taki zapis od razu pokazuje ze to jest typ tablicowy. Ale to nie ma znaczenia bo tworzona struktura danych tak naprawde jest ta sama.

1 użytkowników online, w tym zalogowanych: 0, gości: 1