String和Integer转换 现在我数据库中的编号是以 000001 000002这样的格式 现在我添加一条记录,首先取出最大的编号,然后+1进行插入比如我现在数据库中最大的是0000015 插入的编号就应该是000016越简单越好。。能贴出具体代码 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这问题和String Integer转换有什么关系?数据库字段设置auto increment可以自增 如下:public synchronized static String getSerialNumber(Integer number) { String zeros = "0000000"; number = number + 1; return zeros.substring( 0, 7 - number.toString().length()) + number; } 显然楼主的数据库里的编号字段是VARCHAR类型的(或是其他字符串类型)…… 支持5楼的写法,但Oracle数据库除外 在oracle数据库中测试过,直接select max(column) from table 对于varchar2型的也是可以直接得到最大的, 如lz的情况,可以直接得到0000015. 其他数据库应该也没问题,没有测试。LZ可以试一下。实在不行可以一条条全部搜出来然后转换再比较,对于这样的字符串Integer.parseInt("00000015")结果可得15 先从数据库取出最大的来 以"000000019"为例public class StringToInteger { public static void main(String[] args) { String str="000000019"; //得到总长度 int sLength=str.length(); //"000000019"转换成int 为19 再加1 int value=Integer.parseInt(str)+1; //得到value转换为string后的长度 int vLength=(value+"").length(); //截取前面的0的个数 str=str.substring(0,sLength-vLength); //得到结果 str=str+value; System.out.println(str); }} 使用jacob操作word转换成PDF:求教 这句为什么抛出异常? 急!!!哪位前辈有时间帮忙看一下 java中关于表的问题 求救一个关于RunnableJar的问题 如何一个组件中把一个子组件替换为另一个,保持位置约束完全不变? 请问用什么函数能得到计算机的所有盘符??????? 各位大侠,一般我们做了一个application,加那些代码使这个application的窗口大小不能改变。(内空)给25分 简单问题,请进!!! java -jar cracker.jar咋报错了 log4j的配置文件在哪儿呀 菜鸟请教高手门简单一个问题!谢谢
数据库字段设置auto increment可以自增
public synchronized static String getSerialNumber(Integer number) {
String zeros = "0000000";
number = number + 1;
return zeros.substring( 0, 7 - number.toString().length()) + number;
}
对于varchar2型的也是可以直接得到最大的, 如lz的情况,可以直接
得到0000015. 其他数据库应该也没问题,没有测试。LZ可以试一下。
实在不行可以一条条全部搜出来然后转换再比较,对于这样的字符串
Integer.parseInt("00000015")结果可得15
以"000000019"为例public class StringToInteger {
public static void main(String[] args) {
String str="000000019";
//得到总长度
int sLength=str.length();
//"000000019"转换成int 为19 再加1
int value=Integer.parseInt(str)+1;
//得到value转换为string后的长度
int vLength=(value+"").length();
//截取前面的0的个数
str=str.substring(0,sLength-vLength);
//得到结果
str=str+value;
System.out.println(str);
}
}