2017-02-21 22 views
-1
namespace Contact 
{ 
    class Contact 
    { 
     private string personName, personId , mobileNumber; 
     private char gender; 
     private int age; 

    public Contact() 
    { 
     this.personName = ""; 
     this.personId = ""; 
     this.mobileNumber = ""; 
     this.gender = '\0'; 
     this.age = 0; 

    } 
    public Contact(string personName, string personId, string mobileNumber,char gender, int age) 
    { 
      this.personName =personName ; 
       this.personId =personId; 
       this. mobileNumber = mobileNumber; 
       this.gender=gender; 
       this.age=age; 

    } 
    public void SetPersonName(string personName) 
    { 
     this.personName = personName; 
    } 
    public void SetPersonId(string personId) 
    { 
     this.personId = personId; 
    } 
    public void SetMobileNumber(string mobileNumber) 
    { 
     this. mobileNumber = mobileNumber; 
    } 
    public void SetGender(char gender) 
    { 
     this.gender = gender; 
    } 
    public void SetAge(int age) 
    { 
     this.age = age; 
    } 
    public string GetPersonName() 
    { 
     return this.personName; 
    } 
    public string GetPersonId() 
    { 
     return this.personId; 
    } 
    public string GetMobileNumber() 
    { 
     return this.mobileNumber; 
    } 
    public char GetGender() 
    { 
     return this.gender; 
    } 
    public int GetAge() 
    { 
     return this.age; 
    } 
    public void DetectMobileOperator() 
    { 


     if (this.mobileNumber[2] == 7) 
     { 
      Console.WriteLine("Gp"); 
     } 
     else if (this.mobileNumber[2] == 9) 
     { 
      Console.WriteLine("Banglalink"); 
     } 
     else if (this.mobileNumber[2] == 8) 
     { 
      Console.WriteLine("Robi"); 
     } 


    } 
    public void ShowPersonInfo() 
    { 
     Console.WriteLine("PersonName: {0}\npersonId: {1}\nMobilenumber: {2}\nGender: {3}\nAge: {4}", this.personName, this.personId, this.mobileNumber, this.gender,this.age); 
    } 




} 
} 

namespace Contact 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
     Contact c = new Contact("jerin","14255581","01782813945",'F',22); 

     c.ShowPersonInfo(); 
     c.DetectMobileOperator(); 



    } 
} 
} 

Но я не получаю имя оператора. Не могли бы вы помочь мне.Не удается обнаружить оператора сотовой связи

+0

'7' не то же самое, '' 7'' –

+0

Для дальнейшего использования мы обычно предпочитаем * короткие * образцы кода, которые демонстрируют проблему, и удалили трек (желательно [mcve]). Все эти методы 'GetXxx' и' SetXxx' кажутся здесь неактуальными. (А также, похоже, «Написание Java в C#» - код стиля - на C# у нас есть фактические свойства с методами 'get' и' set') –

ответ

-1

Вы сравниваете this.mobileNumber[2], который находится в char номеру int.

Для решения вы выдаете вы должны сделать следующее (например, позволяет сравнить 7):

char value; 
int number = 7; 
char.TryParse(number.ToString(), out value); 
if(this.mobileNumber[2] == value) 
{ 

} 

Я надеюсь, что вы найдете ее полезной

+0

Является ли это попыткой найти самый длинный маршрут между тем, что у вас есть, и тем, что вы хотеть? Почему бы вам рекомендовать преобразование в строку и синтаксический анализ, а не, скажем, просто используя '7 ', где' 7' в настоящее время появляется? –

+0

Использование магических чисел - это плохая практика. В моем фрагменте число 7 отображает int, считываемое из поля. Я отрегулирую свой ответ, чтобы лучше подгонять мое объяснение. – DeJaVo