输入字符串s输出s中包含所有整数的最小和,
作者:互联网
package 德科; import java.util.Scanner; public class Main96_1 { /* 1.输入字符串s输出s中包含所有整数的最小和, 说明:1字符串s只包含a~z,A~Z,+,-, 2.合法的整数包括正整数,一个或者多个0-9组成,如:0,2,3,002,102 3.负整数,负号开头,数字部分由一个或者多个0-9组成,如-2,-012,-23,-00023 输入描述:包含数字的字符串 输出描述:所有整数的最小和 示例: 输入: bb1234aa d-00023sdfd34+d-15ew 输出 10 输入: bb12-34aa 输出: -31 说明:1+2-(34)=-31 输入: d-00023sdfd34+d-15ew 输出:-31 */ public static void main(String[] args) { Scanner sc = new Scanner(System.in); String s = sc.nextLine(); sc.close(); solution(s); } private static void solution(String str) { int sum = 0; char[] chars = str.toCharArray(); for (int i = 0; i < chars.length; i++) { char aChar = chars[i]; if (Character.isDigit(aChar)) { sum += Character.digit(aChar, 10); } if (aChar == '-') { i++; int startIndex = i; while (i < str.length() && Character.isDigit(chars[i])) { i++; } String substring = str.substring(startIndex, i); if (substring.length() > 0) { sum -= Integer.parseInt(substring); } i = i - 1; } } System.out.println(sum); } }
标签:String,chars,最小,整数,substring,str,字符串,aChar,sum 来源: https://www.cnblogs.com/wangpeng1201/p/16357669.html