zoukankan      html  css  js  c++  java
  • Java:求字符串中邻接的数字为一个整体

    public static void main(String[] args) {
    		String strNumbers = "0123456789";//用来进行判断数字的
    
    		System.out.println("请输入一个字符串:"); 
    		String string = new Scanner(System.in).next(); //自定义输入 
    		String[] strings = new String[string.length()];//自定义是字符串
    		System.out.println("自定义的长度=>"+strings.length);
    		//循环自定义的字符串,把相应的每个字符放入数组中
    		for (int i = 0; i < string.length(); i++) {
    			strings[i] = string.substring(i, i + 1);
    		} 
    		int length = 0;//定义索引下标 
    		int sumInteter = 0;//计算整数
    		boolean bool = true; 
    		String[] strs = new String[string.length()];//再新建个数组,用来存放 当是连续数字时,把那个连续的数据当成一个数组
    		//循环所有的字符串
    		for (String str : strings) { 
    			//把相应的字符串放入strNumbers中使用indexof的方法判断是否; 如果是就返回 相应索引下标,否则 返回-1
    			int index = strNumbers.indexOf(str);
    			if (index == -1) {//表示当前值不是数字
    				strs[length] = str;//直接把当前的值 赋值 给  数组
    				length++;//索引下标 自增
    				bool = true; // 锁开启
    			} else {//表示当前值是数字
    				if (bool) { 
    					strs[length] = str;
    					length++;
    					sumInteter++;
    					bool = false;//锁关闭,使锁关闭的原因是当下一个字符是 也数字是运行下面else的操作
    				} else {  //当前值和前一个值也是数字, 就运行这步
    					//因为之前的索引自增了, 索引必须要-1  ,使用concat把数字链接到前一个值的尾部
    					strs[length - 1] = strs[length - 1].concat(str);
    					 
    				}
    			}
    		}
    		System.out.println("多少个整数"+sumInteter+"个");
    		for (String str : strs) {
    			if (str != null) {
    				System.out.println(str);
    			}
    		}
    		 
    	}
    

      

  • 相关阅读:
    6 docker-harbor仓库搭建
    4 dockerfile介绍及其实例应用
    1 docker 介绍和安装
    2 docker镜像
    PAT甲级1075 PAT Judge
    PAT甲级1139 First Contact【离散化】
    PAT甲级1055 The World's Richest【排序】
    PAT甲级1013-1014-1015
    洛谷P1135 奇怪的电梯【bfs】
    洛谷P1182 数列分段【二分】【贪心】
  • 原文地址:https://www.cnblogs.com/zhu520/p/7338568.html
Copyright © 2011-2022 走看看