Learn Java Language (Part -1)
Introduction
History of java
Java एक general purpose object oriented programming लैंग्वेज है। Sun Micro-systems ने java 1991 में U.S. में बनायीं थी। Java का नाम पहले oak रखा गया था लेकिन बाद में इसे change करके java किया गया था। Java James Gosling ने develop की थी। Java को consumer electronics जैसे की TV, VCR आदि software बनाने के लिए develop किया गया था।
Java का सबसे important और popular feature था की java platform independent थी। क्योंकि java किसी एक particular hardware या operating system के लिए नहीं बनायीं गयी थी। Java में बनाये हुए program किसी भी system पर execute किये जा सकते है। Java का ये feature java को आज भी सबसे popular लैंग्वेज बनाता है।
1. Features of java
Java के बहुत सारे features है। एक अच्छा java programmer बनने के लिए आपको ये सभी features पता होने चाहिए। आइये java के कुछ popular features के बारे में जानने का प्रयास करते है।
2. Compiled and interpreted
ज्यादातर programming languages या तो compiled होती है या interpreted होती है। लेकिन java इन दोनों approaches को combine करती है और एक two stage system बनाती है। पहले तो java आपके program को compiler करके byte code generate करती है। Byte code machine instructions नहीं होते है। इसलिए java second stage में byte code को interpret करके machine code generate करती है, जिसे directly execute किया जा सकता है।
3. Platform independent
Java को byte code platform independent बनाता है। जब आप किसी java program को compile करते है तो वो byte code में convert हो जाता है। ये byte code किसी भी मशीन या operating system पर नहीं चल सकता है। ये सिर्फ JVM (Java Virtual Machine) पर चलता है।
Java के program को run करने के लिए आपको अपने operating system पर JVM install करना पड़ता है। हर operating system के लिए अलग JVM होता है लेकिन काम सभी एक ही करते है। और वो काम होता है उस operating system के लिए byte code को machine code में convert करना। इसलिए किसी एक operating system के JVM द्वारा generate किया गया byte code कोई भी दूसरी JVM पर run किया जा सकता है। और फिर JVM उस operating system के लिए machine code generate कर देती है।
इसलिए अलग अलग machines के लिए अलग अलग machine code generate होता है लेकिन वो एक ही byte code से generate होता है क्योंकि आपका program पहले byte code में convert होता है।
4. Object oriented
Java एक true object oriented programming language है। Java में almost सब कुछ object है। Java में आपकी सारी information objects के रूप में store होती है।
5. Robust and secure
Java एक robust language है। Java में बनाया हुआ कोई भी program अलग अलग environments में अलग अलग technologies के साथ बिना crash हुए काम कर सकता है। Java programs कभी crash नहीं होते है। ये बहुत ही reliable language है।
Java में security JVM के द्वारा provide की जाती है। Machine code generate करने से पहले JVM पर कुछ tests रन करके invalid combinations को detect करती है।
6. Distributed
Java से आप distributed applications क्रिएट कर सकते है। Distributed applications वो applications होती है जो अलग अलग networks पर होती है और एक साथ मिलकर task perform करती है। Java में RMI के through आप दूसरे network पर available applications से interact कर सकते है।
7. Simple and familiar
Java एक simple language है। Java के बहुत से features c और c++ से लिए गए है। Java का syntax c और c++ के जैसा है। जैसे की variable declarations, control statements और method declarations आदि। ये सब java को easy तो understand बनाते है। क्योंकि java c और c++ को ध्यान में रख कर बनायीं गयी है इसलिए ज्यादातर programmers को familiar लगती है।
8. Multi-threaded and interactive
Java एक multi-threaded language है। कोई भी java program एक साथ कई tasks complete कर सकता है। ये feature java को fast और interactive बनाता है।
9. High performance
Java की performance बहुत impressive है। Java की speed को main reason byte code है। Java का architecture इस तरह से design किया गया है की java में run time पर over head बहुत कम होता है।
10. Dynamic and Extensible
Java एक dynamic language है। Java run time के दौरान libraries, methods और classes से dynamic linking करने में सक्षम है। Java को नयी technologies के साथ आसानी से यूज़ किया जा सकता है।
11. Ease of development
Java में programs develop करना बहुत easy है। Java आपको built इन libraries provide करती है जिसमे आपके यूज़ के लिए important classes होती है। इससे programmer का overhead कम हो जाता है। Programmer इन libraries को access करके आसानी से software develop कर सकता है।
12. Object oriented principles of java
जैसा की मैने आपको बताया java एक object oriented language है। Java भी सभी object oriented programming languages की तरह object oriented principles को follow करती है। आइये इन principles के बारे में जानने का प्रयास करते है।
13. Encapsulation
Encapsulation को data hiding भी कहते है। Encapsulation में आप private variables declare करते है और उन्हें public methods के through access करते है आपके variables को आपकी ही class के methods access कर सकते है। दूसरी कोई भी class आपके variables को access नहीं कर सकती है। इस प्रकार आप data को hide भी करते है और यूज़ भी करते है।
Encapsulation का एक और मतलब होता है data और code को एक unit में bind करना और बाहर से access को रोकना। ऐसे आपका ऐसे आपके variables और methods एक ही unit में bind हो जाते है। Java 3 level की data hiding provide करती है।
* public - आपके public class members को दूसरी classes access कर सकती है।
* private - आपके private class members को दूसरी कोई भी class access नहीं कर सकती है।
* protected - केवल आपकी class को inherit करने वाली class ही आपके class members को access कर सकती है।
14. Inheritance
इस principle के through आप एक class के variables को दूसरी class में access कर सकते है। ऐसा करने से आपको एक जैसे methods को बार बार लिखने की जरुरत नहीं होती है। इससे computer की memory और programmer का time दोनों बचता है। Java में multiple inheritance allow नहीं है। एक class सिर्फ एक ही class को inherit कर सकती है। ये कमी जावा interfaces के through पूरी करती है।
15. Polymorphism
15. Polymorphism
Polymorphism का मतलब होता है "एक नाम और कई काम"। Polymorphism के through आप एक interface से situation एक according अलग अलग actions ले सकते है। जैसे की method overloading में किया जाता है।
16. Abstraction
Abstraction java का बहुत important concept है। जब आप बाइक चलाते है तो आपको ये पता नहीं होता है की ये bike कैसे काम कर रही है। आप बस उसे चलाते है। उसकी internal working आपको पता नहीं रहती है। Abstraction का भी same concept है। आप अपने software की internal working यूज़र को शो नहीं करते है। बस यूज़र को वो interface provide करते है जिससे की वो interact करेगा।
17. Java development tools
Java में software कुछ built in development tools की मदद से बनाया जाता है। आइये इन development tools के बारे में जानने का प्रयास करते है।
18. JDK(Java Development Kit)
JDK एक environment होता है जिसमे आप कोई भी java program क्रिएट कर सकते है और उसको execute करवा सकते है। JDK में JRE होता है जो किसी भी java program के execution के लिए responsible होता है।
19. JRE(Java Run-time Environment)
JRE आपके program के execution के लिए responsible होता है। JRE कुछ classes और libraries का group होता है जो एक साथ मिलकर program को execute होने के लिए environment क्रिएट करते है।
JRE आपके program के execution के लिए responsible होता है। JRE कुछ classes और libraries का group होता है जो एक साथ मिलकर program को execute होने के लिए environment क्रिएट करते है।
JRE के 2 काम होते है।
* Program में main मेथड को ढूंढना।
* Program का execution start करना।
20. JVM (Java Virtual Machine)
जैसा की आप जानते है की जब आप किसी java program को compile करते है तो वो पहले byte code में convert होता है। इसके बाद वो byte code machine code में convert किया जाता है। JVM एक environment या machine होती है जो byte code को machine code में convert करती है। ये JRE के साथ मिलकर काम करती है।
Installing Java
Installing java
Java आप 2 तरह से इंस्टॉल कर सकते है। एक तो आप जावा command prompt version डाउनलोड कर सकते है। जिसमे सिर्फ आपको java प्लेटफार्म मिलता है और आप कोई भी editor यूज़ करके प्रोग्राम बना सकते है और command prompt से उस फाइल को रन करवा सकते है। दूसरा आप जावा का IDE डाउनलोड कर सकते है ये एक ऐसा environment होता है जिसमे आप प्रोग्राम बना कर वही से उसे रन करवा सकते है। जावा की official वेबसाइट पर आपको NetBeans IDE मिलेगा लेकिन आप Eclipse भी डाउनलोड कर सकते है।
How to compile and run a java program
* Through IDE
* Through console
किसी भी जावा प्रोग्राम को रन करने के 2 तरीके होते है. मै जब java सिख रहा था तो हमे लैब में IDE का use करना मना था हमे सारे प्रोग्राम notepad में बनाने होते थे और console से उन्हें रन करवाना होता था. यदि आपके साथ भी ऐसा है तो आप console से जावा प्रोग्राम रन करवाना सिख लीजिये। लेकिन आपको दोनों तरीके पता होने चाहिए।
1. Through IDE (Integrated Development Environment)
2. Through Console
1. Through IDE -
IDE से किसी भी प्रोग्राम को रन करवाना आसान होता है बस आपको प्रोग्राम टाइप करना है और रन बटन पर क्लिक करना है. सभी IDE जैसे की Eclipse, NetBeans आदि बटन प्रोवाइड करते है. जब हम इस बटन पर क्लिक करते है तो IDE Java Compiler को execute करता है. मै आपको सलाह दूंगा की आप एक IDE जरूर डाउनलोड करे.
2. Through Console -
Console से जावा program रन करवाने के steps निचे दिए हुए है.
1. Run में cmd टाइप कीजिये और command prompt ओपन कीजिये।
2. Command prompt ओपन करने के बाद आप उस drive में जाइये जिसमे जावा install है और जावा के bin folder को locate कर लीजिये।
3. अब आपको ये चेक कर लेना चाहिए की जावा ठीक तरह से काम कर रही है या नहीं इसके लिए आप javac कमांड टाइप कीजिये और enter प्रेस कीजिये आपको निचे की image जैसा कुछ शो होगा।
4. जो प्रोग्राम आप रन करवाना चाहते है उसे बिन फोल्डर में .java extension से सेव कर लीजिये जैसे MyProgram.java. इसके बाद कमांड prompt में javac command टाइप करिये और इस फाइल का नाम लिख दीजिये। जैसे की javac MyProgram.java और फिर enter प्रेस कीजिये। यदि आपके प्रोग्राम में कोई errors होगी तो वो शो जाएगी नहीं तो आप दूसरी लाइन में आ जायेंगे। ये कमांड हमारे प्रोग्राम की executable file क्रिएट करती है.
5. अब आप java कमांड के आगे अपनी फाइल का नाम लिख दीजिये और एंटर प्रेस कीजिये। जैसे java MyProgram. अब आपका प्रोग्राम रन हो जायेगा।
Java vs Other Languages
Java vs c and c++
* Java vs c in Hindi
* Java vs c++ in Hindi
कोई भी software develop करने से पहले ये सोचा जाता है की इसे किस language के साथ बनाया जाये। हर language की एक खासियत होती है जो उसे दूसरी languages से बेहतर बनाती है। जैसे कोई एक language web development के लिए अच्छी हो सकती है और दूसरी desktop applications के लिए। ऐसी situation में languages का एक दूसरे से comparison जरुरी है ताकि आप अपने software के लिए बेहतर language चुन सके। निचे java का c और c++ के साथ comparison दिया जा रहा है।
Java vs C
* Java एक object oriented programming language है और C procedural language है। Java के programs objects से मिलकर बने होते है और C के program functions से मिलकर बने होते है।
* Java interpreted और compiled language है जबकि C एक compiled language है। C Language का code सीधा machine code में convert होता है। जबकि java का code pehle byte code में convert होता है फिर JVM उसे machine code में convert करती है।
* Java एक high level language है जबकि C एक low level language है। C languae machine के बहुत करीब होती है।
* Java bottom up approach होती है जबकि C top down approach होती है Java में छोटे छोटे elements मिलकर program का निर्माण करते है। जबकि C में बड़े elements छोटे छोटे elements में टूटते जाते है।
* Java में pointers को safe नहीं माना गया है जबकि C में आपको pointers को आसानी से handle कर सकते है।
* Java में automatic garbage collection होता है, इसलिए java memory को automatically manage करती है। C में आप memory खुद manage करते है।
* Java method overloading को support करती है और C overloading को support नहीं करती है।
* Java exception handling को support करती है। और C exceptions को handle करने के लिए कोई mechanism नहीं provide करती है।
Java vs C++
* C++ structures, unions, templates और pointers को support करती है। जबकि java इनमे से किसी mechanism को support नहीं करती है।
* C++ में memory को destructors के द्वारा manage किया जाता है। Java में automatic garbage collection होता है।
* Java threads के लिए built-in support provide करती है जबकि C++ में threads third party libraries के द्वारा perform किया जाता है।
* C++ में default arguments यूज़ किये जाते है। साथ ही C++ में scope resolution operator(::) भी यूज़ किया जाता है, जिससे किसी class को कोई method class के बाहर भी define किया जा सकता है। Java default arguments और scope resolution operator दोनों कोई ही support नहीं करती है।
* C++ में goto statement होता है जबकि java में कोई goto statement नहीं होता है।
* C++ में method overloading भी होती है और operator overloading भी होती है। Java में सिर्फ method overloading होती है। Java operator overloading को support नहीं करती है।
* C++ का code हर machine पर काम नहीं कर सकता है जबकि java platform independent language है।
* C++ compiled language है और java compiled और interpreted दोनों है।
Write your first program in java
* First java program
* Hello java program in Hindi
* Public access specifier in Hindi
* Static keyword in Hindi
* Command line arguments in Hindi
Hello java program
आइये एक simple जावा प्रोग्राम को समझने का प्रयास करते है -
मुझे याद है जब मैने पहली बार जावा प्रोग्राम रन करवाया था तो मेरे lecturer ने board पर ये प्रोग्राम लिखा था और हमसे कहा था की इसे copy करो और रन करवाओ। ये एक बहुत ही simple सा प्रोग्राम है। आप ये प्रोग्राम notepad में टाइप कर लीजिये और उसे रन करवाइये। यदि आपको java program रन करवाने में कोई परेशानी है तो आप How to run a java program tutorial देख लीजिये। ये प्रोग्राम command line पर एक message show करता है जो आपने inverted commas (" ") के बीच में लिखा है। इस program में एक क्लास क्रिएट की गयी है HelloJava नाम से और main मेथड में println मेथड को call किया गया है जो मैसेज को प्रिंट करता है।
यदि आप इस प्रोग्राम के बारे में और जानना चाहते है, तो निचे लिखे हुए description को पड़ सकते है।
* public - public एक access modifier है। Access modifiers 3 तरह के होते है (public, private, protected) और ये आपकी क्लास के members के access को control करते है। इनके बारे में आप आगे की tutorials में पड़ेंगे।
* class - क्लास एक कीवर्ड है जो नयी क्लास क्रिएट करने के काम में आता है। क्लास जावा का सबसे important concept है क्योंकि जावा में सब कुछ क्लास है। Class के बारे आप आगे जानेंगे।
* HelloJava - ये हमारी क्लास का नाम है। क्लास का नाम हमेशा यूनिक होना चाहिए।
* static - ये keyword किसी method को बिना ऑब्जेक्ट के कॉल करने के लिए यूज़ किया जाता है। हमे मैन मेथड के आगे ये कीवर्ड लगाना जरुरी होता है क्योंकि main मेथड को java run time environment program को execute करने के लिए access करता है।
* main - हमारे प्रोग्राम में एक से ज्यादा क्लासेज हो सकती है। हमारे प्रोग्राम का execution उस क्लास से शुरू होता है जिसमे main मेथड होता है।
* String args [] - ये string array command line arguments के लिए यूज़ किया जाता है। मतलब हम प्रोग्राम को execute करवाते समय भी argument पास कर सकते है।
* System.out.println () - यंहा पर system एक package है, out एक क्लास है, और println एक मेथड है, जो command prompt screen पर आउट शो करने के लिए यूज़ किया जाता है।
Data Types
Java data types
* Introduction to java data types in Hindi
* Integers in Hindi
* Floating point numbers in Hindi
* Characters in Hindi
* Boolean in Hindi
1. Introduction to java data types
Data, data और data. Computer की दुनिया data से लबालब भरी हुई है। आखिर क्या है ये data??. Data आपके पास कई तरह से available रहता है। जैसे की किसी व्यक्ति की उम्र या उसका नाम आदि। Data अलग अलग type का होता है। कभी data संख्या में होता है और कभी शब्दों में होता है।
हर तरह के data को अलग category में रखा गया है। लेकिन ऐसा क्यों किया गया??. हर तरह के data पर अलग अलग operations perform किये जाते है। जैसे की जो operations(Addition, Subtraction, Multiplication and Division) किसी संख्या पर perform किये जा सकते है किसी शब्द के साथ नहीं perform किये जा सकते है।
कोई भी variable क्रिएट करने से पहले आप उसमे किस तरह का data store करना चाहते है define करना पड़ता है। इसे ही data type कहते है। Java में data types को 4 categories में define किया गया है।
2. Integers
Integers complete number होते है। इन numbers में fractional part (दशमलव और उसके बाद की संख्या) include नहीं किया जा सकता है। Integers को उनकी size के according 4 categories में define किया गया है। इनके बारे में निचे दिया जा रहा है।
Floating point numbers
Floating point numbers वो numbers होते है जिनमे fractional part (दशमलव और उसके बाद की संख्या) को represent किया जाता है। जब आप कोई important mathematical calculation कर रहे हो तो इन numbers का बहुत महत्व रहता है। Floating point numbers को 2 categories में define किया गया है। इनके बारे में निचे दिया जा रहा है।
3. Character
किसी एक अक्षर को store करने के लिए आप character यूज़ करते है। Character की size 16 bit होती है। Character को char keyword से represent किया जाता है।
Example - char FavLang = 'c';
4. Boolean
Boolean data types को logical decision store करने के लिए यूज़ किया जाता है। Boolean variables की 2 values होती है या तो true या false।
Example - boolean isFiveMoreThanOne = true;
Variables
Introduction to java variables
किसी भी information को store करने के लिए आप variables का उपयोग करते है। और उस information को आप उस variable की value कहते है। ये information कुछ भी हो सकती है, जैसे की आप किसी व्यक्ति का नाम और उसकी उम्र store करना चाहते है। इसके लिए आपको 2 variables की जरुरत होगी। एक variable में आप उस व्यक्ति का नाम store करेंगे और दूसरे variable में उसकी उम्र store करेंगे।
किसी भी variable की value changeable होती है। आप जब चाहे तब कोई दूसरी value store कर सकते है। वो variables जिनकी value change नहीं की जा सकती constants कहलाते है।
Information को store करने से पहले आपको variables को create करना पड़ता है। Variable क्रिएट करने के लिए आप variable का नाम देते है। ध्यान रहे हर variable का नाम unique होना चाहिए नहीं तो compiler error generate करेगा। साथ ही variable के नाम से पहले आपको datatype भी define करना होता है।
Data type या information type का मतलब होता है की आप किस तरह की information store करना चाहते है। जैसे की आप कोई संख्या store करना चाहते है या कोई शब्द store करना चाहते है या कोई दशमलव संख्या store करना चाहते है। Variable के नाम से पहले आप किस तरह की संख्या store कर रहे है ये दर्शाना बहुत जरुरी होता है इसे ही data type कहते है।
1. Types of variables
Java में variables को उनके scope के अनुसार 2 types में बाँटा गया है। इनके बारे में निचे दिया जा रहा है।
2. Local variables
जब आप किसी method में कोई variable क्रिएट करते है तो उस variable का यूज़ उस method तक ही रहता है। उस method के बाहर variable का कोई यूज़ नहीं होता है। इसे उस variable का scope कहते है। जिन variables का scope किसी method तक होता है उन्हें local variables कहते है।
3. Global variables
जब आपको कोई variable पुरे program में यूज़ करना हो तो आप उसे किसी method में declare नहीं करते है। ऐसे variables को program के starting में ही declare कर दिया जाता है। ये variables पुरे program में कँही भी यूज़ किये जा सकते है। ऐसे variables जो पुरे program में यूज़ होते है global variables कहलाते है। Global variables का scope पुरे program में होता है।
4. Creating variables in java
Java में variables क्रिएट करने की 2 स्टेज होती है। आइये इन दोनों stages को समझने का प्रयास करते है।
5. Variable declaration
इस stage में आप सिर्फ variable का नाम और वो किस तरह की values store कर रहा है ये define करते है। जैसे
Example - int personAge; // data type and variable name
6. Variable initialization
इस stage में आप variable की value define करते है। जैसे
Example - int personAge = 26;
ये दोनों काम एक साथ भी किये जा सकते है। जैसे
Example - int personAge = 26;
यदि आप चाहते है की variable की value run time (dynamically) में user से input करवाये तो आप variable को initialize नहीं करते है। सिर्फ declare करके छोड़ देते है। यानि first stage में ही छोड़ देते है।
7. Taking input from user
Run time में variable में value input करवाने के लिए आप Scanner class का object create करते है। ये class कई प्रकार के methods provide करती है जो keyboard से input प्राप्त करने के लिए यूज़ किये जाते है। हर तरह के data type के लिए अलग अलग methods provide किये गए है। Object क्रिएट करते समय आप उसमे argument System.in पास करते है। System.in का मतलब होता है की जो भी यूज़र keyboard में type करे वो आप लेना चाहते है। Value read करने के लिए आप इस object पर अलग अलग methods यूज़ कर सकते है। जैसे की integer value read करने के लिए nextInt(), string के लिए nextLine() और float value read करने के लिए nextFloat() आदि methods call कर सकते है।
Example
* int PersonAge; // variable declaration
* Scanner s = new Scanner(System.in); // Scanner class object
* PersonAge = s.nextInt(); // reading from keyboard
Strings
Introduction to java strings
Strings characters की sequence होती है। जैसे की "Java in Hindi" एक string है। Java में strings को objects की तरह implement किया गया है। ऐसा इसलिए किया गया है, ताकि strings पर operations perform किये जा सके। Operations जैसे की 2 strings को जोड़ना या compare करना आदि आप strings पर perform कर सकते है। String एक class है। आप normal string variables भी create कर सकते है और string class का object भी create कर सकते है। और दोनों के साथ ही operations perform कर सकते है।
String myString = "this is a string"; // variable
String myString = new String("This is a string"); // object
String को एक variable की तरह और एक object की तरह यूज़ करने में फर्क होता है। जब आप string को object की तरह यूज़ करते है तो एक बार object create होने के बाद आप उसमे कोई change नहीं कर सकते है। उदाहरण के लिए ऊपर दिए हुए example को देखिये मैने myString नाम से object बनाया है। लेकिन अब इसके text "This is a string" में कोई change नहीं किया जा सकता है". लेकिन जब आप string को variable की तरह यूज़ करते है तो उसमे आसानी से changes किये जा सकते है।
Java कुछ methods provide करती है, जिनसे आप string object में modification कर सकते है। लेकिन जब भी आप ऐसा करते है तो एक नया string object generate होता है। Original string object में कोई change नहीं आता है। इन सभी operations के बारे में निचे दिया जा रहा है।
1. String length
किसी भी string में जितने characters होते है वो उस string की length होते है। किसी भी string की length पता करने के लिए आप length() method यूज़ कर सकते है। इसके लिए आप उस string पर length method call करते है।
String myString = "hello";
System.out.println(myString.length());
2. Concatenating strings
जब किन्हीं 2 strings को जोड़कर एक तीसरी string बनायीं जाती है तो उसे string concatenation कहते है। ऐसा आप + operator के द्वारा भी कर सकते है और concat() method के द्वारा भी कर सकते है। इन दोनों ही तरीकों के उदाहरण निचे दिए जा रहे है।
String myString = "This is a string";
String yourString = "This is your string";
String ourString = myString+yourString; // with + operator
ourString = myString.concat(yourString); // with concat() method
System.out.println(ourString);
3. String indexing with charAt()
ये method string में से किसी एक method को extract करने के लिए यूज़ किया जाता है। Strings की indexing arrays की तरह ही होती है। पहला character 0 index पर होता है। इसलिए आप string के किसी भी single character को access कर सकते है। इसके लिए आप charAt() method यूज़ करते है। जो index number आप इस method में pass करते है ये method उसी index के character को return करता है।
String myString = "hello";
System.out.println(myString.charAt(3));
4. String indexing with substring()
किसी string में sub string search करने के लिए आप substring() method यूज़ करते है। इस method में आप 2 arguments pass करते है। पहला argument वो index number है जंहा से आप string को access करना चाहते है। और दूसरा argument वो index number है जँहा तक की string आप access करना चाहते है। ये method starting index से लेकर ending index तक की string return करता है।
String s1 = "hello my name is khan";
System.out.println(s1.substring(5,8));
5. String indexing with indexOf()
कौनसी sub string किस index पर है ये पता करने के लिए आप indexOf() method यूज़ करते है। इस method में एक sub string pass की जाती है। ये method उस sub string की stating index return करता है।
String s1 = "hello my name is khan";
System.out.println(s1.indexOf("my")); //returns 7
6. String comparison with equals()
कोई सी भी 2 strings को compare करने के लिए Equals() method यूज़ किया जाता है। यदि दोनों strings equal होती है तो ये method true return करता है। एक string पर इस method को call किया जाता है और दूसरी string argument की तरह pass की जाती है। इसका उदाहरण निचे दिया जा रहा है।
String s1 = "hello";
String s2 = "hello";
System.out.println(s1.equals(s2)); // prints true
Arrays
Introduction to java arrays
कल्पना कीजिये की आप 200 employees के बारे में कोई information store कर रहे है। इतने employees की information separately store करने के लिए आपको 200 variables की आवश्यकता होगी। लेकिन कोई भी human इतने सारे variables को create और manage नहीं कर सकता है। आपको 200 अलग अलग नाम सोचने होंगे। और इससे आपका program भी काफ़ी बड़ा हो जायेगा। इस समस्या से बचने के लिए arrays का उपयोग किया जाता है।
एक array similar data type की values का collection होता है। Array से आप similar information का group बना सकते है। जैसे employees की salary का array बना कर आप सभी employees की salary store करवा सकते है।
आप किसी भी type का array create कर सकते है। जैसे की int, float, char आदि। जिस type का आप variable create करेंगे उसी तरह की values उसमे डाल सकते है। जब आप array create करते तो उसकी size भी define करते है।
जितनी array की size होती है उतनी ही values उसमे store की जा सकती है। Array सभी values को indexing के द्वारा store करता है। हर index एक different variable को represent करती है।
array_name[0]; // first variable
array_name[1];// second variable
..
..
array-name[n-1]; // last variable
array_name[1];// second variable
..
..
array-name[n-1]; // last variable
Arrays की index zero से शुरू होती है इसलिए यदि आपके array का size n है तो last element (n -1) position पर store होगा।
यँहा पर array की size 5 है लेकिन array का last element 22 4th position पर store हो रहा है क्योंकि array की index zero से शुरू हो रही है।
1. Creating java arrays
Java में arrays create करना बहुत ही आसान है। ये किसी class का object create करने जैसा है। इसका उदाहरण निचे दिया जा रहा है।
Initializing arrays
Arrays को आप 2 तरह से initialize कर सकते है। पहले तरीके में variable की तरह ही java की किसी index को आप initialize कर सकते है। इसका उदाहरण निचे दिया जा रहा है।
salary[0] = 25000;
salary[1] = 10000;
..
..
salary[9] = 30000;
salary[1] = 10000;
..
..
salary[9] = 30000;
यूज़र के द्वारा भी values input करवाई जा सकती है।
Scanner s = new Scanner(System.in);
salary[0] = s.nextInt();
salary[0] = s.nextInt();
ये तरीका बहुत ही time consuming है। दूसरे तरीके में आप एक loop यूज़ करते है और सभी values को एक साथ input करवा लेते है।
Scanner s = new Scanner(System.in);
for(int i=0;i<10;i++)
{
salary[i] = s.nextInt();
}
for(int i=0;i<10;i++)
{
salary[i] = s.nextInt();
}
Displaying arrays
Arrays की values आप 2 तरह से print करवा सकते है। आप single index की value भी print करवा सकते है और पुरे array को भी print करवा सकते है।
System.out.println(salary[0]); // prints value of first index
for(int i =0; i<10; i++)
{
System.out.println(salary[i]); // prints all array
}
{
System.out.println(salary[i]); // prints all array
}
2. Multidimensional java arrays
अब तक आपने array के जो example देखे वो सभी one dimensional array है। Arrays के कई dimensions हो सकते है। अब 2 dimensional arrays की बात करेंगे। Two dimensional arrays create करने के लिए आप row और column size देते है। ये कोई table create करने जैसा होता है। इसमें पहले square brackets rows को और दूसरे brackets columns को represent करते है।
Creating two dimensional array
int TwoDiem [][] = new int [3][4];
Initializing two dimensional arrays
Scanner s = new Scanner(System.in);
System.out.println("Enter the array elements");
for(int i=0; i<3;i++)
{
for(int j=0;j<4;j++)
{
TwoDiem[][] = s.nextInt();
}
}
for(int i=0; i<3;i++)
{
for(int j=0;j<4;j++)
{
TwoDiem[][] = s.nextInt();
}
}
Displaying two dimensional arrays
for(int i = 0; i<3; i++)
{
for(int j=0; j<4; j++)
{
System.out.println(TwoDiem[i][j]);
}
}
Java arrays implement बहुत ही आसान होते है। यदि आपको java arrays समझने में कोई problem है तो आप comments में mention कर सकते है।
{
for(int j=0; j<4; j++)
{
System.out.println(TwoDiem[i][j]);
}
}
Java arrays implement बहुत ही आसान होते है। यदि आपको java arrays समझने में कोई problem है तो आप comments में mention कर सकते है।
Operators
Introduction to java operators
जैसा की आप सब जानते है operators का उपयोग आप variables पर operations perform करने के लिए करते है। हर data type पर अलग अलग operations perform किये जाते है। इसलिए operators भी अलग अलग यूज़ होते है।
Operators unary और binary 2 प्रकार के होते है। Operators के साथ यूज़ होने वाले variables को operand कहते है। Unary operators एक operand के साथ apply होते है और binary operators 2 operands पर apply होते है।
1. Java में मुख्यतः 6 type के operators होते है।
2. Arithmetic operators
3. Logical operators
4. Bit wise operators
5. Relational operators
6. Assignment operators
7. Conditional operators
इन सभी operators के बारे में निचे दिया जा रहा है।
1. Arithmetic operators
Arithmetic operators mathematical computation perform करने के लिए यूज़ किये जाते है। Arithmetic operators 5 type के होते है। इनके बारे में निचे दिया जा रहा है।
2. Logical operators
Logical operators boolean values पर operations perform करने के लिए यूज़ किये जाते है। ये operators 3 तरह के होते है। इस तरह के operations में दोनों variables की value true या false हो सकती है। Logical operators के बारे में निचे दिया जा रहा है।
3. Bit-wise operators
Bit-wise operators bit by bit operations perform करने के लिए यूज़ किये जाते है। ये operators variables की values को bits में convert करके उन पर operations perform करते है। Bit wise operators 4 तरह के होते है। इनके बारे में निचे दिया जा रहा है।
4. Relational operators
Relational operators 2 variables के बीच में relation को पता लगाने के लिए यूज़ किये जाते है। इनका प्रयोग ज्यादातर if statement में किया जाता है। इन operators से आपको 2 variables के बीच में relation का पता चलता है जैसे की क्या दोनों variables बराबर है या एक छोटा और एक बड़ा है।
5. Assignment operators
Assignment process को simple और fast बनाने के लिए java कुछ assignment operators provide करती है। इनके बारे में निचे दिया जा रहा है।
6. Conditional operator (?:)
Conditional operator java का special operator होता है जो if statement की तरह काम करता है। इसे ternary operator भी कहते है। ये variables में conditions के according values store करने के लिए यूज़ किया जाता है। इस operator में ? से पहले एक condition दी जाती है , यदि वो condition true है तो colon से पहले वाली value नहीं तो colon के बाद वाली value variable में store होती है।
Example
a=5, b=3;
c= a>b?a:b; // c में a की value store की जाएगी।

No comments: