Java upperCase?

4 Antworten

public static boolean startsWithUpperCase(String s) {
    if(s.length() == 0 || s == null) return false;
    return s.charAt(0) == s.toUpperCase().charAt(0);
}

Oder besser:

public static boolean startsWithUpperCase(String s) {
    if(s.length() == 0 || s == null) return false;
    return Character.isUpperCase(s.charAt(0));
}

Mit substring den ersten Buchstaben holen, dann diesen Buchstaben mit demselben Buchstaben toUpper testen.
True, dann ist es wohl ein Großbuchstabe


Gansa 
Fragesteller
 10.03.2020, 19:31
    public static void main(String[] args) {

        String s = "Hallo";

        System.out.println(startsWithUpperCase(s));
    }

    public static boolean startsWithUpperCase(String s) {

        boolean checkUpper = true;

        for (int i = 0; i < s.length(); i++) {
            if (!isUpperCase(s.charAt(i))) {
                checkUpper = false;
                break;
            }

        }
        return checkUpper;
    }
}
0
Gansa 
Fragesteller
 10.03.2020, 19:32
@Gansa

also der soll nur den ersten buchstaben überprüfen uns dann false oder true zurück geben

0
regex9  10.03.2020, 19:34
@Gansa

Schiebe den break-Befehl hinter das if (also hinter die Klammer, die derzeit nach break kommt).

0
safur  10.03.2020, 19:48
@Gansa

Wenn du nur den ersten Buchstaben möchtest, kannst du dir die For-Schleife auch sparen. Sonst mit substring

Das i kannst du dir dann auch sparen und immer 0 abfragen.

if (Character.isUpperCase(s.charAt(0))) {
     checkUpper = true;
}       
0
Gansa 
Fragesteller
 10.03.2020, 19:53
@safur

das habe ich gerade gemacht danke!

1
safur  10.03.2020, 19:55
@regex9

was würde das bringen? Möchtest du, dass die Schleife beim ersten Durchgang abgebrochen wird?

Ich meine dann kann man sich die Schleife auch sparen. Oder hattest du etwas anderes gedacht?

0
regex9  10.03.2020, 20:41
@safur

Ja, das wäre der Zweck dahinter. Ich habe darauf gebaut, dass der FS dabei selbst die Sinnhaftigkeit der Schleife infrage stellt. Es wäre dann ja zu offensichtlich gewesen.

1
Gansa 
Fragesteller
 10.03.2020, 20:44
@safur

jaaa danke :D

1

Das kannst du mit der oracle api lösen.

Z.B. so:

String s = "Hello";
boolean b = isUppercase(s.charAt(0));