Skip to content

M4MD24/LearnJava

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Learn Java


About the Project Owner

  • N LetterName Mohamed Sadawy Thabet (M4MD24)
  • F LetterField Software Engineer / Android Apps Developer
  • Mention Icon Accounts

About the Project Details

  • Recommended using Intellij IDEA (Community / Ultimate / EAP), Aqua, Fleet
  • Currently Used Intellij Idea Community
  • Java Version 24 Oracle OpenJDK Version 24 - SDK Default
  • MySQL Version 8.0.40
  • PostgreSQL Version 17.2
  • SQLite Version 3.47.2
  • HSQLDB Version 2.7.0

Tips for search important comments

  • For Search in Intellij IDEA CTRL + Shift + F, Select (In Project Option), and:

    • Search ! */ for Advices, Tips and Errors
    • Search . */ for Definitions
    • Search /* ~ for The Difference Between
    • Search /* ↓ for Examples
    • Search /* √ for Similar Concepts and Definition of Letters
    • Search /* β–  for Tables
    • Search // β€’ for Important Things
    • Search <h1>Problem for Problems
    • Search // > for Another Solution
    • Search [//]: # (Notes) for Important Notes
    • Search [//]: # (Notes How) for Notes How

  • Learn Examples of Concepts.
  1. Variables
  2. Data Types
  3. Literal
  4. Type Conversion, Casting and Type Promotion
  5. Operators
    1. Arithmetic Operators
    2. Bitwise Operators
    3. Relational Operators
    4. Logical Operators
    5. Unary Operators
    6. Assignment Operators
  6. Scanner and Print
  7. Arrays
    1. Array
    2. Multidimensional Array
    3. Copy Array
  8. Flow Control
    1. If Statement
      1. If and Else
      2. Ternary Operator
    2. Switch
    3. Loops
      1. Do and While
      2. For
      3. For Each
  9. Date and Time
  10. keywords
    1. Final
    2. Break
    3. Continue
    4. STR
  11. Expressions
    1. Lambda Expressions
    2. Regular Expressions
  12. Threads
  13. Math
  14. String Buffer
  15. String Builder
  16. Escape Sequences
  17. Text Color Strings
  18. Methods and Functions Types
  19. Comment Types
  20. Bit Manipulation
  21. Varargs
  1. Exceptions Handing

    1. Try, Catch, Finally, throw and throws
    2. Annotation
    3. Logging
    4. Assertion
  2. File Handling

    1. Input and output Streams (I/O Streams)
      1. Input and Output
      2. (Input / Output) Stream
      3. File (Input / Output) Stream
      4. Byte Array (Input / Output) Stream
      5. Object (Input / Output) Stream
      6. Buffered (Input / Output) Stream
      7. Print Stream
    2. Reader and Writer
      1. (Reader / Writer)
      2. (Input / Output) Stream (Reader / Writer)
      3. File (Reader / Writer)
      4. Buffered (Reader / Writer)
      5. String (Reader / Writer)
      6. Print Writer
    3. File
    4. Keywords
      1. Transient
  1. Class and Object
  2. Overloading Method
  3. Constructor
  4. Getter and Setter
  5. Recursion
  6. InstanceOf
  7. Inheritance
  8. Array of Object
  9. Abstraction
  10. Polymorphism
  11. Encapsulation
  12. Data Hiding
  13. Interface
  14. Nested and Inner Class
  15. Anonymous Class
  16. Enum
  17. Enum Constructor
  18. Reflection
  19. Keywords
    1. Abstract, Override and Super
    2. Static
    3. Volatile
  20. Generic Class
  21. Wrapper Classes
  22. Association
  23. Record Class
  24. Sealed Class And Interface
  25. Local Class
  26. Anonymous Inner Class
  1. JUnit 5
    1. Test
    2. (Before / After) Each
    3. (Before / After) All
    4. Parameterized Test
    5. CSV Source
  2. Testing
    1. Test
    2. Ignore
  1. List
    1. List
    2. List with Others
  2. Array List
  3. Linked List
  4. Vector
  5. Stack
  6. Queue
  7. Priority Queue
  8. Deque
  9. Array Deque
  10. Blocking Queue with Others
  11. Array Blocking Queue
  12. Linked Blocking Queue
  13. Blocking Deque with Others
  14. Linked Blocking Deque
  15. Map with Others
  16. HashMap
  17. Linked Hash Map
  18. Weak Hash Map
  19. Enum Map
  20. Sorted Map with Others
  21. Navigable with Others
  22. TreeMap
  23. ConCurrent Map
  24. ConCurrent HashMap
  25. Set with Others
  26. HashSet
  27. Linked Hash Set
  28. EnumSet
  29. TreeSet
  30. SortedSet with Others
  31. Navigable with Others
  32. Iterator
  33. List Iterator
  34. Hash Table
  35. Dictionary
  36. Enumeration
  37. Array Deque
  1. Search
    1. Linear
    2. Binary
    3. Interpolation
    4. DFS (Depth First Search)
    5. BFS (Breadth First Search)
    6. Jump
    7. Exponential
    8. Ternary
    9. Saddle Back
  2. Sort
    1. Bubble
    2. Selection
    3. Insertion
    4. Quick
    5. Merge
    6. Counting
    7. Radix
    8. Bucket
    9. Heap
    10. Shell
    11. Bead
    12. Bogo
    13. Cocktail
    14. Comb
    15. Gnome
    16. Pancake
    17. Permutation
    18. Sleep
    19. Stooge
    20. Tim
  3. Greedy
    1. Ford Fulkerson
    2. Dijkstra
    3. Kruskal
    4. Prim
    5. Huffman
  4. Encryption & Decryption
    1. AES (Advanced Encryption Standard)
    2. RSA (Rivest-Shamir-Adleman)
    3. HSA-256 (Secure Hash Algorithms 256)
    4. MD5 (Message Digest 5)
  5. Dynamic Programming
    1. Kadane
  6. Other
    1. Boyer-Moore Voting
  1. Nodes
  2. LinkedList
    1. Singly Linked List
    2. Doubly Linked List
    3. Circular Linked List
  3. Dynamic Array
  4. Stack
  5. Queue
  6. Tree
    1. Binary Tree
    2. Binary Search Tree
    3. AVL Tree
    4. B Tree
    5. B+ Tree
    6. Red-Black Tree
    7. Trie (Prefix Tree)
    8. Quad Tree
  7. Graph
    1. Adjacency Matrix
    2. Adjacency List
    3. Strongly Connected Components
    4. Bellman Ford
  8. Heap
    1. Normal Heap
    2. Fibonacci Heap
  9. LRU Cache
  1. Json
    1. Gson
    2. Jackson
  2. JDBC (Java Database Connectivity)
    1. MySQL
    2. PostgreSQL
    3. SQLite
    4. HSQLDB
  1. URI (Uniform Resource Identifier)
  2. URL (Uniform Resource Locator) and URL Connection and HTTP (Hypertext Transfer Protocol) URL Connection and HTTPS (Hypertext Transfer Protocol Secure) URL Connection
  3. Protocol Tester
  4. URL Encoding and URL Decoding
  5. I Net Address
  6. Network Interface
  7. Socket
  8. Protocols
    1. FTP (File Transfer Protocol)
      1. Simple
    2. TCP (Transmission Control Protocol)
      1. Simple
      2. Multithreading
    3. UDP (User Datagram Protocol)
      1. Simple
  9. RESTful API (Representational State Transfer Application Programming Interface)
  10. JWT (Json Web Token)
  • S = SRP (Single Responsibility Principle)
  • O = OCP (Open/Closed Principle)
  • L = LSP (Liskov Substitution Principle)
  • I = ISP (Interface Segregation Principle)
  • D = DIP (Dependency Inversion Principle)
  1. Creational Design Patterns
    1. Singleton Pattern
    2. Factory Method Pattern
    3. Abstract Factory Pattern
    4. Builder Pattern
    5. Prototype Pattern
  2. Structural Design Patterns
    1. Adapter Pattern
    2. Bridge Pattern
    3. Composite Pattern
    4. Decorator Pattern
    5. Facade Pattern
    6. Proxy Pattern
    7. Flyweight Pattern
  3. Behavioral Design Patterns
    1. Observer Pattern
    2. Strategy Pattern
    3. State Pattern
    4. Command Pattern
    5. Chain of Responsibility Pattern
    6. Template Pattern
    7. Interpreter Pattern
    8. Visitor Pattern
    9. Mediator Pattern
    10. Memento Pattern
    11. Iterator Pattern
  4. Anti-Patterns
    1. Spaghetti Code Pattern
    2. Golden Hammer Pattern
    3. Boat Anchor Pattern
    4. Dead Code Pattern
    5. Mastermind Class and Mastermind Object Pattern
    6. Copy and Paste Programming Pattern

2. Solve (1,750 Problems, 4 Mini Projects)

  • Solve problems and mini projects.
  • Name Problems / Mini Projects
    W3Schools 17 Problems
    W3Resources 1,059 Problems
    Codeforces 274 Problems
    CoderHub 158 Problems
    Satr 4 Mini Projects
    LeetCode 174 Problems
    HackerRank 64 Problems

    Notes

    • There are some Problems where the requirements and names have been changed without changing the important programming terms .

    • What does Mean (πŸŸ₯ & 🟩) ?
      • πŸŸ₯: Not Complete
      • 🟩: Complete

    1. W3Schools (17 Problems) 🟩

    1. How to (17 Problems)

    2. W3Resource (1,059 Problems) 🟩

    1. Java Exercises (1,059 Problems)
      1. Basics (272 Problems)
        1. Part 1 (150 Problems)
        2. Part 2 (99 Problems)
        3. Methods (23 Problems)
      2. Data Types (20 Problems)
        1. Data Types (15 Problems)
        2. Enum Types (5 Problems)
      3. Flow Control (47 Problems)
        1. Conditional Statement (32 Problems)
        2. Recursive Method (15 Problems)
      4. Math and Numbers (58 Problems)
        1. Math (29 Problems)
        2. Numbers (29 Problems)
      5. Object-Oriented Programming (117 Problems)
        1. Constructors (10 Problems)
        2. Static Members (8 Problems)
        3. Nested Classes (10 Problems)
        4. Inheritance (10 Problems)
        5. Abstract Classes (12 Problems)
        6. Interface (11 Problems)
        7. Encapsulation (14 Problems)
        8. Polymorphism (12 Problems)
        9. Object-Oriented Programming (30 Problems)
      6. Exception Handling (7 Problems)
        1. Handling and Managing (7 Problems)
      7. Functional Programming (33 Problems)
        1. Lambda Expression (25 Problems)
        2. Streams (8 Problems)
      8. Multithreading (22 Problems)
        1. Thread (7 Problems)
        2. Multithreading (15 Problems)
      9. Data Structures (234 Problems)
        1. Array (79 Problems)
        2. Stack (29 Problems)
        3. Collection (126 Problems)
          1. ArrayList (22 Problems)
          2. LinkedList (26 Problems)
          3. HashSet (12 Problems)
          4. TreeSet (16 Problems)
          5. PriorityQueue (12 Problems)
          6. HashMap (12 Problems)
          7. TreeMap (26 Problems)
      10. String and Input and Output (130 Problems)
        1. String (112 Problems)
        2. Input and Output (18 Problems)
      11. Date and Time (46 Problems)
        1. Date and Time (46 Problems)
      12. Advanced Concepts (17 Problems)
        1. Generic Methods (7 Problems)
        2. Unit Test (10 Problems)
      13. Algorithms (26 Problems)
        1. Search (7 Problems)
        2. Sort (19 Problems)
      14. Regular Expression (30 Problems)
        1. Regular Expression (30 Problems)

    3. Codeforces (274 Problems) πŸŸ₯ (@M3MD69)

    1. Assiut Sheets (248 Problems)
      1. Sheet 1 "Data Types - Conditions" (26 Problems)
      2. Contest 1 (9 Problems)
      3. Sheet 2 "Loops" (26 Problems)
      4. Contest 2 (8 Problems)
      5. Sheet 3 "Arrays" (26 Problems)
      6. Contest 3.1 (7 Problems)
      7. Sheet 4 "Strings" (26 Problems)
        • Errors:
          • O. Sorting String: Error occurred during initialization of VM, Initial heap size set to a larger value than the maximum heap size
      8. Sheet 5 "Functions" (15 Problems)
      9. Sheet 6 "Math - Geometry" (26 Problems)
      10. Sheet 7 "Recursion" (26 Problems)
      11. Sheet 8 "Easy" (16 Problems)
      12. Sheet 9 "Medium" (17 Problems)
      13. Sheet 10 "Hard" (18 Problems)
    2. Problem Set (26 Problems)
      1. MAIN (26 Problems)
      2. ACMSGURU (0 Problems)

    4. Satr (4 Mini Projects) 🟩 (@M4MD24)

    1. Basics (1 Mini Project)
    2. Java 101 (1 Mini Project)
    3. Java 102 (1 Mini Project)
    4. Java 103 (1 Mini Project)

    5. CoderHub (158 Problems, (82 Easy, 57 Medium, 19 Hard)) 🟩 (@M4MD24)

    1. Challenges (150 Problems)
      1. Easy (79 Problems)
      2. Medium (53 Problems)
      3. Hard (18 Problems)
    2. Competitions (8 Problems)
      1. Homeland Coder Competition 94 (2 Problems)
        1. Easy (2 Problems)
      2. CoderHub Hat 24 Third Day (3 Problems)
        1. Easy (1 Problem)
        2. Medium (1 Problem)
        3. Hard (1 Problem)
      3. Leap 25 / Day 1 General Trip (1 Problem)
        1. Medium (1 Problem)
      4. Leap 25 / Day 2 General Trip (1 Problem)
        1. Medium (1 Problem)
      5. Leap 25 / Day 3 General Trip (1 Problem)
        1. Medium (1 Problem)

    6. LeetCode (174 Problems, (48 Easy, 107 Medium, 19 Hard)) πŸŸ₯ (@M4MD24)

    1. Problem Set (174 Problems)
      1. Easy (48 Problems)
      2. Medium (107 Problems)
      3. Hard (19 Problems)

    7. HackerRank (64 Problems) πŸŸ₯ (@M4MD24)

    1. Java (64 Problems)
    2. Mathematics (0 Problems)
    3. Regex (0 Problems)
    4. Algorithms (0 Problems)
    5. Data Structures (0 Problems)

    Resources

    Learning

    • Note: After learning from the sources, what was explained in the project is explained in my ways not copied mostly.

    Websites

    Books

    Solving

    Websites

    About

    No description, website, or topics provided.

    Resources

    Security policy

    Stars

    Watchers

    Forks

    Contributors 2

    •  
    •  

    Languages