题解 | #表示数字#

表示数字

http://www.nowcoder.com/practice/637062df51674de8ba464e792d1a0ac6

/**
将一个字符中所有的整数前后加上符号“*”,其他字符保持不变。连续的数字视为一个整数。


输入描述:
输入一个字符串

输出描述:
字符中所有出现的数字前后加上符号“*”,其他字符保持不变
*/
import java.util.*;
public class Main {
        public static void main(String[]args){
            Scanner input=new Scanner(System.in);
            String str=input.next();
            char[]ch=str.toCharArray();
            int len=ch.length;
//            for(int i=0;i<len;i++) {
//            	System.out.println(ch[i]);
//            }
            if(Character.isDigit(ch[0])) {
            	System.out.print("*");
            }
            for(int i=0;i<len-1;i++){
               //hh5
            	//len=3 len-1=2
            	//i=0 ch[0]是字母 ch[1]是字母 输出ch[0] h
            	//i=1 ch[1]是字母 ch[2]是数字 输出ch[1] h *
            	//i=2 跳出循环
            	
                if (!Character.isDigit(ch[i])&& Character.isDigit(ch[i+1]) ){
                    //字母+数字 数字前面输出胡一个*
                	System.out.print(ch[i]);
                	System.out.print("*");
                //	System.out.println("字母+数字");
                	
                }
                if(Character.isDigit(ch[i] )&&!Character.isDigit(ch[i+1]) ){
                   //数字+字母 数字后面输出一个*
                	
                	System.out.print(ch[i]);System.out.print("*");
                	//System.out.println("数字+字母");
                	
                } 
                //数字+数字
                if(Character.isDigit(ch[i])&&Character.isDigit(ch[i+1])) {
                	System.out.print(ch[i]);
                	//System.out.println("数字+数字");
                	
                }
                //字母+字母
                if(!Character.isDigit(ch[i])&&!Character.isDigit(ch[i+1])) {
                	System.out.print(ch[i]);
              //  	System.out.println("字母+字母");
                	
                }
               
            }
          if(Character.isDigit(ch[len-1])) {
            	System.out.print(ch[len-1]);
            	System.out.print("*");
            }else {
            	System.out.print(ch[len-1]);
            }
        }
}
全部评论

相关推荐

Java面试先知:我也是和你一样的情况,hr 说等开奖就行了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务