String do tablicy

0

Witam pytanie jest proste :) Dlaczego to wypisanie nie działa ? Dodam że jestem początkujący. Czyżby string nie był tablica znaków w javie?

public String toONP(String in)
{
    int pom;
    pom=in.length();

    for(int i=0;i<pom;i++)
    {
        System.out.print(in[i]+" ");
    }
}
0

Nope, afair String w Javie nie jest tablicą; od wyodrębniania pojedynczych znaków służy metoda bodajże charAt.

0

Powiedz jest jakieś rozszerzenie tej metody żeby zwracała null albo coś innego jeśli odwołamy się do znaku poza zakres tego stringa bo normalnie kompilator wywala błąd?

np słowo.length(); = 10; i wywołamy slowo.charAt(11)

ewentualnie jak to w if wsadzić?

Zawsze można zrobić coś takiego ale czy jest inna możliwosc?

public String toONP(String in){
 
int pom;
in=in+"0";
pom=in.length();

for(int i=0;i<pom;i++)
{
    if(in.charAt(i) == '0')
    
    System.out.print("Przekroczony zakres!");
    else
    System.out.print(in.charAt(i)+" ");
}
0
//Zapis String do tablicy char[]
        String text = "Ala ma kota";
        char[] charArray = text.toCharArray();

//wyświetlenie zawartości tablicy 
        for(int i=0; i<text.length();i++){
            System.out.print(charArray[i]);
        }
0

A gdybym chciał wpisać do tablicy jakieś działanie matematyczne zakładając że mogą występować np aaaa czyli (aaa*5)/bb tak by t[0] =( tab[1]=aaa itd. Pewnie trzeba samemu napisać funkcje bo gotowej nie ma?

0

Raczej nie ma.
Poczytaj o ONP oraz ogólnie o parsowaniu wyrażeń.

0

Gdybyś chciał wpisać do jednego pola tablicy cyfry i litery to pozostaje chyba tylko utworzyć tablicę Stringów.

String[] tbl = {"x*3+8y","coś tam"};
System.out.println(tbl[0]);

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