3. 串的处理 在实际的开发工作中,对字符串的处理是最常见的编程任务。 本题目即是要求程序对用户输入的串进行处理。具体规则如下: 1. 把每个单词的首字母变为大写。 2. 把数字与

来源:互联网 发布:简述算法的复杂度分析 编辑:程序博客网 时间:2024/05/01 03:53


package shiyan1__3;


import java.util.Scanner;
public class shiyan1__3 {


public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("请输入一个字符串:");
Scanner sc=new Scanner(System.in); 
String s=sc.nextLine();
 
for(int i=0;i<s.length();i++)
{
if(Character.isLowerCase(s.charAt(0)))
{
s=toupper(s,0);


}
if(i>0&&s.charAt(i-1)==' '&&Character.isLowerCase(s.charAt(i)))
{
s=toupper(s,i);


}
if(i>0&&Character.isDigit(s.charAt(i-1))&&Character.isLetter(s.charAt(i)))
{
     s=toadd(s,i);
    
  
     }
if(i>0&&Character.isDigit(s.charAt(i))&&Character.isLetter(s.charAt(i-1)))
{
s=toadd(s,i);


}
if(i>0&&Character.isWhitespace(s.charAt(i-1))&&Character.isWhitespace(s.charAt(i)))
{
s=todelete(s,i);
   i=i-1;
}
}
System.out.println(s);



}
public static String toupper(String s,int i)
{
s=s.substring(0,i)+s.substring(i,i+1).toUpperCase()+s.substring(i+1);
return s;
}
public static String toadd(String s,int i)
{
         s=s.substring(0,i)+"_"+s.substring(i);
return s;
}
public static String todelete(String s,int i)
{
s=s.substring(0,i-1)+s.substring(i);
return s;
}


}


0 0
原创粉丝点击