본문 바로가기

java21

[Java] char 배열을 문자열로 변환 String(배열명) public class Main { public static void main(String[] args) { char[] arr = {'I','a','m','사','랑','이','에','요'}; String result = new String(arr); System.out.println("result = " + result); } } // result = Iam사랑이에요 char 배열이 있다면 반복문을 쓰지 않고 문자열로 합성하는 법이 있다. String(배열 이름)을 하면 한 번에 문자열로 만들어준다. 2023. 11. 28.
[Java] 절대값 구하기 Math.abs( ) Math.abs( ) int, long, double, float 타입을 입력받아 절대값을 반환한다. public class Main { public static void main(String[] args) { int num1 = -3; long num2 = -534978333; double num3 = -3.235; float num4 = -1.234f; System.out.println("Math.abs(num1) = " + Math.abs(num1)); System.out.println("Math.abs(num2) = " + Math.abs(num2)); System.out.println("Math.abs(num3) = " + Math.abs(num3)); System.out.println("Mat.. 2023. 11. 22.
[Java] long 범위보다 큰 정수를 사칙연산하기: BigInteger BigInteger int, double, long 자료형 중에서 가장 범위가 넓은 long의 범위는 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807이다. 만약 long의 범위를 초과하는 수를 다룰 때는 BigInteger 클래스를 사용할 수 있다. BigInteger는 문자열로 표현된 숫자를 입력받아 객체를 생성한다. 이후 사칙연산을 수행하는 각 메서드를 호출하여 다음과 같이 활용할 수 있다. import java.math.BigInteger; public class Main { public static void main(String[] args) { String a = "12938475029384752983749875"; String b = "2398.. 2023. 11. 10.
[Java] 문자열을 공백 기준으로 나누어 배열 만들기: split( ), 마지막 공백 처리 공백을 기준으로 배열 만들기 public class Main { public static void main(String[] args) { String my_string = "i love you"; String[] arrStr = my_string.split(" "); String my_string2 = "a, b, c"; String[] arrStr2 = my_string2.split(","); System.out.println(Arrays.toString(arrStr)); System.out.println(Arrays.toString(arrStr2)); } } // [i, love, you] // [a, b, c] split( ) 메서드를 이용하면 괄호 안의 값을 기준으로 문자열을 나눌 수 있다. 마지.. 2023. 11. 4.
[Java] ArrayList에서 특정 값 인덱스 구하기 indexOf 배열에서는 indexOf()가 지원이 안된다. 배열에서 특정 값 인덱스를 구하려면 asList()를 이용하여 ArrayList로 변환하는 방법이 있다. indexOf( ) import java.util.Arrays; import java.util.List; public class Main { public static void main(String[] args) { String[] arr = {"apple", "banana", "graph"}; List list = Arrays.asList(arr); System.out.println(list.indexOf("banana")); // 1 } } 2023. 10. 30.
[Java] Integer 타입 ArrayList를 int 타입 배열로 변환 주저리주저리 코딩테스트 연습 중 int형 배열을 정답으로 반환해야 하는 상황. 필자는 매번 Integer 타입의 ArrayList를 반환하여 'cannot be converted to int'라는 오류를 만난다. 그만 까먹고 싶어서 기록한다. 본론 List list = new ArrayList(); list.add(1); list.add(2); int[] arr = list.stream() .mapToInt(i -> i) .toArray(); Integer타입 ArrayList를 선언하고 데이터를 삽입한다. 그 이후 list를 stream으로 변환한 후 mapToInt와 toArray()를 이용하여 int형 배열로 만든다. 2023. 10. 26.
[BOJ] 백준 10871번 X보다 작은 수 (Java) 문제링크 https://www.acmicpc.net/problem/10871 10871번: X보다 작은 수 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. www.acmicpc.net 나의코드 import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int X = sc.nextInt(); int[] arr = new int[N]; for(int i = 0;.. 2023. 2. 1.
[BOJ] 백준 10807번 개수 세기 (Java) 문제링크 https://www.acmicpc.net/problem/10807 10807번: 개수 세기 첫째 줄에 정수의 개수 N(1 ≤ N ≤ 100)이 주어진다. 둘째 줄에는 정수가 공백으로 구분되어져있다. 셋째 줄에는 찾으려고 하는 정수 v가 주어진다. 입력으로 주어지는 정수와 v는 -100보다 크거 www.acmicpc.net 나의코드 import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int num = sc.nextInt(); int[] array = new int[num]; int count = 0; for(int i = 0; i .. 2023. 1. 31.
[BOJ] 백준 1110번 더하기 사이클 (Java) 문제링크 https://www.acmicpc.net/problem/1110 1110번: 더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, www.acmicpc.net 나의코드 import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int num = sc.nextInt(); sc.close(); int a = num; int count = 0; while(true){ a = ((.. 2023. 1. 30.
[BOJ] 백준 2753번 윤년 (Java) 문제링크 https://www.acmicpc.net/problem/2753 2753번: 윤년 연도가 주어졌을 때, 윤년이면 1, 아니면 0을 출력하는 프로그램을 작성하시오. 윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때이다. 예를 들어, 2012년은 4의 배수이면서 www.acmicpc.net 나의코드 import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int a = sc.nextInt(); sc.close(); if(a % 400 == 0){ System.out.print("1"); }else if((a % 4 =.. 2022. 12. 29.
[BOJ] 백준 9498번 시험 성적 (Java) 문제링크 https://www.acmicpc.net/problem/9498 9498번: 시험 성적 시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오. www.acmicpc.net 나의코드 import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int a = sc.nextInt(); sc.close(); if(a >= 90){ System.out.print("A"); }else if(a >= 80){ System.out.print("B"); .. 2022. 11. 17.
[BOJ] 백준 1330번 두 수 비교하기 (Java) 문제링크 https://www.acmicpc.net/problem/1330 1330번: 두 수 비교하기 두 정수 A와 B가 주어졌을 때, A와 B를 비교하는 프로그램을 작성하시오. www.acmicpc.net 나의코드 import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); sc.close(); if(a > b){ System.out.print(">"); } else if(a == b){ System.out.print("=="); }else if(a < b){ System.out.. 2022. 11. 16.
[BOJ] 백준 25083번 새싹 (Java) 문제링크 https://www.acmicpc.net/problem/25083 25083번: 새싹 아래 예제와 같이 새싹을 출력하시오. www.acmicpc.net 나의코드 public class Main{ public static void main(String[] args){ System.out.printf(" ,r'\"7\nr`-_ ,' ,/\n \\. \". L_r'\n `~\\/\n |\n |"); } } 2022. 11. 15.
[BOJ] 백준 10172번 개 (Java) 문제링크 https://www.acmicpc.net/problem/10172 2022. 11. 14.
[BOJ] 백준 10171번 고양이 (Java) 문제링크 https://www.acmicpc.net/problem/10171 10171번: 고양이 아래 예제와 같이 고양이를 출력하시오. www.acmicpc.net 나의코드 public class Main{ public static void main(String[] args){ System.out.print("\\ /\\\n ) ( \')\n( / )\n \\(__)|"); } } 2022. 11. 13.
[BOJ] 백준 2588번 곱셈 (Java) 문제링크 https://www.acmicpc.net/problem/2588 2588번: 곱셈 첫째 줄부터 넷째 줄까지 차례대로 (3), (4), (5), (6)에 들어갈 값을 출력한다. www.acmicpc.net 나의코드 import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int a, b, c, d, e; a = sc.nextInt(); b = sc.nextInt(); sc.close(); c = a * (b % 10); d = a * (b % 100 / 10); e = a * (b / 100); System.out.println(c); System.. 2022. 11. 12.
[BOJ] 백준 10430번 나머지 (Java) 문제링크 https://www.acmicpc.net/problem/10430 10430번: 나머지 첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B, C ≤ 10000) www.acmicpc.net 나의코드 import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); int c = sc.nextInt(); sc.close(); System.out.println((a + b) % c); System.out.println(((a % c) + (b % c)) % c); Sy.. 2022. 11. 11.
[BOJ] 백준 3003번 킹, 퀸, 룩, 비숍, 나이트, 폰 (Java) 문제링크 https://www.acmicpc.net/problem/3003 3003번: 킹, 퀸, 룩, 비숍, 나이트, 폰 첫째 줄에 동혁이가 찾은 흰색 킹, 퀸, 룩, 비숍, 나이트, 폰의 개수가 주어진다. 이 값은 0보다 크거나 같고 10보다 작거나 같은 정수이다. www.acmicpc.net 나의코드 import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int king = 1; int queen = 1; int rook = 2; int bishop =2; int knight = 2; int pawn = 8; System.out.print.. 2022. 11. 10.
[BOJ] 백준 18108번 1998년생인 내가 태국에서는 2541년생?! (Java) 문제링크 https://www.acmicpc.net/problem/18108 18108번: 1998년생인 내가 태국에서는 2541년생?! ICPC Bangkok Regional에 참가하기 위해 수완나품 국제공항에 막 도착한 팀 레드시프트 일행은 눈을 믿을 수 없었다. 공항의 대형 스크린에 올해가 2562년이라고 적혀 있던 것이었다. 불교 국가인 태국 www.acmicpc.net 나의코드 import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int a; a = sc.nextInt(); sc.close(); System.out.print(a - 543); .. 2022. 11. 9.
[BOJ] 백준 10926번 ??! (Java) 문제링크 https://www.acmicpc.net/problem/10926 10926번: ??! 준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때 www.acmicpc.net 나의코드 import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); String a = ""; a = sc.next(); sc.close(); a = a + "??!"; System.out.print(a); } } 2022. 11. 8.
[BOJ] 백준 10869번 사칙연산 (Java) 문제링크 https://www.acmicpc.net/problem/10869 10869번: 사칙연산 두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. www.acmicpc.net 나의코드 import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int a, b; a = sc.nextInt(); b = sc.nextInt(); sc.close(); System.out.println(a + b); System.out.println(a - b); System.out.println(a.. 2022. 11. 7.