سلام به همه دوستان
کسی میدونه چه طور می تونم یه رشته رو با یه کاراکتر مقایسه کنم ؟؟؟
('if (x >= '0' && x <= '9
return true;
else
return false;
خط اول این دستور مشکل داره .
سلام به همه دوستان
کسی میدونه چه طور می تونم یه رشته رو با یه کاراکتر مقایسه کنم ؟؟؟
('if (x >= '0' && x <= '9
return true;
else
return false;
خط اول این دستور مشکل داره .
سلام
کاراکتر را به رشته تبدیل کنید:
if (x<'9'.ToString())
//...
چشم ظاهر گر نبیند عیب نیست چشم دل گر ننگرد باید گریست**********اَلسَّلامُ عَلَى الْحُسَيْنِ وَ عَلى عَلِىِّ بْنِ الْحُسَيْنِ وَ عَلى اَوْلادِ الْحُسَيْنِ وَ عَلى اَصْحابِ الْحُسَيْنِ
سلام
چی رو میخواید با چی مقایسه کنید؟ نوع متغیر ایکس چیه؟
سلام
این روش صحیحی برای مقایسه ی رشته ها نیست
باید از متدهای String استفاده کنید
از متد CompareTo
اگر نیازه مثال بزنم؟
در ضمن اگر مقادیر رشته و کاراکترتون فقط به صورت عددی هستن خوب چرا به عدد تبدیل نمی کنید و بعد مقایسه ی ساده ی عددی انجام بدین ؟
متدی که در بالا اشاره کردم بیشتر به درد مقایسه رشته ها می خوره مثل مقایسه ی Roolinjax با ROOLINJAX
سلام
string X = "3";
if (char.IsDigit(X, 0))
{
MessageBox.Show("OK");
}
else
{
MessageBox.Show("NO");
}
اگه رشته عدد باشه پیام میده OK
در غیر این صورت NO
امیدوارم به دردتون بخوره......
مثال کاربرد CompareTo :
string X = "9";
int n = X.CompareTo('9'.ToString());
if (n==0)
MessageBox.Show("دو رشته برابر هستن");
else if (n==1)
MessageBox.Show("x bozorg tar ast");
else if (n==-1)
MessageBox.Show("x koochek tar ast");
مثال نوع عددی :
if (int.Parse(X) >= (int)'9')
MessageBox.Show("Amale morede nazar");
برای مثال:
"X="3434654645 در نتیجه پیام میده OK
"X="Morteza5358 در نتیجه پیام میده NO
سلام
بله میبخشید. داشتم با vb کار میکردم تمرکزم روی سینتکس vb بود.
کد درست:
int result=x.CompareTo('5'.ToString());
if(result==0){
MessageBox.Show("x=5");
}else if(result==1){
MessageBox.Show("x>5");}
else if (result== -1)
{ MessageBox.Show("x<5"); }
البته طبق گفته دوستان ای مقایسه رشته ای صورت میگیرد و در اصل عددی نیست. برای مقایسه به صورت عددی هر دو مقدار را با استفاده از Convert.ToInt32 به مقدار عددی تبدیل کنید و مقایسه کنید.
چشم ظاهر گر نبیند عیب نیست چشم دل گر ننگرد باید گریست**********اَلسَّلامُ عَلَى الْحُسَيْنِ وَ عَلى عَلِىِّ بْنِ الْحُسَيْنِ وَ عَلى اَوْلادِ الْحُسَيْنِ وَ عَلى اَصْحابِ الْحُسَيْنِ
نه که مقایسه عددی باهاش نشه کرد ، نه
اگر مورد سوال تاپیک رو دقت کنید می بینید که تک رقمی کار کردن که در این صورت CompareTo هم بدون ایراد جواب میده اما اگر بیش از یه رقم باشه دیگه درست عمل نمی کنه.
می دونم دوستان همه بلدن اما فقط محض یادآوری میگم و قصدم جسارت به علم کسی نیست .
در واقع این متد CompareTo از سمت چپ کاراکتر به کاراکتر مقایسه کرده و پیش میره و هر جا به "نابرابری" خورد همونجا مقایسه رو پایان میده و نتیجه رو اعلام میکنه.
پس طبق نکته ی بالا رشته ی "2" از "10" بزرگتر خواهد بود که در نوع عددی این طور نبوده و نیست !
باز هم جسارت حقیر رو ببخشید.
سلام
دوستان اگه به سوال خوب دقت کنین ، میبینید که موضوع اصلا مقایسه نیست!!!!!!
بلکه میخواد بدونه یه چیزی بین 0 تا 9 باشه.
که با این میشه فهمید:
string X = "3";
if (char.IsDigit(X, 0))
{
MessageBox.Show("OK");
}
else
{
MessageBox.Show("NO");
}