解决方案 »

  1.   

    这也太简单了吧,注释就相当于是伪码了,只需要吧注释翻译成java就行了。比如给你写一个方法吧
    public string toString(){
      if(ext==0){
        return areacode+"-"+number;
      }else{
        return areacode+"-"+number+" ext "+ext;
     }
    }
      

  2.   

    我估计你想多了,你们老师将每一步都用注释给描述出来了,仅仅是缺一个翻译成java代码的过程
    相信前三个构造函数你都明白是做什么吧,唯一可能有点疑问的就是第四个构造函数吧
    第四个构造函数说了什么?
    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方法也好好看注释,都是一回事