gpt4 book ai didi

java - 在每 x 位数字后拆分字符串

转载 作者:行者123 更新时间:2023-11-30 07:46:44 25 4
gpt4 key购买 nike

我有个小问题。我需要将一个字符串拆分成 x 个部分并将它们加在一起。编辑:如果我想用 x=3 拆分它,那么我将需要 4 个部分,但如果我想用 x=4 拆分它,那么我将需要 3 个部分。所以我的硬编码代码很糟糕。我的 x 总是我的字符串长度的倍数(3 是 009056737152 的倍数 - 长度 12)

示例:字符串:“009056737152”和地址长度 = 3;意味着我必须在 3 个数字之后拆分字符串。 009 056 737 152 然后我必须从右到左将其相加:251 + 737 + 650 + 009 = 1647。我的代码实际上无法正常工作。还有其他想法吗?

    int adresslength = 3;
String str = "009056737152"; System.out.println(str);
String result = str.substring(0,str.length() - adresslength - adresslength - adresslength );
String result2 = str.substring(adresslength,str.length() + -adresslength -adresslength );
String result3 = str.substring(adresslength + adresslength,str.length() + -adresslength );
String result4 = str.substring(adresslength + adresslength + adresslength,str.length() );
System.out.println(result); System.out.println(result2);System.out.println(result3);System.out.println(result4);

最佳答案

    public static void main(String[] main){
int adresslength = 3;
String str = "009056737152"; System.out.println(str);
int result = 0;
for(int i=0;i<str.length();i+=adresslength){
String subString = str.substring(i , i+adresslength);
String nSString = new String();
for(int j=subString.length()-1;j>=0;j--){
nSString += subString.charAt(j);
}
result+=Integer.valueOf(nSString);
}
System.out.println(result);
}

您可以将地址长度更改为 2、4、5,并根据您的要求额外添加约束,例如地址长度将按字符串长度划分模块等。

关于java - 在每 x 位数字后拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50435466/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com