ورود

View Full Version : تعریف یک رشته به عنوان یک آرایه در جاوا



siAlAn
چهارشنبه 18 فروردین 1395, 14:28 عصر
با سلام و وقت بخیر به دوستان خوبم

من این موضوع رو تو فروم های مختلفی جستجو کردم، اما راهکار خوبی ندیدم که بتونه جوابگو خواسته من باشه. به هرحال چناچه اگر موضوع و محور این سوال من تکراری هست، پیشاپیش از مدیران و ناظم های فروم عذر می خوام.

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

من در نظر دارم کاربر با دستور Scanner، یک رشته یک خطی (بطور مثال: Ali is a student) رو از ورودی گرفته و بعد از اینکه تو متغیر خودش قرار داد، حالا این رشته رو کاراکتر به کاراکتر در یک آرایه n عضوی ذخیره کنه. به صورتی که اگر مثلا آرایه با اندیس [5] رو صدا زدیم، فقط کاراکتر s بیاره. . .

از پاسخگویی و راهنمایی شما ممنونم.

javadshaahin
چهارشنبه 18 فروردین 1395, 14:50 عصر
با سلام و وقت بخیر به دوستان خوبم

من این موضوع رو تو فروم های مختلفی جستجو کردم، اما راهکار خوبی ندیدم که بتونه جوابگو خواسته من باشه. به هرحال چناچه اگر موضوع و محور این سوال من تکراری هست، پیشاپیش از مدیران و ناظم های فروم عذر می خوام.

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

من در نظر دارم کاربر با دستور Scanner، یک رشته یک خطی (بطور مثال: Ali is a student) رو از ورودی گرفته و بعد از اینکه تو متغیر خودش قرار داد، حالا این رشته رو کاراکتر به کاراکتر در یک آرایه n عضوی ذخیره کنه. به صورتی که اگر مثلا آرایه با اندیس [5] رو صدا زدیم، فقط کاراکتر s بیاره. . .

از پاسخگویی و راهنمایی شما ممنونم.

سلام دوست عزیز
شما برای این کار میتونی از دستور split استفاده کنی

به عنوان مثال

String a = "جواد شاهین";
String[] b = a.split("");



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

public String name_filter(String name) {
String ret = "";
String a = name;
String[] A = a.split("");
String res = "";
for (int i = A.length - 6; i < A.length; i++) {
res += A[i];
}
if (res.equals("(جدید)")) {
for (int i = 0; i < A.length - 6; i++) {
ret += A[i];
}
} else {
ret = a;
}
return ret;
}

سوالی بود دریغ نکنید در حد توانم در خدمتتون هستم

alpotkin
جمعه 20 فروردین 1395, 06:22 صبح
سلام
میتوان با متد charAt با دادن اندیس کاراکتر رو بدست اورد
و اینکه با استفاده از متد toCharArray یک ارایه کاراکتری دریافت کرد.