[英]auto increment Concat string variable and integer variable
您可以像對待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 );
您可以按需為序列中的任何“位置”生成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
);
}
}
測試(對於實際使用,只需將當前位置存儲在db中;所有答案都相同):
// 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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.