Java Notes
HubWhat Is Java?History of JavaFeatures of JavaJava EditionsJDK, JRE, and JVMYour First Java ProgramJava Program StructureJava Compilation ProcessIdentifiers in JavaKeywords in JavaVariables in JavaData Types in JavaType Casting in JavaOperators in JavaInput and Output in JavaComments in JavaIf-Else Statements in JavaSwitch-Case in JavaFor Loop in JavaWhile Loop in JavaDo-While Loop in JavaNested Loops in Javabreak and continue in JavaArray IntroductionOne Dimensional ArrayMulti Dimensional ArrayJagged Array in JavaArray OperationsArray Programs — FundamentalsArray Interview QuestionsString Class in JavaImmutable Strings in JavaString MethodsStringBuilder in JavaStringBuffer in JavaString Programs — FundamentalsString Interview QuestionsOOPs IntroductionClass and Object in JavaConstructor in Javathis Keyword in Javastatic Keyword in JavaEncapsulation in JavaInheritance in Javasuper Keyword in JavaPolymorphism in JavaMethod Overloading in JavaMethod Overriding in JavaAbstraction in JavaAbstract Class in JavaInterface in JavaObject Class in JavaWrapper Class in JavaInner Class in JavaAnonymous Class in JavaObject Cloning in JavaJava Collections Framework OverviewGenerics in JavaArrayList in JavaLinkedList in JavaVector in JavaStack in JavaHashSet in JavaLinkedHashSet in JavaTreeSet in JavaPriorityQueue in JavaArrayDeque in JavaDeque Interface in JavaHashMap in JavaLinkedHashMap in JavaTreeMap in JavaHashtable in JavaIterator in JavaComparable vs Comparator in JavaJava Collections Practice ProgramsException Handling IntroductionException Hierarchy in JavaTry-Catch Block in JavaFinally Block in Javathrow and throws Keywords in JavaCustom Exceptions in JavaException Handling Best PracticesFile Class in JavaByte Streams in JavaCharacter Streams in JavaBuffered Streams in JavaSerialization in JavaDeserialization in JavaJava NIO PackageLambda Expression in Java 8Functional Interface in Java 8Method Reference in Java 8Default and Static Methods in InterfacesStream API in Java 8Optional Class in Java 8Date and Time API in Java 8Thread IntroductionThread Life Cycle in JavaThread Class in JavaRunnable Interface in JavaCreating Threads in JavaThread Priority in JavaDaemon Threads in JavaSynchronization in JavaInter-Thread Communication in JavaExecutor Framework in JavaMultithreading Programs in JavaJDBC IntroductionJDBC ArchitectureMySQL Connection with JDBCStatement Interface in JDBCPreparedStatement in JDBCResultSet in JDBCCallableStatement in JDBCTransaction Management in JDBCBatch Processing in JDBCJDBC ProjectsServlet IntroductionGenericServletHttpServletServlet Life CycleRequest and Response ObjectsCookies in ServletsSession TrackingJSP IntroductionJSP Tags and JSTLExpression Language (EL)MVC ArchitectureSpring Framework IntroductionSpring Core ContainerSpring BeansDependency InjectionSpring Boot IntroductionREST API with Spring BootValidation in Spring BootCRUD ApplicationSpring Data JPAException Handling in Spring BootSpring SecurityJWT Authentication — Java ProgrammingConfig ServerEureka Server - Service DiscoveryAPI GatewayDocker DeploymentTime ComplexityRecursion in JavaLinked List in JavaStack in Java — DSA in JavaQueue in JavaHashing in JavaSorting Algorithms in JavaSearching Algorithms in JavaTree Data Structure in JavaHeap (DSA)Graph Data Structure in JavaDynamic Programming in JavaSingleton Design PatternFactory Design PatternBuilder Design PatternAdapter Design PatternObserver Design PatternMVC Pattern — Java ProgrammingBasic Java ProgramsArray Programs — PracticeString Programs — PracticeOOP ProgramsCollection ProgramsMultithreading ProgramsJDBC ProgramsPlacement Coding QuestionsStudent Management System — Java ProgrammingEmployee Management SystemLibrary Management System — Java ProgrammingBanking System — Java ProgrammingChat ApplicationE-Commerce BackendSpring Boot Fullstack ProjectCore Java Interview QuestionsOOPs Interview QuestionsCollections Interview QuestionsMultithreading Interview QuestionsJDBC Interview QuestionsSpring Framework Interview QuestionsCoding Interview QuestionsJava Cheat SheetQuick Revision Notes — Java ProgrammingImportant Java ProgramsImportant Formulas & ConceptsJava Master Course - Learning Roadmap
Complete Java programming cheat sheet with syntax reference, common operations, built-in methods, and code snippets for quick lookup.
Data Types & Variables
java example
// Primitives
byte b = 127; // 1 byte (-128 to 127)
short s = 32000; // 2 bytes
int i = 2_147_483_647; // 4 bytes (use _ for readability)
long l = 9_223_372_036_854L; // 8 bytes (L suffix)
float f = 3.14f; // 4 bytes (f suffix)
double d = 3.14159265; // 8 bytes
char c = 'A'; // 2 bytes (Unicode)
boolean flag = true; // 1 bit
// Type casting
int x = (int) 3.14; // Narrowing (explicit)
double y = 5; // Widening (implicit)
// Constants
final double PI = 3.14159;Array Operations
Example
// Declaration & initialization
int[] arr = new int[5]; // [0, 0, 0, 0, 0]
int[] arr2 = {1, 2, 3, 4, 5};
int[][] matrix = {{1,2,3}, {4,5,6}};
// Operations
Arrays.sort(arr); // Sort ascending
Arrays.sort(arr, Collections.reverseOrder()); // Descending (Integer[])
Arrays.fill(arr, 0); // Fill with value
Arrays.copyOf(arr, newLength); // Copy
Arrays.copyOfRange(arr, from, to);
Arrays.equals(arr1, arr2); // Compare
Arrays.binarySearch(sortedArr, key); // Search (must be sorted)
Arrays.stream(arr).sum(); // Sum
Arrays.stream(arr).max().getAsInt(); // Max
Arrays.stream(arr).min().getAsInt(); // Min
Arrays.stream(arr).average().getAsDouble(); // Average
Arrays.toString(arr); // "[1, 2, 3, 4, 5]"
Collections Operations
java example
// List
List<String> list = new ArrayList<>(Arrays.asList("a", "b", "c"));
list.add("d"); // Add to end
list.add(0, "z"); // Add at index
list.get(0); // Get by index
list.set(0, "x"); // Replace
list.remove(0); // Remove by index
list.remove("a"); // Remove by value
list.contains("b"); // Check
list.indexOf("b"); // Find index
list.size(); // Count
list.isEmpty(); // Check empty
list.clear(); // Remove all
Collections.sort(list); // Sort
Collections.reverse(list); // Reverse
Collections.shuffle(list); // Randomize
Collections.frequency(list, "a"); // Count occurrences
// Map
Map<String, Integer> map = new HashMap<>();
map.put("a", 1);
map.get("a"); // 1
map.getOrDefault("z", 0); // 0 (if not found)
map.containsKey("a"); // true
map.containsValue(1); // true
map.remove("a");
map.size();
map.keySet(); // Set of keys
map.values(); // Collection of values
map.entrySet(); // Set of entries
map.putIfAbsent("b", 2); // Add only if key absent
map.forEach((k, v) -> System.out.println(k + "=" + v));
// Set
Set<Integer> set = new HashSet<>(Arrays.asList(1, 2, 3, 4));
set.add(5);
set.remove(1);
set.contains(3); // true
// Stream operations
list.stream()
.filter(s -> s.length() > 3)
.map(String::toUpperCase)
.sorted()
.distinct()
.limit(5)
.collect(Collectors.toList());Control Flow
Example
// If-else
if (x > 0) { } else if (x == 0) { } else { }
// Ternary
String result = (age >= 18) ? "Adult" : "Minor";
// Switch (Java 14+ enhanced)
String day = switch (dayNum) {
case 1 -> "Monday";
case 2 -> "Tuesday";
default -> "Unknown";
};
// Loops
for (int i = 0; i < n; i++) { }
for (String item : list) { } // Enhanced for
while (condition) { }
do { } while (condition);
// Loop control
break; // Exit loop
continue; // Skip to next iteration
return; // Exit method
Common Conversions
Example
// String ↔ Number
int n = Integer.parseInt("123");
double d = Double.parseDouble("3.14");
String s = String.valueOf(123);
String s2 = Integer.toString(123);
// String ↔ Char Array
char[] chars = str.toCharArray();
String str = new String(chars);
// Array ↔ List
List<Integer> list = Arrays.asList(1, 2, 3); // Fixed-size
List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3)); // Mutable
Integer[] arr = list.toArray(new Integer[0]);
// Collections ↔ Stream
List<String> list = stream.collect(Collectors.toList());
Set<String> set = stream.collect(Collectors.toSet());
Exception Handling
java example
try {
int result = 10 / 0;
} catch (ArithmeticException e) {
System.out.println("Error: " + e.getMessage());
} catch (Exception e) {
e.printStackTrace();
} finally {
System.out.println("Always runs");
}
// Try-with-resources (auto-close)
try (BufferedReader br = new BufferedReader(new FileReader("file.txt"))) {
String line = br.readLine();
}
// Custom exception
public class MyException extends RuntimeException {
public MyException(String message) { super(message); }
}File I/O
java example
// Read file
String content = Files.readString(Path.of("file.txt"));
List<String> lines = Files.readAllLines(Path.of("file.txt"));
// Write file
Files.writeString(Path.of("output.txt"), "Hello");
Files.write(Path.of("output.txt"), lines);
// BufferedReader
try (BufferedReader br = Files.newBufferedReader(Path.of("file.txt"))) {
br.lines().forEach(System.out::println);
}Lambda & Streams
java example
// Lambda syntax
(parameters) -> expression
(parameters) -> { statements; }
// Functional interfaces
Predicate<Integer> isEven = n -> n % 2 == 0;
Function<String, Integer> toLength = String::length;
Consumer<String> printer = System.out::println;
Supplier<Double> random = Math::random;
Comparator<String> byLength = Comparator.comparingInt(String::length);
// Stream pipeline
List<String> result = names.stream()
.filter(n -> n.startsWith("A")) // Filter
.map(String::toUpperCase) // Transform
.sorted() // Sort
.limit(5) // Take first 5
.collect(Collectors.toList()); // Collect
// Collectors
Collectors.toList()
Collectors.toSet()
Collectors.joining(", ")
Collectors.groupingBy(Student::getDepartment)
Collectors.counting()
Collectors.summarizingInt(Student::getMarks)Continue the lesson path
Study next in this module
01NotesQuick Revision Notes — Java ProgrammingConcise Java quick revision notes covering all major topics - OOP, Collections, Multithreading, JDBC, Spring Boot in table format for fast review before exams or interviews.02NotesImportant Java ProgramsCollection of most important Java programs frequently asked in exams and interviews - patterns, number programs, string programs, and array programs.03NotesImportant Formulas & ConceptsEssential Java formulas, time complexity reference, bit manipulation tricks, and mathematical concepts used in programming and DSA.04Collections FrameworkJava Collections Framework OverviewUnderstand the Java Collections Framework from scratch — what it solves, the four main types (List, Set, Map, Queue), how each works, when to use which, with full explanations and examples.