본문 바로가기

Java

Day4 - String 클래스! 타입x

2. String클래스
자바의 문자열을 저장하고 다룰 수 있는 클래스
👍String 클래스는 불변객체!
객체만들면 새로운 저장공간으로 만듬
String st3 ="apple"; ->값을 바꿀때마다 전에 만들어둔 공간이 계속쌓인다. 그리고 새로운 객체를 계속만들어준다.
for문안에서 사용할 때 조심


    char[] ch ={'안','녕','하','세','요'}; --> 불편해결 String
    String str = new String("안녕하세요");
    String str = "안녕하세요";

예제

 

public class String1 {
    public static void main(String[] args) {
        String str1 = new String("apple");
        String str2 = new String("apple");
        String str3 = "apple";
        String str4 = "apple";
//메모리비교
        System.out.println(str1 == str2);
        System.out.println(str3 == str4);
//값을 비교
        System.out.print(str1.equals(str2));
        System.out.print(str3.equals(str4));



    }
}

 

import java.util.Scanner;

public class String2 {
    public static void main(String[] args) {
        String str1 = new String("Java");
        String str2 = new String("Programing");

        System.out.print(str1);
        System.out.print(str2);

//        Scanner;    //art enter 단축키

        //concat 메소드 concat 문자열
//        concat(); 문자열과 문자열을 연결
        str1.concat(str2);
        System.out.println(str1.concat(str2));      //1
        String temp =str1.concat(str2);             //2
        System.out.println(temp);
        System.out.println(str1+str2);              //3

//    indexOf(): 원하는 문자열을 찾아 해당하는 문자열의 index를 반환
        //타입별로 다르게
        System.out.println(10); //int
        System.out.println(str1);//String
        System.out.println(false);//boolean
        System.out.println(str2.indexOf("P"));
        System.out.println(str2.indexOf("p"));
        System.out.println(str2.indexOf("gra"));//Programming 첫글자 0123 g 3번째
        System.out.println(str2.indexOf("r",3)); //뒤에 3번째 번호부터 찾기

        //trim(): 문자열의 앞뒤 공백을 제거
        String str3 = new String("     자바     ");
        System.out.println("✅"+ str3 +"✅");
        System.out.println("✅"+ str3.trim() +"✅");  //trim 공백을 앞뒤로 제거
                                                        //equals비교할때 공백제거
        //toLowerCase(): 소문자로 변환, toUpperCase(): 대문자로 변환
        System.out.println(str2.toLowerCase());
        System.out.println(str2.toUpperCase());

//        if(key.str2.toLowerCase(); =="q");

            //length() 문자열의 길이를 변환
        System.out.println(str2.length());  //11

        //substring():원하는 문자를 추출
        //Progarmming
        System.out.println(str2.substring(3));   //() 문자열index3부터 끝까지 추출
        temp = str2.substring(3);
        System.out.println(temp);
    //매개변수2개                                     //0123
        System.out.println(str2.substring(3,7));    //Progamming    문자열 index3부터 7전까지 추출
        //문자열을 숫자로 변환

        String str4 ="100";
        int i =200;
        System.out.println(str4+i);     //계산x 연산
        System.out.println(Integer.parseInt(str4) +i);



        // 특정 값을 기준으로 문자열을 자르고 배열에 저장
        String str5 ="김사과😎반하나😎오렌지😎이메론";
        String[] arr = str5.split("😎");
        for(String s: arr){
            System.out.print(s + " ");

        }
    }
}

 

import java.util.Scanner;

public class String3 {
    public static void main(String[] args) {
        Scanner sc =new Scanner(System.in);
        System.out.println("원하는 숫자를 입력하세요");
        String num =sc.next();                                  //1.문자열받기
        int result =0;
        for(int i=0; i<num.length(); i++){                          //반복
            System.out.print(num.substring(i, i+1)+" ");                //1 2 3 4 5
        result +=Integer.parseInt(num.substring(i,i+1));                //문자열 변환
        }
        System.out.println();
        System.out.println("결과: "+result);

    }
}

'Java' 카테고리의 다른 글

Day5 - 01(Method)  (0) 2023.01.29
Day5  (0) 2023.01.29
Day4 - 이중배열 예제  (0) 2023.01.27
Day4 - 배열 + 배열  (0) 2023.01.27
Day3 - 03  (0) 2023.01.27