본문 바로가기

자바144

[TIL] Java (Scanner) [TIL] Java (Scanner) Scanner란? 파이썬을 공부하면서, 코드를 짤 때, 또는 문제를 풀 때에, 유저들이 값을 입력했다 파이썬에서는 간단하게 input() 메서드를 사용하면, 값을 입력 받을 수 있었다 java는 Scanner라는 클래스가 있다 (java.util 패키지 안에 있다) 파이썬과 달리, 자바에서는 입력값을 받을 때에, 무슨 자료형을 입력 받을지 코드에 명시를 해야 한다 즉 다른 입력값을 받게 된다면, 바로 에러가 뜨게 된다 import java.util.Scanner; public class Practice { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); } } impo.. 2023. 6. 11.
[TIL] Java (LocalDate) [TIL] Java (LocalDate) 출처 : 제로베이스 백엔드 스쿨 LocalDate import java.time.* 시간 관련된 모든 클래스를 가지고 올 수 있다 LocalDateTime, LocalDate, DayOfWeek 등 import java.time.*; // 현재 날짜, yyyy-mm-dd LocalDate nowDate = LocalDate.now(); // 1996년 2월 17일에 대한 날짜 LocalDate date = LocalDate.of(1996, 2, 17); // =========현재 날짜를 출력하기============== System.out.println(nowDate); // output : 2023-06-02 // =========현재 년도를 출력하기======.. 2023. 6. 8.
[TIL] Java (random number) [TIL] Java (random number) 출처 : 제로베이스 백엔드 스쿨 Math.random() double num = Math.random(); System.out.println(num); // output : 0.2868302445390779 System.out.println(String.format("%6.0f", num * 1000000)); // output : 286830 무작위 숫자를 출력해준다 여기서 Math.random() 은 double 형태의 자료형 밖에 안 된다 즉 int 를 자료형으로 선택했을 때는 에러가 발생한다 0.0 이상, 1.0 미만의 double 숫자를 가지고 와준다 String.format() 을 통해서, 어느 정도 정수의 값을 가지고 올 수 있다 Random .. 2023. 6. 7.
[TIL] Java (String.format()) [TIL] Java (String.format()) 출처 : 제로베이스 백엔드 스쿨 String.format() 문자열로 포멧을 하여 반환을 하는 것이다 %d : 10진수, 정수 형태를 포멧하는 것이 %s : 문자열을 포멧하는 것이고, 숫자를 입력할 경우, 그만큼 빈 공간을 추가해준다 %f : float 숫자를 문자열 형태로 포멧을 할 수 있다 %t : 날짜시간 형식을 문자열 형태로 포멧할 수 있다 %c : 유니코드 문자 형식을 문자열 형태로 포멧할 수 있다 %o, %x : 8진수, 16진수를 문자열 형태로 포멧하는 것이다 int num = 12; System.out.println(String.format("%d", num)); // output : 12 System.out.println(String.f.. 2023. 6. 6.
19. Java 클래스 (추상 클래스, 인터페이스) 19. Java 클래스 (추상 클래스, 인터페이스) 추상 클래스 추상화 클래스는 객체를 만들 수 없다 public abstract class PlayerMovement{ abstract void kick(); } public class Player extends PlayerMovement{ public void kick() { System.out.println("Kick"); } } 어떠한 특정 행동을 해도, 사람마다 다 다르게 행동한다 공부를 할 때에, 계획을 먼저 세운다음 공부를 하는 사람이 있고 그냥 공부하는 사람이 있고 노래를 들으면서 공부하는 사람과, 그렇지 않은 사람들이 있다 위처럼, 큰 틀에서는 같은 행동을 하지만, 자세한 부분에서 차이점이 있으면, 추상화를 통해 큰 틀을 만들고, 그 클을 .. 2023. 6. 5.
18. Java 클래스 (속성) 18. Java 클래스 (속성) 객체 객체는 상태와 행동이 있다 (State and Behavior) 클래스를 만들 때에는 state, constructor 그리고 Behavior를 설정해 놓는 것이 좋다 상태, 생성자, 행동/메서드 선풍기의 예시 state 는 선풍기의 기본적인 상태이다 constructor는 객체를 만들면서, 선풍기의 상태를 지정해준다 Behavior는 객체가 할 수 있는 행동이다 public class Fan { // state (상태) private String make; private double radius; private String color; private Boolean isOn = false; private int speed; // constructor Fan (Stri.. 2023. 6. 2.
[Java] 문제풀이 (Programmers) Java 문제풀이 (Programmers) 옷가게 할인 받기 10만원 이상은 5%, 30만원 이상은 10%, 50만원 이상은 20% 할인 소수점과 곱하는 것이라서 double을 사용해야 한다 그리고 값은 int 로 반환해서 구해야 한다 (소수점은 버린다고 써져 있) class Solution { public double solution(double price) { if (price < 100000) { return price; } else if(price < 300000) { return (int) (price * 0.95); } else if (price < 500000) { return (int) (price * 0.9); } else { return (int) (price * 0.8); } } } .. 2023. 6. 1.
17. Java Array, ArrayList 17. Java Array, ArrayList 가변적 매개변수 (Variable Arguments) // 1번 Student student = new Student("Alex", new int[] {97, 81, 100}); // 2번 Student student = new Student("John", 88, 77, 100, 66); 1번처럼, 2개의 arguments를 클래스에 넣어서 객체를 만들 수 있다 이 때에 입력할 수 있는 argument는 고정이 되어 있다 2번 같은 경우, 숫자들은 모두 점수이다 여기서는 클래스에 입력할 수 있는 argument의 개수가 고정이 아니다 고정적인 argument보다는, 다양한 값을 클래스에 넣고 싶을 때에 가변적 매개변수를 사용한다 public int sum (.. 2023. 5. 31.
[Java] 문제풀이 (Programmers) Java 문제풀이 (Programmers) 나머지가 1이 되는 수 찾기 가장 작은 수를 찾는 것이니깐, 1부터 시작해서 1씩 더하면서 n 과 나누면 된다 거기서 나머지가 1이 나오는 첫 번째 x 가 답이 되는 것이다 class Solution { public int solution(int n) { int answer = 0; int x = 1; while (n % x != 1) { x += 1; } answer = x; return answer; } } 없는 숫자 더하기 check(int value, int[] numbers) 0부터 9를 value로 받고, 배열 안에 있는지 확인을 한다 있으면 true를, 없으면 false를 반환한다 false이면 answer에 더해주면 된다 class Solution.. 2023. 5. 30.