isEmpty()
public class Test {
public static void main(String[] args) {
String str = null;
if(str == null || str.isEmpty()) {
// null != isEmpty
// 만약 str.isEmpty()||str == null 일경우 오류
// str = "" 상태라면 가능
System.out.println("빈문자열");
}
}
}
메모리 영역
- 메소드 영역[클래스 영역] (클래스 별로, 정적필드 상수 생성자 메소드 코드 등을 분류해 저장)
- 힙영역 (객체(String)와 배열이 생성되는 영역)
- JVM스택영역 (변수로 선언한 것 저장)
public void method1() {
String a1 = "자바";
String a2 = "자바";
String a3 = "오라클";
String a4 = new String("오라클");
String a5 = new String("오라클");
// 스택 비교 (주소값을 비교)
System.out.println(a1==a2);
System.out.println(a2==a3);
System.out.println(a3==a4);
System.out.println(a4==a5);
System.out.println(a4.equals(a5));
}
true
false
false
false
true
참조타입
- 배열타입
- 열거타입
- 클래스
- 인터페이스
배열
변수 여러개를 한번에 사용한다
타입명[ ] name = new 타입명[길이];
ex. int [ ] arr = new int [ 5 ];
public void method1() {
//int 변수 5개 선언 및 저장 하기
int[] arr = new int[5];
arr[0] = 80;
arr[1] = 81;
arr[2] = 82;
arr[3] = 83;
arr[4] = 84;
int sum = 0;
System.out.println(arr); //주소값
for(int i=0; i<arr.length;i++) {
System.out.println(arr[i]);
sum+=arr[i];
}
System.out.println(sum);
}
버블정렬 (정렬 알고리즘)
public void method7() {
// 버블 정렬
// 원본자료가 n개일 때 n-1차 운행한다
// 각 회차에서 인접한 두 값을 비교하여 오름차순인 경우
// 작은값을 앞에 위치시킴
int[] score = {75, 80, 62, 90, 85};
for(int i =0; i<score.length-1;i++) {
for(int j=0; j<score.length-1;j++) {
if(score[j]>score[j+1]) { //부등호를 바꾸면 ASC DESC
int temp = score[j];
score[j]= score[j+1];
score[j+1]=temp;
}
}
}
for(int i=0;i<score.length;i++) {
System.out.print(score[i]+"\t");
}
}
'JAVA > JAVA BASIC' 카테고리의 다른 글
[JAVA] 클래스, 함수 (0) | 2024.03.18 |
---|---|
[JAVA] 초기값, 배열복사, 다차원배열 (0) | 2024.03.14 |
[JAVA] 반복문 while 등 (0) | 2024.03.12 |
[JAVA] 반복문 - for문 (0) | 2024.03.11 |
[JAVA] 조건문 (0) | 2024.03.08 |