تبلیغات
تبلیغات

آبجکت va در تله بات

توجه کنید
  • تله بات دیگر آپدیت نمی‌شود و آخرین آپدیت در شهریور ماه سال 94 صورت گرفته است! ولی شاید نرم افزار مشابهی در ماه‌های آینده با تغییرات انبوهی منتشر کنیم که در حال حاظر به دلیل مسدود شدن تلگرام، بلاتکلیف است.
  • تله بات همچنان کار می‌کند؛ اما مشکلی که وجود دارد این است که چون نرم‌افزار در گذشته توسعه داده شده؛ در نسخه‌های اندروید مارشمالو به بعد باید دسترسی‌ها به صورت دستی از تنظیمات برنامه داده شود.
  • ما دیگر این نسخه را پشتیبانی نمی‌کنیم و پلاگین جدیدی برای آن نمی‌نویسیم؛ نظرات این پست نیز بسته شده است.
  • تله بات روی هیچ سروری ربات شما را پیاده‌سازی نمی‌کند و ربات روی گوشی شما فعال خواهد شد و وابسته به اینترنت شما می‌باشد.

اگر با php کار کرده باشید، میدانید که با هر درخواست به یک فایل php، تمامی متغیرها ریست شده و اسکریپت دوباره از اول اجرا می شود! این مسئله طبیعی است و منطقی نیست برای پردازش دیگر همان متغیر وجود داشته باشد زیرا پرازش بعدی ممکن است از جای دیگری باشد نه از همان کسی که قبلا صفحه را باز کرده … بگذریم …
در تله بات نیز این چنین است! با هر درخواست، تمامی  متغیرهای موجود در اسکریپت ریست می شوند! پس اگر بخواهیم بر فرض متغیری داشته باشیم از نوع int و در داخل آن آیدی آخرین شخصی که پیام دریافت شده است را نگه داریم، چه باید کنیم؟
بدین منظور می توانید از دیتابیس یا از Preferences یا از ذخیره در فایلی خاص استفاده کنید  ولی خب یک راه ساده هم وجود دارد که آن استفاده از آبجکت va می باشد.
آبجکت va، که در سمت جاوا تعریف شده است، در داخل هر فایل اسکریپتی اضافه می شود. (البته این راه را پیشنهاد نمی کنیم به دلایل زیر)
در هر بار ورود به تله بات ریست می شود. هم چنین اگر از منوی بالا در صفحه اصلی، آیکون ریست را انتخاب کنید، این آبجکت نیز ریست خواهد شد. توجه داشته باشید که پس از استفاده از متغیر، آن را از داخل این آبجکت حذف نمایید.

?نکته: به جای استفاده از این آبجکت، پیشنهاد می کنیم از جدول Var یا از Preferences ها استفاده کنید.


معماری این آبجکت به صورت زیر می باشد:

همانطور که می بینید چند فیلد از نوع HashMap ها تعریف شده است. که کلید آن ها از نوع String بوده و مقدار آن ها متفاوت است.
HashMap نیز یکی از کلاس های جاوا در پکیج java.util.HashMap می باشد که امکان تعریف یک آرایه با دارا بودن کلید خانه و نوع مقدار خانه می می باشد که کلیدهای خانه های ما از نوع String می باشد.


توابع مربوط به HashMap ها

توابع لازم را توضیح داده ایم.

قرار دادن مقدار در HashMap

در صورتی که از قبل برای این کلید مقداری تایین شده باشد، مقدارش برگردانده می شود و در غیر این صورت مقدار null بر گردانده می شود!

گرفتن مقدار از HashMap

در این جا تمامی کلیدهای ما از نوع string می باشند. خب بهتر است بدانید که در صورت نبودن کلید، مقدار null برگردانده می شود.

حذف یک کلید در HashMap

مقداری که return می شود برابر با مقدار آبجکت حذف شده هست، و اگر آبجکت موجود نباشد، null برگردانده می شود!

پاک کردن کل HashMap


نگاهی به ArrayList ها

همانطور که در کد Va مشاهده کردید، توابعی برای ساخت ArrayList ها وجود دارند. و در ادامه به متدهای که درمتغیری از جنس ArrayList می باشد می پردازیم.

اضافه کردن یک مقدار

بستگی به نوع آرایمون مقدار رو اضافه می کنیم.

پاک کردن خانه ای با دادن index آن

تعداد مقدار داخل آرایه

پاک کردن کل مقدارها


توضیحات ممکن است، نواقصی را به همراه داشته باشند
چنانچه قسمتی گنگ می باشد، به ما اطلاع دهید تا توضیح کامل تری از آن را قرار دهیم.

کانال تلگرام فول کده

تبلیغات

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

نظرات ثبت شده بدون دیدگاه