Java 如何创建一个程序从字符串中过滤出小写和大写字母?

Java 如何创建一个程序从字符串中过滤出小写和大写字母?,java,Java,我想写一个代码,分别过滤掉小写和大写字母,并且必须显示每种字母的数量。请帮助伙计们提示:遍历字符串,您可以检查字母是否为小写的大写,如下所示: Character.isUpperCase(str.charAt(i)); //returns true if char is upper case 及 其中is str是字符串,i是用于遍历字符串的变量。希望这有帮助

我想写一个代码,分别过滤掉小写和大写字母,并且必须显示每种字母的数量。请帮助伙计们

提示:遍历字符串,您可以检查字母是否为小写的大写,如下所示:

Character.isUpperCase(str.charAt(i));  //returns true if char is upper case


其中is str是字符串,i是用于遍历字符串的变量。希望这有帮助
#include <stdio.h>
#include <string>
#include <iostream>
#include <vector>
using namespace std;
int main()
{
  std::string s1;
  std::vector< pair<char,int> > uppercase;
  std::vector< pair<char,int> > lowercase;
  std::vector< pair<char,int> >::iterator it;
  getline(cin,s1);
  int arr[255]={0};

  for(int i=0;i<s1.size();i++)
  {
        arr[s1[i]]++;
  }

  for(int i=0;i<s1.size();i++)
  {
        if(int(s1[i])<97)
        {
              uppercase.push_back(make_pair(s1[i],arr[s1[i]]));
        }
        else
        {
               lowercase.push_back(make_pair(s1[i],arr[s1[i]]));
        }
  }

  cout<<"\n\n";

  for(it=uppercase.begin();it!=uppercase.end();it++)
  {
        cout<<it->first<<" "<<it->second<<"\n";
  }
  for(it=lowercase.begin();it!=lowercase.end();it++)
  {
        cout<<it->first<<" "<<it->second<<"\n";
  }
  return 0;
}

您可以进一步改进。

这段代码可以工作,但我想我刚刚完成了您的家庭作业

int i;
String str = "Hello Stackoverflow! WaZZuP";
String lower = "";
String upper = "";
String other = "";

for (i = 0; i < str.length(); i++){
    if (Character.isUpperCase(str.charAt(i))){
        upper += str.charAt(i);
    }else if (Character.isLowerCase(str.charAt(i))){
        lower += str.charAt(i);
    }else{
        other += str.charAt(i);
    }
}

System.out.println("In the String '" + str + "' there are " + upper.length() + " Upper Case, " + lower.length() + " Lower Case and " + other.length() + " Other Characters");
System.out.println("Upper Chars are: '" + upper + "'");
System.out.println("Lower Chars are: '" + lower + "'");
System.out.println("Other Chars are: '" + other + "'");

你已经试过什么了?即使你试过什么。您的问题不清楚,能否举例说明?您希望如何显示?您希望如何输入字符串?过滤到底是什么意思?如果逻辑对你有帮助,你可以接受答案。你可以使用基本的字符匹配,就像我给出的解决方案一样,可以用JAVA实现。。我只是提供了一些类似algo的东西。。。。在编写代码之前,我提到。。。。。。。。。。。如果这让你很恼火,你可以投反对票,伙计。。。我刚才讲了一个概念,这个概念可以用于JavaMan中可用的不同数据类型。谢谢我正在学习,这是一个过去的论文问题。
int i;
String str = "Hello Stackoverflow! WaZZuP";
String lower = "";
String upper = "";
String other = "";

for (i = 0; i < str.length(); i++){
    if (Character.isUpperCase(str.charAt(i))){
        upper += str.charAt(i);
    }else if (Character.isLowerCase(str.charAt(i))){
        lower += str.charAt(i);
    }else{
        other += str.charAt(i);
    }
}

System.out.println("In the String '" + str + "' there are " + upper.length() + " Upper Case, " + lower.length() + " Lower Case and " + other.length() + " Other Characters");
System.out.println("Upper Chars are: '" + upper + "'");
System.out.println("Lower Chars are: '" + lower + "'");
System.out.println("Other Chars are: '" + other + "'");
public class Test1 {

    public static void main(String[] args) {
        String s = "My name is Biraj.";
        String up = "";
        String down = "";
        for(int i=0;i<s.length();i++) {
            if(Character.isUpperCase(s.charAt(i))) {
                up = up+s.charAt(i);
            } else {
                down = down+s.charAt(i);
            }
        }
        System.out.println(up);
        System.out.println(down);
    }

}