Вопрос

The program is to write a calss PhoneNumber.java I understand that I am supposed to test if the string is a digit or a letter and then if it is a letter its supposed to be decoded by decode(char c); However, I dont think char c should be in between the ( ) If any one has suggestions thatd be great thanks!! The toString is left unreturned intentionally because i have not gotten that far in the program yet. Also, have to keep it in the case 'A' format Thanks

 public class PhoneNumber {

 private int areacode;

 private int number;

 private int ext;



 PhoneNumber() {

 areacode = 0;
 number = 0;
 ext = 0;

}



PhoneNumber(int newnumber) {

 areacode = 216;

 number = newnumber;
 ext = 0;

}



PhoneNumber(int newarea, int newnumber, int newext) {

 areacode = newarea;
 number = newnumber;
 ext = newext;

}



PhoneNumber(String newnumber) {
String areacode = str[0];
String number = str[1];
String[] str = newnumber.split("-");
String[] number = newnumber;

boolean b1, b2;
int i = 0;
int place = 0;
for (int x: newnumber){
    newnumber.charAt[i] = place;
    b1 = Character.isDigit(place);
    if (b1 == true){
    number = place;
    i++;
}   else {
    b2 = Character.isLetter(place);
}   if (b2 == true) {
    number = decode(place);
    i++;
}   else {
    System.out.print("invalid phone number!");
}
}

 System.out.print(areacode.concat(number));
return newnumber;
}



private String decode(place) {

 switch (c) {

    case 'A': case 'B': case 'C': return "2";

    case 'D': case 'E': case 'F': return "3";

    case 'G': case 'H': case 'I': return "4";

    case 'J': case 'K': case 'L': return "5";

    case 'M': case 'N': case 'O': return "6";

    case 'P': case 'Q': case 'R': case 'S': return "7";

    case 'T': case 'U': case 'V': return "8";

    case 'W': case 'X': case 'Y': case 'z': return "9";

    default: return "";

    }

}



public boolean equals(PhoneNumber pn) {



}



public String toString() {



}



}

G:\CIS260\Assignments>javac PhoneNumber.java
PhoneNumber.java:53: error: <identifier> expected
private String decode(place) {
                           ^
1 error
Это было полезно?

Решение

In the constructor, you need to declare the array before you put things in it. You also can't say String[] number = newnumber because number is a String[] and newnumber is a String. equals() and toString() need to return something. And, to answer your question, just say

private String decode(char c){
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top