簡體   English   中英

如何從列表中選擇以小寫字母開頭的字符串

[英]How to Choose the string which starts with small letter from a list

如果我有一個包含[StudentName,ResigsterNumber,系,年級,評論]的列表

我如何只選擇那些以小寫字母開頭的單詞。 即(等級和評論)

使用Java 8,這非常簡單:

List<String> list = Arrays.asList("StudentName", "Department", "grade", "comment");

List<String> filteredList = list.stream()
    .filter(s -> Character.isLowerCase(s.charAt(0)))
    .collect(Collectors.toList());

System.out.println(filteredList); // prints "[grade, comment]"

您可以檢查每個單詞的第一個字母的ASCII值。 小寫字母的ASCII值介於97到122之間。循環瀏覽列表並將字符串存儲在變量str

int i=str.charAt(0);
if(i>=97 && i<=122){
      // this is a word starting with lowercase letter
      System.out.println(str)
}

只需遍歷列表,然后選擇1個元素位於'a''z'之間的字符串

 List<String> result=new ArrayList<String>();
 for(String str: list){
     if(str.charAt(0)>='a' && str.charAt(0)<='z'){
         result.add(str);
     }
 } 

這是完整的類,帶有最終輸出:

    public class Test {
        public static void main(String[] args) {
            String[] testNames = new String[] { "StudentName", "ResigsterNumber", "Department", "grade", "comment" };

            List<String> names = new ArrayList<>();
            Arrays.asList(testNames).forEach((testCh) -> {
                if (testCh != null && !testCh.isEmpty() && Character.isLowerCase(testCh.charAt(0))) {
                    names.add(testCh);
                }
            });

            System.out.println(names);
        }
    }

只需遍歷元素並使其處於以下條件即可:

boolean hasLowerCase = element.equals(element.toLowerCase());

這將允許您檢查:

if(hasLowerCase){System.out.println(Element is in lowercase)};
if(!hasLowerCase){System.out.println(Element is not in lowercase)};
for (String l : list){
    char character = l.charAt(0); // This gives the first character
    if (Character.isLowerCase(character)){
        // proceed with list element with small letter found
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM