【算法】检测大写字母

问题描述

https://leetcode.cn/problems/detect-capital/

介绍

我们定义,在以下情况时,单词的大写用法是正确的:

  • 全部字母都是大写,比如 “USA” 。
  • 单词中所有字母都不是大写,比如 “leetcode” 。
  • 如果单词不只含有一个字母,只有首字母大写, 比如 “Google” 。

给你一个字符串 word 。如果大写用法正确,返回 true ;否则,返回 false 。

示例 1:

输入:word = “USA” 输出:true

示例 1:

输入:word = “FlaG” 输出:false

实现

package demo;
public class UpperLetterTest {
    public static void main(String[] args) {
        System.out.println(test("AAAA"));
        System.out.println(test("aaaa"));
        System.out.println(test("Aa"));
    }

    public static Boolean test(String word){
      if(word == null || word == ""){
          System.out.println("word不能为空");
          return false;
      }
      if(word.toUpperCase().equals(word)){
          System.out.println(word+ "用法正确");
         return true;
      }
      byte[] arr = word.getBytes();
      if(word.toLowerCase().equals(word)){
          System.out.println(word+ "用法正确");
          return true;
      }
      boolean flag = true;
        if(arr[0] >= 'A' && arr[0] <= 'Z'){
            for(int i = 1;i < arr.length; i++){
                if(arr[i] >= 'A' && arr[i] <= 'Z'){
                    flag = false;
                    break;
                }
            }
        }
      return flag;
    }
}

在这里插入图片描述

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)