我想将这样的字符串从“ Campaign A-1”更改为“ Campaign A-4”,之后我希望将String更改为“ Campaign B-1”更改为“ Campaign B-4”,最后一步是“ Campaign Z- 1“到” Campaign Z-4“。 AND字符串“广告系列Alpabhet-Number”自动递增。不按用户输入。 这个 请告诉我如何为此创建条件
这是我的代码: See CODE
这是输出: See OUTPUT
请帮助我 预先感谢。
答案 0 :(得分:3)
您可以像对待int一样对待Java中的char,使您可以递增char直到所需的停止点。
List<String> strings = new ArrayList<>();
char character = 'A'; // start with a
while ( character <= 'Z' ) { // stop after character is Z
for ( int i = 1; i <= 4; i++ ) {
strings.add( String.format( "Campaign %c-%d", character, i ) );
}
character++; // increment character
}
strings.forEach( System.out::println );
答案 1 :(得分:0)
您可以按需为序列中的任何“位置”生成ID:
public class IdGenerator {
private static final int MAX_NUMBER = 4; // 'unit' column is base 4
public static String generate(int position) {
int quotient = position / MAX_NUMBER;
int remainder = position % MAX_NUMBER;
return String.format(
"Campaign %c-%d",
(char) (quotient + 'A'),
remainder + 1
);
}
}
测试(在现实世界中使用时,只需将当前位置存储在数据库中即可;所有答案均相同):
// Calculate & print all IDs
public static void main(String[] args) {
for (int i = 0; i < 26 * 4; i++) { // position is 0-based
System.out.println(generate(i));
}
}
// Campaign A-1
// ...
// Campaign Z-4