BREAKING NEWS
🚀 Kaweesha launched the new AI Tech Blog! 💻 Python & Java Tutorials are now live. 🎮 Game Development Guide: Building 2D Games with Godot. 🌐 Web Hosting secrets revealed - Check the latest post!

Java Programming Sinhala - Part 02: Variables, Data Types & Math (සම්පූර්ණ පාඩම)

Java Data Types and Casting Code Example Sinhala

කලින් පාඩමෙන් අපි Java පරිගණකයට දාගෙන, "Hello Java" කියලා Print කරගත්තා මතකනේ? හැබැයි පරිගණකයක් (Computer) වුනාම ඒකෙන් වැඩක් ගන්න නම් අපි දත්ත (Data) එක්ක සෙල්ලම් කරන්න ඕනේ. 🧮

අද පාඩම ටිකක් දිගයි. හැබැයි මේක තමයි Java වල "කොඳු නාරටිය". අද අපි විශ්ව විද්‍යාලයේ උගන්වන Theory සහ ප්‍රායෝගිකව කෝඩ් කරන විදිය යන දෙකම එකතු කරලා, Variables, Data Types, Casting සහ Math Operations ගැන A-Z ඉගෙන ගමු. 🧠

1. Variables කියන්නේ මොනවද? 📦

සරලවම හිතන්න, Variable එකක් කියන්නේ මෙමරියේ (RAM) හදාගන්න "පෙට්ටියක්" වගේ දෙයක්. අපිට ඒක ඇතුලට අගයක් (Value) දාන්න පුළුවන්, ඕන නම් පස්සේ ඒක මාරු කරන්නත් පුළුවන්.

Variable එකක හැඩරුව (Syntax):
DataType variableName = value;
උදාහරණ: int age = 25;

⚠️ නම් තියද්දි සැලකිලිමත් වන්න! (Naming Rules)

ඔයාගේ බල්ලාට "බල්ලා" කියලා නම දාන්නේ නෑනේ. ඒ වගේ Variable වලටත් නීති තියෙනවා.

  • camelCase පාවිච්චි කරන්න: වචන දෙකක් එකතු වෙනවා නම්, මැද අකුර කැපිටල් කරන්න. (උදා: myAge, studentName).
  • ඉලක්කම් වලින් පටන් ගන්න බෑ: 1stPlace කියලා දාන්න බෑ. (place1 පුළුවන්).
  • හිස් තැන් (Spaces) බෑ: my name වැරදියි. my_name හෝ myName හරි.
  • Keywords බෑ: class, public, int වගේ වචන නම් විදියට ගන්න බෑ.

🔒 Constants (නියතයන්) - වෙනස් කරන්න බැරි ඒවා

සමහර වෙලාවට අපිට ඕන වෙනවා කවදාවත් වෙනස් නොවෙන අගයන් තියාගන්න. උදාහරණයකට Pi (π) අගය (3.14159...). Java වලදී මේවා හදන්නේ final කියන වචනේ (Keyword) පාවිච්චි කරලා.

final double PI = 3.14159;
// PI = 5.0; // මෙහෙම කරන්න බෑ! Error එකක් එනවා.

2. Data Types: ජාති වර්ග 8ක්? 🔢

Java වල දත්ත ගබඩා කරන ප්‍රධාන ක්‍රම (Primitive Types) 8ක් තියෙනවා.

Type Size විස්තරය
byte 1 byte හරිම පොඩි ඉලක්කම් (-128 සිට 127).
int 4 bytes බහුලවම පාවිච්චි වෙන්නේ මේක. (සාමාන්‍ය ගණන්).
long 8 bytes ගොඩාක් ලොකු ඉලක්කම් (අගට 'L' දාන්න ඕනේ).
double 8 bytes දශම තියෙන ඉලක්කම් (Ex: 10.5, 3.14).
boolean 1 bit true (ඇත්ත) හෝ false (බොරු) විතරයි.
char 2 bytes තනි අකුරක්. (Ex: 'A'). Single Quotes '' පාවිච්චි කරන්න.

3. String සහ විශේෂ සැසඳීම් 👑

String කියන්නේ Primitive type එකක් නෙමෙයි, ඒක Class එකක්. ඒ නිසා තමයි String වල මුල් අකුර Capital (S) වෙන්නේ.

⚠️ වැදගත්ම රහස (String Comparison):
ගොඩක් අයට වරදින තැනක් මේක. Java වල වචන දෙකක් සමානද බලන්න == ලකුණ පාවිච්චි කරන්න එපා! ඒ වෙනුවට .equals() පාවිච්චි කරන්න ඕනේ.

if (password.equals("1234")) { ... }

4. අපි කෝඩ් එකක් ගහලා බලමු! (Practical) 💻

දැන් Notepad++ එක අරන් අලුත් ෆයිල් එකක් MyVariables.java නමින් හදාගන්න. අපි ඉගෙන ගත්ත දේවල් දාලා "Student Profile" එකක් හදමු.

public class MyVariables {
    public static void main(String[] args) {
        // 1. Variables හදමු
        String name = "KP Tech";
        int age = 22;
        double gpa = 3.85;
        char grade = 'A';
        boolean isPassed = true;

        // 2. ඒවා Print කරමු (Concatenation)
        System.out.println("--- Student Profile ---");
        System.out.println("Name: " + name);
        System.out.println("Age: " + age);
        System.out.println("GPA: " + gpa);
        System.out.println("Grade: " + grade);
        
        // 3. වයස අවුරුද්දකින් වැඩි කරමු
        age++; 
        System.out.println("Next year age: " + age);
    }
}

5. Type Casting (බලෙන් ජාතිය මාරු කිරීම) 🔄

සමහර වෙලාවට අපිට දශම සංඛ්‍යාවක් (double) පූර්ණ සංඛ්‍යාවක් (int) කරන්න වෙනවා. මේකට කියන්නේ Casting කියලා.

  • Implicit Casting (ඉබේ වෙන): පොඩි එකා ලොකු එකාට දානකොට ප්‍රශ්නයක් නෑ. (intdouble).
  • Explicit Casting (බලෙන් කරන): ලොකු එකා පොඩි එකාට ඔබන්න ගියොත්, අපි කියන්න ඕන "කමක් නෑ ඔබන්න" කියලා.
double myDouble = 9.78;
int myInt = (int) myDouble; // Manual Casting (දශම ටික කපලා දානවා)

System.out.println(myInt);  // Outputs: 9

6. ගණන් හදමු (Operators & Math Class) ➕➖

සරල ගණිත කර්ම (+, -, *, /) වලට අමතරව Java වල තියෙන විශේෂ ඒවා බලමු.

  • % Modulus: මේකෙන් දෙන්නේ බෙදුවම එන ඉතුරුව. (Ex: 10 % 3 උත්තරේ 1 යි).
  • ++ Increment: අගය 1කින් වැඩි කරනවා. (i++).

සංකීර්ණ ගණන් සඳහා Math Class එක 📐

වර්ගමූලය, උපරිම අගය වගේ දේවල් හොයන්න Math කියන Class එක පාවිච්චි කරන්න පුළුවන්.

int x = 10, y = 20;

// වැඩි අගය හොයමු (Maximum)
System.out.println(Math.max(x, y)); // 20

// වර්ගමූලය (Square Root)
System.out.println(Math.sqrt(64)); // 8.0

// සසම්භාවී අංකයක් (Random Number)
System.out.println(Math.random()); // 0 සිට 1 අතර ගාණක්

අද ගෙදර වැඩ (Homework) 🏠

අපි ඉගෙන ගත්ත දේවල් පාවිච්චි කරලා මේ පොඩි වැඩසටහන හදන්න.

  1. radius කියලා variable එකක් හදලා ඒකට අගයක් දෙන්න.
  2. final double PI = 3.14159; කියලා නියතයක් හදන්න.
  3. වෘත්තයේ වර්ගඵලය සොයන්න. (Area = PI * radius * radius).
  4. උත්තරේ දශම නැතුව int එකක් විදියට Cast කරලා Print කරන්න.

ප්‍රශ්න ආවොත් පහළින් Comment කරන්න! ඊළඟ පාඩමෙන් අපි "If / Else සහ Logic Gates" ගැන ඉගෙන ගමු. 🔥

KP Tech Gear සමඟ දිගටම රැඳී සිටින්න! Share කරන්න අමතක කරන්න එපා. 👇

Author

About

Tech enthusiast, Python/Java Developer, and Gamer. Sharing knowledge about coding and modern technology.

Discussion

Kaweesha AI ×
Hello Kaweesha! I am ready to help with Python, Java, or Hosting queries. 🤖