How to count UPPER CASE letters and lowercase letters in given word or sentence?

// import java.lang.*;
import java.util.*;
public class Main {
  public static void main(String[] args) {
    Scanner scn = new Scanner(System.in);
    String str = scn.nextLine();
    int n = str.length();
    int upper = 0, lower = 0;
    for (int i =0 ; i < n ; i++)
    {
      char ch = str.charAt(i);
          if (ch>='A' && ch <= 'Z')
          {
            upper++;
          }
          else if (ch>='a' && ch <='z')
          {
            lower++;
          }
    }
               System.out.println("Upper count is: "+upper);
               System.out.println("Lower count is: "+lower);
  }
}

Code Explanation