목록분류 전체보기 (163)
거누의 개발노트
String String은 불변 객체이다. String str = "hello"; str = str + " Java"; 1. 처음에 hello 라는 문자열을 변수에 초기화 했다. 2. hello Java를 새로 초기화 했고, 원래 있던 hello 라는 문자열은 가비지 컬렉터(garbage collection)에 의해 사라지게 된다. 결국 String은 기존에 있던 문자열에 추가하는 형태가 아니라 새로운 인스턴스를 생성해서 문자열이 수정된 것 처럼 보이는것이다. StringBuffer / StringBuilder StringBuffer / StringBuilder은 가변 객체이다. StringBuffer sb = new StringBuffer("hello"); sb.append(" Java"); 1. St..
문제 설명 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요. 제한사항 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다. 이번 문제는 큰 이슈 없어서 넘어가도록 하겠습니다. public int[][] solution(int[][] arr1, int[][] arr2) { int[][] answer = new int[arr1.length][arr1[0].length]; for(int i=0; i
문제 설명 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. 제한 조건 x는 -10000000 이상, 10000000 이하인 정수입니다. n은 1000 이하인 자연수입니다. 처음에 푼 코드 public long[] solution(int x, int n ){ long[] answer = new long[n]; for (int i = 0; i < n; i++) { answer[i] = x * i + x; } return answer; } 결과 ※ 테스트 13, 테스트 14를 실패하게 되었다. 한참 고민하다가 int 여서 범위에 벗어나는 걸까? ..
간단히 말하자면 IDE에서 .java 파일에 코드를 작성해서 저장하면 컴파일러가 컴파일 후 컴파일된 코드를 .class 파일에 저장한다. 그럼 우리는 run() 을 하여 코드를 실행 시킬 것이고, run()을 하면 JVM에 적재되고 프로그램이 실행된다. 여기서 다시 의문이 생긴다. JVM이 뭐지? JavaVirtual Machine의 줄임말인건 알고 있고, 하드웨어의 기종에 상관없이 운영체제에 JVM만 설치되어있으면 Java 프로그램을 실행 할 수 있다고 한다. ( 플랫폼에 종속되지 않는다 ) 그럼 JVM안에 요소 하나하나 어떤 역할을 하는지 살펴보자. Class Loader .class(바이트 코드)를 읽어서 Runtime Data Area에 맞춰서 적재하는 기능을 수행한다. [로딩 절차] 1. 어떤 ..
import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); } } Level 2 부터 할까 Level 1 부터 할까 고민 해봤는데... 아무래도 쉬운거부터 하면서 블로그에 익숙해 지는걸로! 아마 처음에 아래와 같이 주어졌을것이다. import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); } } 의문1. import를 제대로 알고있나...? 의문2. Scanner에 Sy..
Finn은 요즘 수학공부에 빠져 있습니다. 수학 공부를 하던 Finn은 자연수 n을 연속한 자연수들로 표현 하는 방법이 여러개라는 사실을 알게 되었습니다. 예를들어 15는 다음과 같이 4가지로 표현 할 수 있습니다. 1 + 2 + 3 + 4 + 5 = 15 4 + 5 + 6 = 15 7 + 8 = 15 15 = 15 자연수 n이 매개변수로 주어질 때, 연속된 자연수들로 n을 표현하는 방법의 수를 return하는 solution를 완성해주세요. class Solution { public int solution(int n) { int answer = 0; for (int i = 0; i < n; i++) { int temp = 0; //1부터 하나씩 더한다. for (int j = i+1; j n) { br..
어쩌다 알게된 꿀팁을 적어놓으려고 합니다. 대학과제나 글로되어있는 것을 사진으로 가지고 있을때 우리는 일일히 타이핑 해야하는 번거로움이 있습니다. 또한, 영어를 제외한 한자나 일본어 등 다른나라 언어로 되어있는 글자는 키보드로 타이핑하기 어렵죠. 이럴 때 이미지 또는 PDF파일을 문자로 추출할 수 있다면 좀 더 수월해지겠죠? 자 그럼 사진이나 PDF를 문자로 추출해보겠습니다. 👉 먼저 텍스트를 찍은 이미지 파일을 준비합니다. 👉 구글에 로그인 하신 후 구글 드라이브를 눌러줍니다. 👉 구글 드라이브에 들어오셔서 아까 이미지파일을 업로드합니다. 👉 새로 만들기 - 파일업로드 또는 드래그&드랍! 👉 올라간 이미지를 마우스 우클릭->연결 앱->Google 문서를 눌러주세요. 👉 조금만 기다려 주세요. 👉 그럼 ..
오늘은 IPTIME 설정 관련해서 작성해보려고 한다. ଘ(੭*ˊᵕˋ)੭ IPTIME 설정은 192.168.0.1(GateWay)로 접근가능 하다. 웹브라우저를 열고 주소창에 192.168.0.1을 입력/접속해보면 아래화면이 보인다. 1. 로그인 👉 관리도구를 클릭해준다. 👉 로그인 해준다. ( 초기 계정 정보는 admin / admin, 공유기에 나와있는 비밀번호 ) 2. ADMIN 계정, 패스워드 변경 👉 로그인 후 고급 설정->시스템 관린-> 관리자 설정을 클릭! 👉 오른쪽에 새 계정, 새 암호, 오른쪽 보안 문자를 입력후 새 계정 적용을 누르면 새로운 계정으로 접근할 수있다. 3. 포트포워딩 / NAT 👉 고급 설정 -> NAT/라우터 관린 -> 포트포워드 설정 클릭! 👉 규칙이름, 내부주소, 외부..