public class T2 {
/**
* @param args
*/
public static void main(String[] args) {
String[] str = { "I256616191651651321651", "am", "a28949461132156165", "boy" };
String[] strings = getString(str);
for (String s2 : strings) {
System.out.println(s2);
}
}
public static String[] getString(String[] str) {
List<String> list = new ArrayList<>();
for (String s : str) {
if (s.length() <= 8) {
// 计算出字符的长度与8的差以便补上0
s = putWords(s);
list.add(s);
} else {
// 记下最后的不够截取的字符的个数
int i = s.length() % 8;
for (int j = 0; j < s.length(); j += 8) {
if (j+8>s.length()) {
break;
}
String tempS = s.substring(j, j + 8);
list.add(tempS);
}
list.add(putWords(s.substring(s.length() - i, s.length())));
}
}
String[] Strings = new String[list.size()];
return list.toArray(Strings);
}
/**
* 长度不够8位的字符串加0补齐
*
* @param s
* @return
*/
private static String putWords(String s) {
int i = 8 - s.length();
for (int j = 0; j < i; j++) {
s = s + 0;
}
return s;
}
}
华为OJ,字符串按8位的长度截取
最新推荐文章于 2024-09-16 23:40:10 发布