[백엔드] JAVA #3

현지·2021년 12월 9일
0

Wrapper

  • 일반 자료형(char, int, double)을 사용하기 편리하도록 구현해 놓은 것
int i = 123;
Integer iobj = 123;
//Integer iobj = new Integer(123);	//=> 이렇게 잘 사용 안 함
일반 자료형Wrapper Class(object)
booleanBoolean
byteByte
shortShort
intInterger✔️
longLong
floatFloat
doubleDouble✔️
charCharacter
char[]String✔️

✔️ 가 가장 많이 사용되고, 나머지는 잘 사용하지 않음

✅ 숫자 -> 문자열

Integer objNumber = 123;
String str = objNumber.toString() + 1;
System.out.println(str);	//문자열이므로 124가 아니라 1231이 나옴

숫자를 문자로 변경하는 법은 더 간단한 방법이 있어서 위처럼 잘 안 씀

int num = 123;
String str1 = num + "";		//간단해져서 위처럼 길게 사용하지 않음

double dnum = 123.456;
String str2 = dnum + "";

✅ 문자열 -> 숫자

  • parseInt를 이용함
String str3 = "12345";
int n = Integer.parseInt(str3);
System.out.println(n+1);
	
String str4 = "1234.5678";
double d = Double.parseDouble(str4);
System.out.println(d);

✅ 진수 변환

  • 10진수 -> 2진수
int num10 = 16;
String num2 = Integer.toBinaryString(num10);
  • 2진수 -> 10진수
String number2 = "10101100";
int number10 = Integer.parseInt(number2, 2);
  • 10진수 -> 8진수
int n10 = 237;
String n8 = Integer.toOctalString(n10);
  • 8진수 -> 10진수
n10 = Integer.parseInt(n8, 8);
  • 10진수 -> 16진수
int nn10 = 497;
String nn16 = Integer.toHexString(nn10);
  • 16진수 -> 10진수
nn10 = Integer.parseInt(nn16, 16);

내장함수

✔️ equals
문자열 비교

String str4 = "world";
String str5 = "worl";
str5 += "d";
if(str4.equals(str5)) {
	System.out.println("같은 문자열 입니다.");
}

✔️ indexOf, lastIndexOf
문자의 위치 찾기 => 앞에서부터, 뒤에서 부터

String str6 = "hello World";
int index = str6.indexOf("l");
System.out.println(index);	//2
	
int lastIdx = str6.lastIndexOf("l");
System.out.println(lastIdx);	//9

✔️ length
문자열의 길이 반환

int len = str6.length();
System.out.println(len);

✔️ replace
문자 대체

String str7 = "A*B*C*D";
String repStr = str7.replace("*", "");
System.out.println(repStr);

✔️ split
문자열 자르기 => 배열로 받아야 한다.

String str8 = "홍길동-24-2001/05/14-서울시";
String[] spStr = str8.split("-");
System.out.println(Arrays.toString(spStr));
//출력: [홍길동, 24, 2001/05/14, 서울시]

✔️ substring
문자열을 범위로 자르기

String str9 = "안녕 반가워요 건강해요";
String substr = str9.substring(3,7);
System.out.println(substr);
//출력: 반가워요

✔️ toUpperCase
영어 모두 대문자로 변경

String str10 = "abcDEF";
String upStr = str10.toUpperCase();
System.out.println(upStr);
//출력: ABCDEF

✔️ toLowerCase
영어 모두 소문자로 변경

String lowStr = str10.toLowerCase();
System.out.println(lowStr);
//출력: abcdef

✔️ trim
문자열의 앞, 뒤 공백을 제거

String str11 = "    java java   java        ";
String tStr = str11.trim();
System.out.println(tStr);
//출력: java java   java

✔️ charAt
index값을 넣으면 문자 출력

String str12 = "가나다라마";
char chAt = str12.charAt(2);
System.out.println(chAt);
//출력: 다

✔️ contains
문자 포함 여부 검사 => true, false값으로 반환

String str13 = "서울시 마포구 서교동";
boolean chk = str13.contains("마포");
System.out.println(chk);
//출력: true

0개의 댓글