[英]How to get assign a number from a list - JDBC JAVA SQL
我在数据库中遇到麻烦,我想从一系列库存中选择(不是主键)并将其分配给系统中的用户。
例如,我有一个名为stockCodes的字段,其中包含诸如CAB001-CAB100之类的代码。 这不是主键,而主键实际上是stockID。
桌子看起来像这样...
ID | Stock Codes
--------------------
1 | CAB001-CAB100
2 | CBA100-CBA200
现在,我该如何分解股票代码,以便在Java中获得像这样的列表...
CAB001
CAB002
CAB003
CAB004
CAB005
...
请帮忙。
您将不得不解析文本-它们是否始终遵循相同的格式,即3个字母和3个数字? 如果是这样,则可以执行以下操作:
/**
* Populate a full list of stocks from a given range
*
* @param stockRange the stock range pulled from the DB, in this format: "XXX###-XXX###"
* @return list of all stocks in the specified range
*/
public List<String> getFullStockRange(final String stockRange) {
final String[] values = stockRange.split("-");
final Integer first = Integer.parseInt(values[0].substring(3));
final Integer last = Integer.parseInt(values[1].substring(3));
final String prefix = values[0].substring(0, 3);
final List<String> list = new LinkedList<>();
for (int i = first; i<= last; i++) {
final String entry = String.format("%s%03d", prefix, i);
list.add(entry);
}
return list;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.