黑马程序员技术交流社区
标题:
20天14课值转换问题
[打印本页]
作者:
黑马-李勇
时间:
2012-6-14 00:34
标题:
20天14课值转换问题
import java.io.*;
import java.util.*;
class RunCount
{
public static void main(String[] args) throws IOException
{
Properties prop=new Properties();
File file=new File("count.ini");//file单独封装是为了下面的判断
if(!file.exists())
file.createNewFile();//判断文件不存在则建立文件
FileInputStream fis=new FileInputStream(file);//流与文件关联
prop.load(fis);//将输入流中的键值对信息存入Properties中
int count=0;//计数器
String value=prop.getProperty("time");//获取time键对应的值信息
if(value!=null)
{
count=Integer.parseInt(value);//?为什么不写成count=(int)value;
if(count>5)//大于5次退出程序
{
System.out.println("使用次数已到");
return;
}
}
count++;//计数器加1
prop.setProperty("time",count+"");//将值写入集合中
FileOutputStream fos=new FileOutputStream(file);//写入输出流
prop.store(fos,"");//写入文件
fos.close();//关闭输出流
fis.close();//关闭输入流
}
}
作者:
王晓新
时间:
2012-6-14 00:48
因为String的范围比int要大,所以强制类型转换是不行的
作者:
吴小东
时间:
2012-6-14 00:54
字符串类型转整型,不能直接强转的,而且一个是基本数据类型,一个引用数据类型
字符串转整型就要用到Integer.paseInt(String str);
同样还有转成其他类型的方法 Double.parseDouble(String str) Float.parseFloat(String str) 等等
作者:
李盼
时间:
2012-6-14 09:00
count=Integer.parseInt(value);//?为什么不写成count=(int)value;
当然不能直接转了,count是int型,value是字符串,一个是对象,一个是基本数据类型,应该用Integer的parseInt方法将字符串参数作为有符号的十进制整数进行解析。
然后赋值给count,这个时候有一个Integer类型自动拆包为int型的过程!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2