업다운 게임은 술자리에서도 많이 하는 게임중 하나이다. 소주병 뚜껑 안쪽에는 0~50 사이의 숫자가 양각으로 새겨져있는데 그 숫자를 정해진 횟수안에 맞추는 것이다. 그와 비슷한 게임을 Java를 통해 구현해 보겠다. 게임규칙 프로그램이 실행되면 컴퓨터는 난수를 통해 1~100사이의 정수 하나를 생성한다. 사용자가 숫자를 입력하면 높은지(Up) 낮은지(Down) 판단하여 출력한다. 7번내에 맞추면 사용자 승리, 틀리면 컴퓨터가 승리한다. 한번의 게임이 끝나면 계속할지 여부를 물어본다. package patis.service.test; import java.util.Random; import java.util.Scanner; public class test { public static void gameSta..
1. Static 정리 Java에서 Static 키워드를 사용한다는 것은 메모리에 한번 할당되어 프로그램이 종료될 때 해제되는 것을 의미합니다. 이를 정확히 이해하기 위해서는 메모리 영역에 대한 이해가 필요합니다. [ Static의 메모리 ] 일반적으로 우리가 만든 Class는 Static 영역에 생성되고, new 연산을 통해 생성한 객체는 Heap영역에 생성됩니다. 객체의 생성시에 할당된 Heap영역의 메모리는 Garbage Collector를 통해 수시로 관리를 받습니다. 하지만 Static 키워드를 통해 Static 영역에 할당된 메모리는 모든 객체가 공유하는 메모리라는 장점을 지니지만, Garbage Collector의 관리 영역 밖에 존재하므로 Static을 자주 사용하면 프로그램의 종료시까지 ..
Jar 등록 [ 1. json.jar 다운로드 ] [ 2. 프로젝트 내부에 lib 폴더 생성 및 jar파일 옮기기 ] [ 3. 프로젝트 우 클릭 → Build Path → Configure Build Path... ] [ 4. Add Jars... → jar파일 선택 → OK ] Get rest api에서 사용하는 http 메서드는 총 4가지로 get, post, put, delete가 있습니다. 그 중 get은 데이터를 조회해오는 목적으로 주로 사용됩니다. get으로 테스트를 해볼 것은 서버로 데이터는 전달하지 않고 서버에서 객체 값과 배열 값을 각각 받아오는 코드를 작성해보겠습니다. 먼저 객체값을 받아오는 코드를 작성해보겠습니다. rest api를 호출해볼 수 있는 포스트맨에서 다음과 같이 호출되는 ..
✔ 정규 표현식(Regular Expression) 안녕하세요, 이번에 정리할 내용은 Java에서의 정규 표현식(Regular Expression) 입니다. 최근 개발을 하면서 정규 표현식을 사용하면 더 간단하게 해결할 수 있는 문제들을 꽤 자주 접했었고, 그때마다 주먹 구구식으로 정확한 이해없이 검색을 통해 해결을 해왔었습니다... 따라서 이번에 정리를 한 번 하려고 합니다 ✏ 위키백과에 나와있는 정규 표현식의 정의는 다음과 같습니다. 정규 표현식(正規表現式, 영어: regular expression, 간단히 regexp[1] 또는 regex, rational expression)[2][3] 또는 정규식(正規式)은 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어이다. 정규 표현식은 ..
자바에서 스트림이라고 하면 대부분 엄청나게 어려운 기술인 줄 알고 시작도 전에 포기하는 경우가 많은데 스트림은 엄청 간단하고 유용한 기술이다 다만 설명하는 사람들이 쉬운 걸 너무 어렵게 설명하기 때문에 아 들어도 모르겠네.. 그냥 어렵네.. 난 못하겠다.. 이러고 넘어가는 경우가 대부분인데 스트림은 간단한 개념이지만 정말 유용하기 때문에 반드시 알아두는 것이 좋다 먼저 스트림을 왜 쓰냐면 스트림은 배열이나 컬렉션(List, Set, Map)으로 원하는 값을 얻을 때 for문 도배를 방지하기 위해 나온 개념인데 가령 int 형태의 배열을 가지고 중복을 제거하고 내림차순으로 정렬한 뒤 List 형태로 반환한다고 생각을 해 보자 일단 배열 내용을 가지고 for를 돌리면서 set에 값을 밀어넣은 후 set의 내..
[Java] char 배열을 String 문자열로 변환하기 이번에는 String을 char[] 로 변환하는 방법을 알아보겠습니다. toCharArray() 코드 import java.util.Arrays; public class StringToCharArray { public static void main(String[] args) { String str = "How are you"; // 문자열 -> char 배열로 변환 char[] charArr = str.toCharArray(); // char 배열 출력 System.out.println(Arrays.toString(charArr)); } } 결과 [H, o, w, , a, r, e, , y, o, u] str.toCharArray(); java...
charAt은 자바에 문자열에 index값을 통해 문자를 읽어오는 방법으로 String str = "코크입니다"; 라는 문자열이 있으면, str.charAt(0); // 코 str.charAt(1); // 크 str.charAt(2); // 입 str.charAt(3); // 니 str.charAt(4); // 다 이렇게 문자를 가져올 수 있습니다. 그럼 이 문자열을 숫자로 가져와 보겠습니다. String str = "12345"; str.charAt(0); 무엇이 출력될까요? 네 당연히 1이 출력이 됩니다. 그럼 이 1은 문자의 1 일까요? 아니면 숫자 1일까요? 네 이것도 당연히 문자 '1' 입니다. 그런데 우리는 이 문자 '1'을 숫자 1로 바꾸고 싶습니다. 그럼 어떻게 해야 할까요? 이 문자 '1..
charAt(i) charAt 함수란? String 타입의 데이터(문자열)에서 특정 문자를 char 타입으로 변환할 때 사용하는 함수이다. String sample = "abc"; char target = sample.charAt(0); 위처럼 String 변수에서 사용할 수 있으며, charAt(i) i 자리에는 int 형 변수를 넣어서 원하는 위치의 문자를 가져올 수 있다. 사용 예시) public class Test { public static void main(String[] args) { // 변수 선언 String example = "안녕하세요"; char target1; char target2; char target3; target1 = example.charAt(0); target2 = e..