P141 实战练习——字符串(修改后)

1、在项目中创建Number类,判断字符串“mingrikejijavabu”中字符‘i’出现了几次,并将结果输出。

方法一:

1       // String str="mingrikejijavabu";
2        // System.out.println("输入的字符串="+str);
3        // String[]a=str.split("i");
4        // int sum=0;
5        // for(String t:a)                            //未考虑i放最后的情况,如果i放在最后则这种代码运行结果少一次
6        // {
7        //    sum++;            
8        //}
9        //System.out.println("字符串中字符i出现了"+(sum-1)+"次");

修改后的代码为:

 1 String str="mingrikejijavabui";
 2         System.out.println("输入的字符串="+str);
 3         String[]a=str.split("i");
 4         int sum=0;    
 5         int l=str.length()-1;
 6         if (str.charAt(l)=='i')
 7         {
 8             for(String t:a)
 9             {
10                 sum++;            
11             }
12             System.out.println("字符串中字符i出现了"+sum+"次");
13         }        
14         else
15         {
16         for(String t:a)
17         {
18             sum++;                
19         }
20         System.out.println("字符串中字符i出现了"+(sum-1)+"次");
21         }

则运行结果为:

方法二:

1        String str="mingrikejijavabu";
2         System.out.println("输入的字符串="+str);
3         String str2=str.replace("i", "");
4         int n=(str.length()-str2.length());
5         System.out.println("字符串中字符i出现了"+n+"次");

方法三:

 1   String str="mingrikejijavabu";
 2         System.out.println("输入的字符串="+str);
 3         int i=0;
 4         int sum=0;
 5         char g='i';        
 6         for(i=0;i<str.length();i++)
 7         {
 8             if(str.charAt(i)==g)
 9             {
10                 sum++;
11             }
12         }
13         System.out.println("字符串中字符i出现了"+sum+"次");

 

运行结果均为:

2、不用去除字符串中所有空格的两种方法,只用for循环和if条件语句实现去除空格。

 1 String str="   张  三 李  四     ";
 2         System.out.println("输入的字符串="+str);
 3         char []a= new char[str.length()];     //此种方法有缺陷,因为定义的数组a的长度是字符串str的长度,则运行结果会把所有的空格放到最后。
 4         int j=0;                              //若想去掉空格,则需要用到substring截取
 5         for(int i=0;i<str.length();i++)
 6         {
 7             if(str.charAt(i)!=' ')
 8             {
 9                 a[j]=str.charAt(i);
10                 j++;                           
11             }                          
12         }
13         String b=new String (a);
14         //System.out.println("去掉空格后是:"+b);

System.out.println("去掉空格后是:"+b.substring(0,4));//用截取之后空格消失

运行结果为:

 

原文地址:https://www.cnblogs.com/hanazawalove/p/5232273.html