본문 바로가기

반응형

건승하고있어요/Java

(11)
[입출력]StringBuilder 클래스 StringBuilder 클래스 -문자열을 저장하는 String은 내부의 문자열을 수정할 수 없음-문자열을 결합하는 +연산자를 많이 사용하면 String객체의 수가 늘어나기 때문에 프로그램 성능을 느리게 하는 요인이 됨 요런 경우 우리가 활용할 수 있는 클래스 : StringBuffer / StringBuilder=>내부 버퍼(buffer:데이터를 임시로 저장하는 메모리)에 문자열을 저장해두고 그 안에서 추가, 수정, 삭제 작업을 할 수 있게 해줌 StringBuffer StringBuilder 멀티스레드 상황에서 사용할 수 있도록 동기화적용 단일 스레드 환경에서만 사용하도록 설계 따라서 StringBuilder를 위주로 공부를 해 봅시당. 스레드는 난 아직 잘 모르기 때무네무네무네무네 StringBui..
[입출력] StringTokenizer 클래스 / 자바 단어 자르기 StringTokenizer클래스:문자열이 한 종류의 구분자로 연결되어 있을 경우 문자열(토큰token)을 분리해내기 위한 클래스 StringTokenizer st = new StringTokenizer("문자열", "구분자");여기에서 구분자를 생략하면 공백(space)이 기본 구분자가 된다. StringToknizer 클래스 메소드 메소드설명 int countTokens() 꺼내지 않고 남아있는 토큰의 수 boolean hasMoreTokens() 남아있는 토큰이 있는지 여부 String nextToken() 토큰을 하나씩 꺼내옴 예시)String hola = "안녕,hi,hola,곤니찌와"; StringTokenizer st = new StringTokenizer(hola, ",");while(st..
for문/ 최대값 구하기, shift하기 알고리즘 문제를 풀면서 나의 부족한 지식을 깨닫고 강의를 듣습니당. 재밌네여.*최댓값 구하기: 사용자에게 n개의 숫자를 입력받아 가장 큰 수와 그 수들을 모두 더한 값을 구하라.가장 중요한 포인트는 sum이라는 변수를 먼저 선언해서 for문을 돌리며 계속 더해주는 것| 마찬가지로 max도 변수를 먼저 선언해서 if문으로 해당 숫자보다 max가 작은 경우 그 숫자를 max로 바꿔준당.다만 실수를 많이 하는 부분이 있는데, int형 초기화! int형 초기화를 보통은 0을 많이 넣는데, 이게 가끔 문제를 일으킬 수도 있는거라는거. 예를 들어서 요 코드의 경우 숫자를 입력받는데 만약 입력받은 숫자들이 모두 음수라면 max값은 입력받은 숫자에서 비교가 되지 않고 초기화값인 0이 최대값이 돼 버린다. 그렇기 때문에..

반응형