Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我想检查字符串的空格,并想将空格后的第一个字符打印成大写字母_Java - Fatal编程技术网

Java 我想检查字符串的空格,并想将空格后的第一个字符打印成大写字母

Java 我想检查字符串的空格,并想将空格后的第一个字符打印成大写字母,java,Java,我想检查字符串的空格,并想将空格后的第一个字符打印成大写字母 例如-->输入-我有麻烦了 输出应该是这样-->我有麻烦了 我能够捕捉到字符串中的空白(无论有多少个),但不能将空格后的第一个字符更改为大写字母 以及如何将更改后的空格后的第一个字符(现在是大写字母)调整为原始的str。所以当我打印时,我会找到上面提到的输出 我已经分享了我尝试过的一切,请看一看并引导我通过 public class CatchSpace { public static void main(String[]

我想检查字符串的空格,并想将空格后的第一个字符打印成大写字母

例如-->输入-
我有麻烦了

输出应该是这样-->
我有麻烦了

  • 我能够捕捉到字符串中的空白(无论有多少个),但不能将空格后的第一个字符更改为大写字母

  • 以及如何将更改后的空格后的第一个字符(现在是大写字母)调整为原始的str。所以当我打印时,我会找到上面提到的输出

  • 我已经分享了我尝试过的一切,请看一看并引导我通过

    public class CatchSpace {
    
        public static void main(String[] args) {
            String str="I am in trouble";
    
            char[] arr=str.toCharArray();
    
            for(int i=0;i<arr.length;i++){
    
                if(arr[i]==' '){
    
                    //str.charAt(i+1);
                    //Character.toUpperCase(i+1);
                    char c=arr[i+1];    
                }
            }
        }
    }
    
    公共类捕获空间{
    公共静态void main(字符串[]args){
    String str=“我有麻烦了”;
    char[]arr=str.toCharArray();
    
    对于(int i=0;i您就快到了,但是您需要将新的大写字符存储回数组中:

        String str = "I am in trouble";
        char[] arr = str.toCharArray();
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] == ' ') {
                //str.charAt(i+1);
                //Character.toUpperCase(i+1);
                char c = arr[i + 1];
                arr[i+1] = Character.toUpperCase(c); // like this;
            }
        }
    
    String str=“我有麻烦了”;
    char[]arr=str.toCharArray();
    对于(int i=0;i
    您就快到了,但需要将新的大写字符存储回数组中:

        String str = "I am in trouble";
        char[] arr = str.toCharArray();
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] == ' ') {
                //str.charAt(i+1);
                //Character.toUpperCase(i+1);
                char c = arr[i + 1];
                arr[i+1] = Character.toUpperCase(c); // like this;
            }
        }
    
    String str=“我有麻烦了”;
    char[]arr=str.toCharArray();
    对于(int i=0;i
    您可以使用Apache Commons Lang代替直接Java API

    只需将字符串按空格分割,然后对每个标记使用
    StringUtils.capitalize
    方法,然后连接(即使用番石榴集合)

    我附上以下示例(使用番石榴和Commons Lang的极端版本):

    import java.util.List;
    导入com.google.common.base.Function;
    导入com.google.common.base.Joiner;
    导入静态com.google.common.collect.Lists.*;
    导入静态org.apache.commons.lang.StringUtils.*;
    公共类测试资本化{
    专用连接件连接件=连接件上的连接件(“”);
    私有函数fCapitalize=新函数(){
    公共字符串应用(字符串s){
    回报资本化;
    }
    };
    公共字符串大小写为all(){
    String str=“我有麻烦了”;
    列表标记=newArrayList(拆分(str,“”);
    列表大写=转换(标记、fCapitalize);
    返回joiner.join(大写);
    }
    }
    

    希望对您有所帮助。

    您可以使用ApacheCommonsLang代替直接的JavaAPI

    String str = "testy testy testy";
            char arr[] = str.toCharArray();
            for (int i = 0; i < str.length()-1; i++){
                //we go until length-1 so we don't get an out of bounds exception if the last character of the string is a whitespace
                if(Character.isWhitespace(arr[i])){
                    arr[i+1] = Character.toUpperCase(arr[i+1]);
                }
            }
            str = arr.toString();
    
    只需将字符串按空格分割,然后对每个标记使用
    StringUtils.capitalize
    方法,然后连接(即使用番石榴集合)

    我附上以下示例(使用番石榴和Commons Lang的极端版本):

    import java.util.List;
    导入com.google.common.base.Function;
    导入com.google.common.base.Joiner;
    导入静态com.google.common.collect.Lists.*;
    导入静态org.apache.commons.lang.StringUtils.*;
    公共类测试资本化{
    专用连接件连接件=连接件上的连接件(“”);
    私有函数fCapitalize=新函数(){
    公共字符串应用(字符串s){
    回报资本化;
    }
    };
    公共字符串大小写为all(){
    String str=“我有麻烦了”;
    列表标记=newArrayList(拆分(str,“”);
    列表大写=转换(标记、fCapitalize);
    返回joiner.join(大写);
    }
    }
    
    希望有帮助。

    String str=“testy testy testy”;
    
    String str = "testy testy testy";
            char arr[] = str.toCharArray();
            for (int i = 0; i < str.length()-1; i++){
                //we go until length-1 so we don't get an out of bounds exception if the last character of the string is a whitespace
                if(Character.isWhitespace(arr[i])){
                    arr[i+1] = Character.toUpperCase(arr[i+1]);
                }
            }
            str = arr.toString();
    
    char arr[]=str.toCharArray(); 对于(int i=0;i
    这样就可以了。如果数组的第一个字母还没有大写,那么唯一做不到的就是将其大写。如果需要,只需简单修改即可

    String str = "testy testy testy";
            char arr[] = str.toCharArray();
            arr[0] = Character.toUpperCase(arr[0]);
            for (int i = 0; i < str.length()-1; i++){
                //we go until length-1 so we don't get an out of bounds exception if the last character of the string is a whitespace
                if(Character.isWhitespace(arr[i])){
                    arr[i+1] = Character.toUpperCase(arr[i+1]);
                }
            }
            str = arr.toString();
    
    String str=“testy testy testy”;
    char arr[]=str.toCharArray();
    arr[0]=字符.toUpperCase(arr[0]);
    对于(int i=0;i
    String str=“testy testy testy”;
    char arr[]=str.toCharArray();
    对于(int i=0;i
    这样就可以了。如果数组的第一个字母还没有大写,那么唯一做不到的就是将其大写。如果需要,只需简单修改即可

    String str = "testy testy testy";
            char arr[] = str.toCharArray();
            arr[0] = Character.toUpperCase(arr[0]);
            for (int i = 0; i < str.length()-1; i++){
                //we go until length-1 so we don't get an out of bounds exception if the last character of the string is a whitespace
                if(Character.isWhitespace(arr[i])){
                    arr[i+1] = Character.toUpperCase(arr[i+1]);
                }
            }
            str = arr.toString();
    
    String str=“testy testy testy”;
    char arr[]=str.toCharArray();
    arr[0]=字符.toUpperCase(arr[0]);
    对于(int i=0;i