--- id: java-nested-if title: "Java Nested If" category: "Programming_Language" status: "draft" verification_status: "conceptual" canonical_id: "" aliases: ["자바 중첩 조건문"] duplicate_of: "" source_trust_level: "B" confidence_score: 0.87 created_at: 2026-07-04 updated_at: 2026-07-04 review_reason: "" merge_history: [] tags: ["java", "programming", "w3schools", "conditions", "nested-if"] raw_sources: ["https://www.w3schools.com/java/java_conditions_nested.asp"] applied_in: [] github_commit: "" --- # [[Java Nested If]] ## 🎯 한 줄 통찰 (One-line insight) A nested if only evaluates its inner condition once the outer condition is already true — this makes it functionally different from `&&` combined into one condition, since it lets each level print/branch independently (e.g., "old enough to vote" prints regardless of citizenship, but the vote permission itself depends on both). [S1] ## 🧠 핵심 개념 (Core concepts) - **Nested if** — placing an if statement inside another if. [S1] - **Purpose** — check a second condition only when the first is already true. [S1] - **Depth caution** — the source explicitly warns against nesting too deep, as it can hurt readability. [S1] - **Combines with else/else if** — nested if is often paired with else at each level for full decision trees. [S1] ## 📖 세부 내용 (Details) - Basic nesting: `int x = 15; int y = 25; if (x > 10) { System.out.println("x is greater than 10"); if (y > 20) { System.out.println("y is also greater than 20"); } }`. [S1] - Voting + citizenship real-life example: `int age = 20; boolean isCitizen = true; if (age >= 18) { System.out.println("Old enough to vote."); if (isCitizen) { System.out.println("And you are a citizen, so you can vote!"); } else { System.out.println("But you must be a citizen to vote."); } } else { System.out.println("Not old enough to vote."); }`. [S1] ## ⚖️ 모순 및 업데이트 (Contradictions & updates) 소스에서 모순되는 정보는 발견되지 않음. ## 🛠️ 적용 사례 (Applied in summary) 현재 발견된 실제 적용 사례가 없습니다 — 서로 의존적인 여러 조건(나이+시민권 등)을 검사할 때 표준적으로 쓰인다. [S1] ## 💻 코드 패턴 (Code patterns) Nested if with independent inner else (Java): ```java int age = 20; boolean isCitizen = true; if (age >= 18) { System.out.println("Old enough to vote."); if (isCitizen) { System.out.println("And you are a citizen, so you can vote!"); } else { System.out.println("But you must be a citizen to vote."); } } else { System.out.println("Not old enough to vote."); } ``` ## ✅ 검증 상태 및 신뢰도 - **상태:** draft - **검증 단계:** conceptual - **출처 신뢰도:** B (W3Schools — widely used educational reference, not a primary standards body) - **신뢰 점수:** 0.87 - **중복 검사 결과:** 신규 생성 (New discovery) ## 🔗 지식 그래프 (Knowledge Graph) - **상위/루트:** [[Java Tutorial]] - **관련 개념:** [[Java If Else]], [[Java Conditions Logical Operators]], [[Java Conditions Real Life]] - **참조 맥락:** 서로 의존적인 다중 조건 판단 — 논리 연산자(&&)와 함께 자주 결합됨. ## 📚 출처 (Sources) - [S1] W3Schools — Java Nested If — https://www.w3schools.com/java/java_conditions_nested.asp ## 📝 변경 이력 (Change history) - 2026-07-04: Initial draft synthesized from the W3Schools "Java Nested If" page (Astra wiki-curation, P-Reinforce v3.1 format).