1. JAVA에서의 변수명 작성
1. 변수명 작성 기본 규칙
- 소문자로 시작하며, 각 단어의 첫 글자는 대문자로 작성 (Camel Case)
- ex) String myName;, int userAge;
- 의미가 명확한 이름 사용
- ex)
- ❌ int a;
- ✅ int customerCount;
- ex)
- 특수문자 및 공백 사용 금지
- 변수명에는 알파벳(a-z, A-Z), 숫자(0-9), 그리고 밑줄(_)만 사용
- 변수명은 숫자로 시작할 수 없음
- ex)
- ❌ 2ndCustomer
- ✅ secondCustomer
- 예약어 사용 금지
- Java의 키워드(class, static, public 등)는 변수명으로 사용할 수 없음
2. 변수명 작성 시 권장 스타일
- Boolean 변수의 접두어는 is를 사용
- ex)
- boolean isAvailable;
- boolean isLoggedIn;
- ex)
- 계산된 값을 저장하는 변수
- 변수 이름에 Average, Max, Min, Total 등을 표현할경우 끝에 작성
- ex)
- double revenueAverage;
- int expenseTotal;
- float temperatureMax;
- Num 대신 더 구체적인 단어 사용
- ex)
- ❌ numCustomer → ✅ customerCount
- ❌ customerNum → ✅ customerIndex
- ex)
- 약어 사용은 피하고, 필요할 경우 명확히 정의
- ex)
- ❌ cnt → ✅ count
- ❌ temp → ✅ temperature
- ex)
3. 추가적인 변수명 작성 팁
- 변수의 타입을 포함하지 않기
- 변수명에 타입을 명시하지 않음 (ex: int age는 age로 충분)
- 콘텍스트 기반 변수명
- 동일한 클래스나 메서드에서 사용하는 변수는 그 콘텍스트를 반영
- ex)
- 고객 관련 로직: customerName, customerAge
- 제품 관련 로직: productName, productPrice
- 컬렉션 변수명
- List나 Map 같은 컬렉션 타입 변수는 복수형을 사용하여 명확히 표현
- ex)
- List<String> customers;
- Map<Integer, String> customerById;
- 임시 변수 사용 주의
- 반복문에서 사용하는 변수(i, j) 외에는 의미 없는 임시 변수명을 지양
- ex)
- ❌ String temp; → ✅ String userInput;
4. 좋은 변수명을 위한 체크리스트
- 가독성: 이름만 보고도 변수가 무엇을 하는지 알 수 있는가?
- 일관성: 프로젝트 내에서 동일한 스타일을 유지했는가?
- 의미 명확성: 코드의 의도를 명확히 드러내는 이름을 사용했는가?
- 축약어 최소화: 불필요한 약어는 사용하지 않았는가?
2. 문자열
1. 문자열의 길이와 대소문자 변환
1-1. 문자열 길이 확인
- length(): 문자열의 길이를 반환
String text = "Hello";
int length = text.length(); // 결과: 5
1-2. 대문자 변환
- toUpperCase(): 모든 문자를 대문자로 변환
String text = "hello";
String upperText = text.toUpperCase(); // 결과: "HELLO"
1-3. 소문자 변환
- toLowerCase(): 모든 문자를 소문자로 변환
String text = "HELLO";
String lowerText = text.toLowerCase(); // 결과: "hello"
2. 문자열 검색
2-1. 특정 문자열 포함 여부 확인
- contains(): 특정 문자열이 포함되어 있는지 확인합니다.
String text = "Java programming";
boolean hasJava = text.contains("Java"); // 결과: true
2-2. 특정 문자 위치 찾기
- indexOf(): 처음으로 나타나는 위치를 반환
- lastIndexOf(): 마지막으로 나타나는 위치를 반환
String text = "Java programming";
int index = text.indexOf("p"); // 결과: 5
String text = "Java programming";
int lastIndex = text.lastIndexOf("a"); // 결과: 10
3. 문자열 시작/끝 확인 및 교체
3-1. 시작 문자열 확인
- startsWith(): 지정한 문자열로 시작하는지 확인
String text = "Java programming";
boolean startsWithJava = text.startsWith("Java"); // 결과: true
3-2. 끝나는 문자열 확인
- endsWith(): 지정한 문자열로 끝나는지 확인
String text = "Java programming";
boolean endsWithProgramming = text.endsWith("programming"); // 결과: true
3-3. 특정 문자열 교체
- replace(): 특정 문자열을 다른 문자열로 교체
String text = "Java programming";
String replacedText = text.replace("Java", "Python"); // 결과: "Python programming"
4. 문자열 자르기 및 연결
4-1. 문자열 일부 추출
- substring(): 특정 부분을 추출
String text = "Java programming";
String subText = text.substring(0, 4); // 결과: "Java"
4-2. 공백 제거
- trim(): 문자열 앞뒤의 공백을 제거
String text = " Java ";
String trimmedText = text.trim(); // 결과: "Java"
4-3. 문자열 연결
- concat(): 문자열을 이어붙임
String text1 = "Hello";
String text2 = "World";
String combined = text1.concat(" ").concat(text2); // 결과: "Hello World"
5. 문자열 비교
5-1. 비교 연산자 ==
- 객체 참조 비교를 수행, 문자열의 값이 아닌 메모리 주소를 비교
String text1 = "Java";
String text2 = new String("Java");
boolean isEqual = (text1 == text2); // 결과: false
5-2. 값 비교 메서드 equals()
- 문자열의 값을 비교
String text1 = "Java";
String text2 = new String("Java");
boolean isEqual = text1.equals(text2); // 결과: true