JAVA 문자열,String, boolean

MINJU KIM·2023년 10월 29일

문자열

문자 자료형

  • Char : 문자 character 자료형
  • 단따옴표를 사용하여 1개의 문자를 표현하고 빈 문자는 불가능하다.

String 문자형 자료형

  • 0~ 다수의 문자들로 구성
  • 쌍따옴표로 둘러싼다.
  • 이제까지 배운 자료형들과 달리 참조 자료형. 그러나 특별히 원시값과 유사하게 사용될 수 있다.
        String s = "I like Java and Python and C.";
        System.out.println(s);

        //문자열의 길이
        System.out.println(s.length());//29

        //대소문자 변환
        System.out.println(s.toUpperCase()); //I LIKE JAVA AND PYTHON AND C.
        System.out.println(s.toLowerCase());

        //포함 관계
        System.out.println(s.contains("Java")); //포함된다면 true
        System.out.println(s.contains("#c")); //포함되지 않는다면 false
        System.out.println(s.indexOf("Java")); //위치 정보 : 7
        System.out.println(s.indexOf("#C")); //포함되지않는다면 -1
        System.out.println(s.indexOf("and")); //처음 일치하는 위치 정보(12)
        System.out.println(s.lastIndexOf("and"); // lastIndexof 마지막에 일치하는 위치 정보(23)

        System.out.println(s.startsWith("I like")); //이 문자열로 시작하면 true, 아니면 false
        System.out.println(s.endsWith("."));//이 문자열로 끝나면 ture, 아니면 false
        String s = "I like Java and Python and C.";

        //문자열 변환
        System.out.println(s.replace(" and", ","));//"and"를 ","로 변환
        System.out.println(s.substring(7)); //인덱스 기준 7부터 시작(이전 내용은 삭제)
        //주의 : s 변수에 변환 결과가 반영되는 것은 아니다.
        // s = s.substring(7) ; 이렇게 해야 변환결과가 s 변수에 반영된다.
        System.out.println(s.substring(s.indexOf("Java")));
        //"Java"가 시작하는 위치부터 "."이 시작하는 위치 바로 앞까지
        System.out.println(s.substring(s.indexOf("Java"), s.indexOf(".")));//시작 위치부터 끝 위치 직전

문자열을 비교하는 방법 "==" 과 equlas()의 차이 ****

  • 문자열 비교하는 방법
  1. equals()로 문자열 비교
  • 매개변수로 전달된 문자열을 비교하며 boolean값을 반환한다.
  1. compareTo() 두개의 문자열 비교
  • 두 문자열이 단순히 같은지 아닌지를 알려줄 뿐만 아니라 어떤 것이 사전적인 순서로 더 앞, 뒤에 존재하는 지를 알려준다.
  • 반환값이 음수 : compareTo를 호출하는 문자열이 더 앞에 있다는 뜻.
  • 반환값이 0 : 두 문자열이 같다.
  • 반환값이 양수 : 매개변수로 입력되는 문자열이 더 앞에 있다는 뜻.
package sec03.chap01;

public class EqualsTest{
    public static void main(String[] args){
        String a = "JAVA";
        String b = "JAVA";
        String c = new String("JAVA");
        String d = new String("JAVA");

        System.out.println( a == b );  // true
        System.out.println( b == c );  // false
        System.out.println( c == d );  // false

        System.out.println( a.equals(b) );  // true
        System.out.println( b.equals(c) );  // true
        System.out.println( c.equals(d) );  // true
    }
}

boolean

  • true/ false 둘 중 한 값을 가진다.
  • 1byte(8bit) 공간 차지.
  • 주로 프로그램의 흐름을 제어하는 변수로 사용되는 데이터 타입.
  • 리터럴보다는 반환값으로 많이 사용됨.
public class T1 {
        public static void main(String[] args) {

               //변수 선언 및 초기화
               boolean a=true;
               boolean b=false;
               //boolean은 참이나 거짓을 나타내는 값으로 1바이트의 크기를 가집니다.    

              

               System.out.println(a);
               System.out.println(b);
               //전 강의에서는 ""안에 글자가 들어간 string의 데이터 타입이 들어간 형태이지만,

               //지금은 변수형태이므로 ""가 들어가지 않고 바로 a라는 형태로 들어갑니다.

               //아래는 비교연산자로 결과값이 true인지 false인지 boolean 형태의 값이 출력됩니다.

               System.out.println(3<4);
               System.out.println(3==4);
               System.out.println(3<2);
               System.out.println(3<1);

               // 출력값을 System.out.println을 통하여 console창에 결과값 출력
/*true
false
true
false
false
false*/
        }

} 

0개의 댓글