Learn Java
304 subscribers
92 photos
1 video
94 files
84 links
یاد گیری زبان برنامه نویسی جاوا و نکات و مفاهیم
کاربردی ان



@parsa8113
@bardiademon
Download Telegram
اموزش جاوا به زبان ساده ۶
اپراتور ها در جاوا
== مساوی
++ به اضافه ی ۱
+ جمع
- تفریق
- - منهای یک
* ضرب
/ تقسیم
٪ باقیمانده (همون درصد خودمون)

توجه کنید که یک مساوی (= ) تخصیص نام داره و اپراتور محسوب نمیشه

مثللا :
int i = 10;
i = i++;
خب اگه اینو ران کنید جاوا همون ۱۰ رو نمایش میده..درصورتی که باید ۱۱ رو نمایش بده چون پلاس پلاس به علاوه ی یک میکنه
خب دلیل این عمر اینه که جاوا i ++ رو نمیخونه و تا i بیشتر نمیخونه...پس ما کاری که میکنیم میای پلاس پلاس رو میزاریم قبل از اون

int i = 10;
i = ++i;
خب اینو ران کنیم ۱۱ رو نشون ما میده

یا منفی منفی بزاریم نه رو نمایش میده

int i = 10;
i = i +5
اگه اینو ران کنید میشه ۱۵
ولی اینو میشه یه طوره دیگه هم مطرح کرد
خب چطوری؟

میایم مثبت رو قبل از مساوری قرار میدیم (:
i +=5;
یا
i -=5;
این
i+=5;
همون کاره i = i + 5; رو میکنه
ولی خب اینطوری با کلاس تره دیگه😂
اموزش جاوا به زبان ساده ۷

خب میخوایم راجع به if و else یه توضیح کوچیکی بدیم

خب if همون اگره خودمونه دیه و هر اگری ..هر شرطی..یه در غیر این صورتی باید داشته باشه که ما اونو else نامگذاری میکنیم

int i = 10;
if (i <10)
{
System.out.println("Less then 10");
}
else
{
System.out.println("bigger then 10");
}
خب ما اینجا تعریف کردم اگه i کوچیک تر از ده بود بزن less then10 و اگه این شرط برقرار نبود بزن bigger then 10
و خب خروجی این فایل میشه bigget then 10 ..چون i از ده کوچیکتر نیست
اگه علامت کوچیک تر مساوی بزاریم
<=
خروجی این فایل میشه less then 10 چون با اینکه i از ده کوچیک تر نیست ولی مساویش که هست
پس این شرط برقرار و if رو اجرا میکنه
Learn Java
اموزش جاوا به زبان ساده ۷ خب میخوایم راجع به if و else یه توضیح کوچیکی بدیم خب if همون اگره خودمونه دیه و هر اگری ..هر شرطی..یه در غیر این صورتی باید داشته باشه که ما اونو else نامگذاری میکنیم int i = 10; if (i <10) { System.out.println("Less then 10");…
توضیحات اضافی. درس ۷
اگه بخوایم دو تا شرط رو تو یه if بزاریم...یعنی یا ,و رو تعریف کنیم توی if اینطوری عمل میکنیم

if (i<10 && i<=10)
این یعنی اگر ده کویچکتر و i کوچیکتر مساوی بود این شرط رو اجرا کن
مثلا هر شرطی که بگیم
اموزش جاوا به زبان ساده ۸

خب میخوایم یه ماشین حساب بسازیم..البته ماشین حساب که نه..یه حسابگر ساده دیگه !

اول باید از کتابخونه ی اسکنر جاوا استفاده کنیم ..تا اسکن کنه عددایی که روی کیبورد وارد میشه و جمع اونارو به نمایش در بیاره و اینطوری عمل میکنیم
import java.util.Scanner;
scanner نه دوستان...s حتما باید بزرگ باشه..توی جاوا همه ی s ها بزرگه...مثلا System...یا String...

خب .وقتی ما ازین کتابخونه اسنتفاده کردیم باید یه جایی از حافظه رو بهش اختصاص بدیم و اسمی برای اون تایین کنیم که وقتی بهش نیاز داشتیم فراخونیش کنیم دیگه :

Scanner name = new Scanner(System.in);

Scanner name: یعنی اینکه یک نامی برای اسکنرمون انتخاب کردیم

new Scanner(System.in); : خب این یعنی ایننکه اسکنر name یک اسکنر جدید هست که داده هارو از System.in یا همون کیبورد سیستم اسکن میکنه

خب حالا سه تا متغیر int باید تعریف کنیم...یکیش عدد اول..یکیش عدد دوم و بعدیش جوابشون

ببینید ما میتونیم بیایم اینطوری تعریف کنیم
int i;
int b;
int sum;
ولی میشه یه طوره دیگه گولش زد که جا کمتر بگیره ..و باید در این روش بین هر اینت یک کاما بزارید

به این صورت یعنی :
int i, b, sum;
حب حالا باید یه چیزی سیستم بندازه بیرون که کاربر بفهمه باید چه کار کنه دیگه

System.out.println("Enter two integers to calculate their sum");
میتونید متنشو فارسی بنویسی..مثلا بنویسی دو عدد رو برای جمع وارد کنید ولی اینطوری بهتره چون وقتی میخواید توی ترمینال کامپایل کنید حروف فارسی برعکس کامپایل میشه

خب حالا باید هر سه متغیر رو به صورت کامل تعریف کنیم
اول اینکه میخوای عدد اول رو بگیره و بره لاین بعدی عدد دوم رو بگیره و تو لاین سوم مجموع عددارو بندازه بیرون

پس میایم میگیم :
i = name.nextInt();
خب این یعنی چی
ببینید...ما برای اسکنروم اسم name رو گذاشتیم
اینجاهم وقتی میخوایم از اسکر استفاده کنیم باید اسمشو فراخونی کنیم دیگه
پس int i رو برابر با name قرار میدیم
اون nextInt هم برای رفتن به لاین بعدیه
مثلا برای String : nextLine هست
یا برای double : next.Double هست
یا بایت هم نکست باید دیگه..نکست فلوت..نکست لانگ..به این صورته خلاصه

خب حالا عدد دوم مارو باید بگیره..ما int دوممون رو b نامگذاری کردیم
پس اینم به همین صورت باید تعریف کنیم
b = name.nextInt();

حالا هم باید دو عدد رو جمع کنیم وبندازیمش بیرون /

sum = i + b;
حالا i و b جمع شدن و توی متغیر sum ذخیره شدن
ولی خب سیستم باید sum رو بندازه بیرون که بفهمیم جواب چی بوده

System.out.println("sum is : "+sum);
خب اینجا پرینت میکنه sum is و بعد گفتیم sum رو بده بیرون..
به همین راحتی یک حسابگر ساده به زبان جاوا سختیم
درکل فایل اینطوری در میاد

import java.util.Scanner;

class Addnumbers
{
public static void main (String [] args)
{
int i, b, sum;
System.out.println("Enter two integer to calculate their sum ");
Scanner name = new Scanner (System.in);

i = name.nextInt();
b = name.nextInt();
sum = i + b;
System.out.println("sum is : "+sum);
}
}
اموزش جاوا به زبان ساده ۹

توضیح if

public class IFexample
{
public static void main (String[] args)
{
int t = 7;
if (t == 9) // condition
{
System.out.println(""Yes);
}
else
{
System.out.println("No");
}
}
}

توضیحات در مورد این درس :

یه متغیر به اسم t تعریف کردیم و بعد اون رو برابر با ۷ قرار دادیم

یه شرط گذاشتیم که اگر t مساوی بود با 9 بنویس yes
وگرنه (else) برای ما پرینت کن no
خب اگه اینو ران کنیم NO رو نمایش میده
چون که تی هفت هست و مساوی با نه نیست و شرط اول اجرا نیست

else رو همیشه باید بعد از تمامی شرط هاتون قرار بدید

به همین سادگی دست.رات شرطی رو یاد گرفتید

سوالی بود :@prsw16
جاوا به زبان ساده ۱۰

دستورات شرطی:
دستورات شرطی اینقدر کوچیکن که میتونیم توی پرینت هم قرارشون بودیم!
چطوری؟!
public class Shart
{
public static void main (String[] args)
{
int age = 25;
System.out.println(age > 50 ? "You are old" : "You are young");
}
}

اگر age ما بزرگ تر از پنجاه بود بزن you are old و در غیر این صورت بنویس you are young
؟: علامت سوال یعنی چک کن ببین age ما ۵۰ هست یا نه..درواقع علامت سوال توی این شرط برابر با if هست

:.کالن...سمیکالن نه ها..کالن (همین نقل قول خودمون) این نقل قول ما حکم else توی if رو داره

این یک دستور شرطی بسیار ساده و کاراماده که از سی پلاس پلاس اومده و خیلی هم کاربردیه....
جاوا به زبان ساده ۱۱:
این جلسه میخوای راجع به switch صحبت کنیم

اگه if رو به خاطر بیارید اینطوری بود
:

public class Switch
{
public static void main (String[] args)
{
int age = 3;
if (age == 3)
{
System.out.println("3");
}
else if (age = 4)
{
System.out.println("4");
}
}
}
خب این خیلی کار میبره...باید دونه دونه بنویسی ..مثلا اگه تا سن ۵۰ بخواید بزنید باید ۵۰ تا شرط بنویسید

خب جاوا یه راهه دیگه برای ما گذاشته..باید از switch استفاده کنیم

اینطوری عمل میکنیم

public class switch
{
public static void main(String[] args)
{
int age = 3;
switch (age)
{
case 1:
System.out.println("one !");
break;
case 2:
System.out.println("two!");
break;
case 3:
System.out.println("three!");
break;

default:
System.out.println("nothing");
break;
}
}
}


switch (age):خب این یعنی ایننکه متغیر ageرو چک کن

case 1: یعنی مورد ما اگه ۱ بود بیا پرینت کن ۱...در واقع age ما اگه ۱ بود بیا پرینت کن one
یادتون باید بین case و 1 یک فاصله باید بدید..درضمن case کالن داره..سیمکالن نداره

break:break یعنی کد رو بشکن..سمیکالن داره break..خب اگه ما break رو نزاریم میاد case های پایینی هم چاپ میکنی..اگه کد رو نشکنیم همشو چاپ میکنه..یعنی age ما سه هست ولی پرینت میکنه ۱ و ۲ و سه..پس باید کد رو با break بشکنیم

خب ..یادتونه توی if یه else داشتیم؟اینجا هم یه default..یعنی اگه هیچکدوم درست نبود این کارو انجام بده..درواقع پرینت کن nothing..

این روش خیلی راحت تر از if هست..توی همه دانشگاه ها if رو درس میدن..فکر نکنم جایی اینطوری درس بده

امیدوارم خوشتون اومده باشه...تمرین کنید و یاد بگیرید
سوالی بود:@prsw16
اموزش جاوا به زبان ساده ۱۲:
این جلسه میخوایم راجع به حلقه ی while صحبت کنیم

خب while چیه؟while یعنی تا زمانی که..مثلا تا زمانی که منغیر ما ۱۰ هست و کوچیکتر مساوی بیست هست بهش یدونه اضافه کن و به بیست که رسید قعطش کن..

public class Whileloop
{
public static void main (String[] args);
{
int i = 0;

while (i < 10)
{
System.out.println(i);
}
}
}

خب این برنامه دقیقا چطوریه...ما یه متغیر به اسم i درست کردیم...و گفتیم تا زمانی که i کوچیکتر از ۱۰ هست برای ما i رو پرینت کن...اینطوری تا ابد ۰ رو چاپ میکنه ..چرا؟چون همیشه صفره و هربار چک میکنه میبینه صفره و کوچیکتر از دهه..و همینطور چاپش میکنی تا ابد..ما باید یه بلایی سرش بیاریم که این اتفاق نیفته

مثلا:
public class Whileloop
{
public static void main (String[] args);
{
int i = 0;

while (i < 10)
{
System.out.println(i);
i++;
}
}
}
خب این همون اسکریپت بالایی هست ولی گفتیم بیا چک کن وقتی i کوچیک تر از ده هست اگر بود یدونه بهش اضافه کن و بندازش بیرون..اینطوری از ۱ تا ۹ رو چاپ میکنه..خب اگه خواستید تا ده هم چاپ کنه باید جای کوچیکتر بزنید کوچیکتر مساوی
>=
به همین راحتی حلقه ی while رو تعریف کردیم

سوالی بود @prsw16
اموزش جاوا به زبان ساده ۱۳؛ توالی ها
\n :
خط جدید. کرسر را در ابتدای خط بعدی قرار میده
\t :
تب افقی.کرسر رو به اندازه یک tab به جلو انتقال میده
\r:
کرسر رو به ابتدای خط جاری برمیگردونه ..با \n اشتباهش نگیرید
\\: کاراکتر \ از این توالی برای چاپ کاراکتر \ استفاده میشه
اموزش جاوا به زبان ساده ۱۴؛
نمایش متن با printf

کاربرد متد System.out.printf در نمایش قالب بندی شده داده ها است (حرف f به معنی "formatted" است)در برنامه پایین از این متد برای چاپ رشته های "Welcome to" و "Java Programming !" استفاده شده

مثال :

public class Welcom2
{
public static void main (String[] args)
{
System.out.printf("%s\n%s\n" ,
"Weolcom to " , "Java Programming!");
}
}
اموزش جاوا به زبان ساده ۱۵ :
عملگرها :
*
/
%
+
_
+
=

* :
ضرب..اولویت اول .اگه چند مورد از این عملگر وجود داشته باشه !
/:
تقسیم ..ترتیب اجرا از سمت چپ به راست
%:
باقیمانده
+:
جمع :
اولویت بعدی..اگه چندتا عملگر جمع و تفریق داشته باشیم !
-:
تفریق..ترتیب اجرا از سمت چپ به سمت راست

= : تخصیص ...اخرین ارزیابی
اموزش جاوا به زبان ساده ۱۶ :
عملگر های برابری و رابطه ای : بخش یک

یک شرط ..یه عبارته که میتونه true یا false باشه..در این قسمت ساختار if رو بیشتر مورد ارزیابی قرار میدیم...
شرط هایی که توی if تعریف میکنیم میتونند از عملگر های برابری و رابطه ای که در پایین بیشتر توضیح میدیم استفاده کنند


== :
عملگر برابری
مثال در جاوا :
y == x
مفهوم در جاوا :
x با y برابر است

!= :
عملگر نابرابری
مثال در جاوا :
y != x
مفهوم در جاوا :
x با y برابر نیست


عملگر های رابطه ای
که چهار نوع دارن

>:
مثال در جاوا :
x<y
مفهوم در جاوا
x از y کوچیک تر است

<: برعکس عبارت بالایی


>= :
بزرگتر مساوی

>= :
کوچیکتر مساوی
اموزش جاوا به زبان ساده ۱۷ :
عملگر های برابر و رابطه ای :بخش دو

برنامه ای که خواهیم ساخت از ۶ عبارت برای مقایسه ی دو عدد استفاده میکنه...اگر شرطامون بر قرار بود (true باشد) خروجی مرتبط با اون عبارت به اجرا در میاد

import java.util.Scanner;
public class Parsa
{
public static void main (String[] args)
{
int num1;
int num2
SCanner input = new Scanner (System.in);
System.out.println("لطفا عدد اول را وارد کنید");
num1 = input.nextInt();
System.out.println("لطفا عدد دوم رو وارد کنید");
num2 = input.nextInt();

if (num1 == num2)
System.out.println(num1 + "==" + num2 );
else if (num1 != num2)
System.out.println(num1 + "!=" + num2);
else
System.out.println("nothing!!!");
}
}
اموزش جاوا به زبان ساده ۱۷ :
عملگر های برابر و رابطه ای :بخش دو

برنامه ای که خواهیم ساخت از ۶ عبارت برای مقایسه ی دو عدد استفاده میکنه...اگر شرطامون بر قرار بود (true باشد) خروجی مرتبط با اون عبارت به اجرا در میاد

import java.util.Scanner;
public class Parsa
{
public static void main (String[] args)
{
int num1;
int num2
SCanner input = new Scanner (System.in);
System.out.println("لطفا عدد اول را وارد کنید");
num1 = input.nextInt();
System.out.println("لطفا عدد دوم رو وارد کنید");
num2 = input.nextInt();

if (num1 == num2)
System.out.println(num1 + "==" + num2 );
else if (num1 != num2)
System.out.println(num1 + "!=" + num2);
else
System.out.println("nothing!!!");
}
}
Age.java
1.4 KB
درس برای جلسه ی if
اموزش جاوا به زبان ساده ۱۸:
حلقه ی do...while
public class Do{
public static void main (String[] args)

int counter = 0;
do
{
System.out.println(counter);
counter++;
} while(counter <= 10);
}
}

فرق while و do while:..

وقتی ما while رو استفاده کنیم اول چک می کنه و بعد اگه شرط برقرار بود اون کاریو که خواستیم انجام میده

ولی do while اول یکبار اون کاریو که خواستیم انجام میده و بعد شرط روچک میکنه..یعنی چی؟

ببینید ما اگه یه متغیر تعریف کنیم
int counter=0;

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

while (counter>=10)
{
System.out.println(counter);
counter++;
}
خب اینجا هیچی چاپ نمیکنه چون ۰ بزرگتر یا مساوی ده نیست...پس هیچ شر طی رو اجرا نمیکنه

ولی اگه ما do بزاریم اولش مثل بالا که نوشتم..یکبار میاد شرط رو اجرا میکنه و بعد چک میکنه ببینه درسته یانه

سوالی بود :
@prsw16
دوستان:
۲۲ شهریور روز جهانی برنامه نویسان پیشاپیش مبارک !
import java.util.Scanner;

public class NewClass {
Scanner n = new Scanner (System.in);
public static void main (String[] args)
{
System.out.println(average(1,2));
}
public static int average(int... number) {
int total = 0;
for (int x : number)
{
total += x;
}
return total / number.length;
}

}


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

باید ازین راه استفاده کنید
public static int average(int... number)

این سه نقطه ی بین int و number نشانگر اینه که ما تعداد اعداد رو نمیدونیم

این رو برای اطلاعاتتون گفتم و اگه یاد نگرفتید هیچ اشکالی نداره و بعدن توضیح بیشتری خواهم داد
👍1
اموزش جاوا به زبان ساده ۱۹:

بدست اوردن معدل بین اعداد

import java.util.Scanner;

public class NewClass1 {
public static void main (String[] args)
{
Scanner input = new Scanner(System.in);
double total = 0;
double grade;
double average;
double counter = 0;
System.out.println("Please enter numbers : ");
while (counter < 10 ){
grade = input.nextDouble();
total = total + grade;
counter++;
}
average = total/10;
System.out.println("Your average is " + average);

}

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

خب برای معدل گرفتن چیکار میکردیم؟همه اعداد رو جمع و بر تعداد تقسیم میکردیم

پس یه متغیر برای جمع اعداد نیاز داریم

متغیری که اعداد اعشاری رو توی خودش بتونه جا بده
خب چرا؟چون که ممکنه معدل چند عدد یه عدد اعشاری بشه !

double total = 0;
خب ما یه double تعریف میکنیم به اسم total یا هرچی خودتون میخواید..و اونو برابر با صفر قرار میدیم..چرا؟چون که جمع اعداد از اولش صفره دیگه..ممکنه هیچ عددی وارد نکنه کاربر

یه متغیر به اسم double counter = 0; تعریف میکنیم..این متغیر نشانگر تعداد اعدادی که میخوای معدلشونو بگیریم هست

double grade;
این برای وارد کردن اعداد از طرف کاربره..اگه دقت کنید زیر حلقه ی while
grade = input.nextDouble();
grade رو برابر با مقداری که کاربر وارد میکنه قرار دادیم

double average; این هم برای ذخیره ی اعداد و معدل هست

چون اگه دقت کنید اون پایین
average = total/10;
رو گذاشتیم


System.out.println("Please enter numbers : ");
به کاربر اعلام میکنه که اعدادشو وارد کنه

یه while باید تعریف کنیم اینجا

while (counter < 10 )
برای اینکه مشخص کنه تا چند عدد باید از کاربر بگیره و معدلشونو حساب کنه
پس تا وقتی counter از ده کوچیکتر ه هست بیا این کارای زیررو انجام بده

grade = input.nextDouble();
تازمانی که counter از ۱۰ کوچیکتر هست

بیا برو خط بعدی و از کاربر اعداد رو بگیر
و توی متغیری به اسم grade ذخیره کن

total = total + grade;

و جمع اعداد رو برابر با جمع به اضافه ی اعدادی که کاربر وارد کرده قرار بده

میتونیم اینجا به جای total = total + grade;
total += grade;
قرار بدیم
حالا برای اینکه راحت تر متوجه بشید ازین روش استفاده نکردم

counter++;
و بیا به counter یدونه اضافه کن تا به ۱۰ برسه
اگه این رو نزاریم که اضافه کنه همینطور تا ابد ادامه داره...چون هیچوقت عدد به ده نمیرسه و حلقه همینطور کارشو ادامه میده

average = total/10;
معدل مساوی هست با جمع اعداد تقسیم بر تعدادشون
که تعدادشون رو از پیش ده تایین کردیم

System.out.println("Your average is " + average); و بیا معدل رو برای من بنداز بیرون

خب یه موقع هست که شما میخواید معدل صدتا عددو حساب کنید

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

سوالی بودی @prsw16