1、String类型(此类型是数字格式的字符串类型)转换成Int类型
String str = "10000";
转换成Int类型:
int num = Integer.parseInt(str);
得到的结果是:int类型的10000
2、int类型转换成String类型
int n = 1000;
n = n +1;
String str = String.valueOf(n);
// 或者另外一种转换方式: String st = n +"";
得到的结果是:String类型的字符串1001
【在写插入操作时,主键的自动增长{先查询到主键的最大值,然后再进行自增,再格式的转换即可},主键的格式,格式的增长就会用到格式的转换】
比如:【格式的转换】
public class IntTest {
public static void main(String[] args) {
//由字符串格式转换数字格式
String s = "10000";
int a = Integer.parseInt(s);
a = a+1;
System.out.println("数字格式:"+a);//---得到的结果是:数字格式:10001
//然后通过数字格式转换成字符串格式
String str = String.valueOf(a);
System.out.println(a+"");
System.out.println("转换成字符串格式:"+str);//-----得到的结果是:转换成字符串格式:10001
}
【主键的设置】当插入一条数据时,使得主键自动增长的样式进行,代码如下,且出现的问题总结如下:
再相应的sqlMap.xml配置文件中写出“查找最大id值的sql语句”
<!-- 查询到最大的id值 -->
<select id="selectMaxId" resultType="java.lang.String">
select MAX(id) from fdx.dbo.[User]
</select>
然后在dao接口中,具体写一个方法:查找到最大的id值,为了再插入的方法中调用,进而实现主键的自动增长
//查询最大id值
public String selectMaxId();
然后再serviceImpl实现类中写出具体的实现方法:
public void insertUser(User user) {
//调用方法,获取到最大的id值
String id = userDao.selectMaxId();
System.out.println("获取到的最大id值:"+id);
int num = Integer.parseInt(id);
num = num +1;
//将数字转换成字符串格式
String sid = String.valueOf(num);
//对主键id,出生日期(获取到当前系统的日期)进行设置;
user.setId(sid);
user.setBirth(new Date());
userDao.insert(user);
System.out.println("插入之后:测试成功");
}
而此时,出现了异常
所以要对得到的结果,进行去除空格处理:使用.trim()方法即可;
public void insertUser(User user) {
//调用方法,获取到最大的id值
String id = userDao.selectMaxId();
System.out.println("获取到的最大id值:"+id);
int num = Integer.parseInt(id.trim());
//再没有trim()方法时,出现异常;Integer.parseInt(str),参数只能是纯数字的组合才能转换,
//所以使用trim()方法,进行去除一下空格;且得到的id值里面有空格的存在;
num = num +1;
//将数字转换成字符串格式
String sid = String.valueOf(num);
//对主键id,出生日期(获取到当前系统的日期)进行设置;
user.setId(sid);
user.setBirth(new Date());
userDao.insert(user);
System.out.println("插入之后:测试成功");
}
添加.trim()方法之后,得到结果,实现了主键的自动增长;