解决方案 »
- java同一个包下的公共类怎么不能访问
- 关于使用installanwhere的问题....有点棘手...
- 如果一个类C继承抽象类A同时实现接口B,而抽象类A有非抽象方法out,接口B有抽象方法out...
- 帮我编译一下,100分?
- 请教如何用Java读写rtf文档,谢谢,给分!
- 关于hibernate4的 缓存问题
- jbuilder有好多版本,我应该用哪个?
- 怎么写一个有main的类来测试这段线程池的代码
- 新手请教:我用Jbuilder3编了个Applet(曲线图),用AppletViewer看没问题,可若直接用浏览器看就看不见了,鼠标放在Applet上就提示Load:class XXX not found不知是怎么回事
- 在jb4中applet都可以运行,但是转到ie下就什么都看不到了,委虾米??
- Jpanel 自适应大小的问题
- java 枚举 两个数字代表一个字符串
public string toString(){
if(ext==0){
return areacode+"-"+number;
}else{
return areacode+"-"+number+" ext "+ext;
}
}
相信前三个构造函数你都明白是做什么吧,唯一可能有点疑问的就是第四个构造函数吧
第四个构造函数说了什么?
1.将传入的newnumber以'-'为界分割为两部分,1部分是areacode,1部分是number
2.areacode现在是字符串,所以要先将字符串转成int并且对成员赋值,考虑到这块与下面number描述的不同,我认为areacode是不含字母的,代码我就帮你写了,其实就是
areacode = Integer.parseInt(str[0]);
3.转换str[1]为int,现在问题是str[1]包含字母和数字,所以我们需要将字母转成数字,这里你们老师说了,你需要构造一个新的空string来接收转换的结果,并且从左到右的扫描字符串里的每一个字符,如果是字母就用decode转换,是数字就接受,如果字符非法就异常,直到结束
所以过程就是
String temp;
for(char c : str[1].toCharArray()){
if(c不合法) //report error
if(c的asc码值在[a-zA-Z]认为c是字母){
//temp接受转换后的字符
}else{
//认为该字符是数字
//temp直接接收字符
}
}
number = 转成int的temp;//赋值另外的什么equals方法也好好看注释,都是一回事