ورود

View Full Version : مبتدی: متد isEmpityOrWhiteSpce رو درست نوشتم؟



svmone
جمعه 27 آذر 1394, 15:25 عصر
سلام

من یک متدی نوشتم برای اینکه متوجه بشم آیا یک رشته خالی است یا اینکه تمامی کاراکترهای آن برابر با کاراکتر خالی است یا خیر

این متدی که نوشتم:

private boolean isEmpityOrWhiteSpce(String str)
{
// به دست آوردن طول رشته
int lenght = str.length();

// اگر طول رشته برابر با صفر باشد بنابراین رشته خالی است
// در ابتدا طول رشته بررسی میشود تا در حلقه ای
// که برای بررسی تک تک کارکترها ایجاد شده است
// با استثنا مواجه نشویم
if(lenght == 0)
{
return true;
}

// اگر هر یک از کاراکترهای رشته مخالف کاراکتر خالی باشد
// نشان دهنده این است که تمام رشته صرفا حاوی کاراکتر خالی نمیباشد
for(int i = 0; i < lenght; i++)
{
if(str.charAt(i) != ' ')
{
return false;
}
}

// تمام کاراکترهای رشته خالی (' ') هستند
return true;
}

میخواستم بدونم این متد رو درست نوشتم یا نه و اگر نظری دارید لطفا بگید و راهنمایی کنید
با تشکر

persianshadow
سه شنبه 01 دی 1394, 09:02 صبح
خب به طور کلی کد خوبی هست فقط دو تا نکته هم میشه بهش اضافه کرد که بهتر باشه. اسم متد اشکال تایپی داره و همچنین برای تشخیص کارکتر خالی white space میشه از این متد استفاده کرد:
Character.isWhitespace

یعنی اینطوری :





private boolean isEmptyOrWhiteSpace(String inputString) {

int length = inputString.length();

if (length == 0) {
return true;
}

for (int i = 0; i < length; i++) {
if (Character.isWhitespace(inputString.charAt(i))) {
return false;
}
}

return true;
}

vahid-p
چهارشنبه 02 دی 1394, 22:58 عصر
البته به نظرم tab و خط بعد و... رو هم در نظر بگیر. مگر اینکه منظورتون فقط خط فاصله باشه.
میتونید لیست فضاهای خالی رو در اینترنت سرچ کنید تا بدونید به صورت رسمی به چه چیزهایی فضای خالی اطلاق میشه.

معمولا این توابع ساده با یک جستجو ساده در اینترنت به زبان انگلیسی، میتونید متد صحیحش رو پیدا کنید