Parameter와 Argument의 차이
·
항해
Parameter와 Argument의 차이 Parameter와 Argument는 프로그래밍에서 함수나 메소드를 정의하고 호출할 때 사용되는 용어 메소드를 호출할 때 메소드에 필요한 인자(argument)를 전달하게 되는데, 이 때 전달된 인자(argument)는 메소드 내부에서 매개변수(parameter)로 사용 Parameter 함수나 메소드를 정의할 때 필요한 값을 받기위한 변수 → 선언되는 변수 public int add(int a, int b) { return a + b; } //"a"와 "b"가 parameter 파라미터가 많아질 경우 코딩 법? Argument 함수나 메소드를 호출할 때 해당 합수나 메소드가 필요로 하는 값 → parameter에 전달되는 실제 값 int result = add..
프로그래머스 문제 풀이_푸드파이트 대회
·
항해
문제 설명 수웅이는 매달 주어진 음식을 빨리 먹는 푸드 파이트 대회를 개최합니다. 이 대회에서 선수들은 1대 1로 대결하며, 매 대결마다 음식의 종류와 양이 바뀝니다. 대결은 준비된 음식들을 일렬로 배치한 뒤, 한 선수는 제일 왼쪽에 있는 음식부터 오른쪽으로, 다른 선수는 제일 오른쪽에 있는 음식부터 왼쪽으로 순서대로 먹는 방식으로 진행됩니다. 중앙에는 물을 배치하고, 물을 먼저 먹는 선수가 승리하게 됩니다. 이때, 대회의 공정성을 위해 두 선수가 먹는 음식의 종류와 양이 같아야 하며, 음식을 먹는 순서도 같아야 합니다. 또한, 이번 대회부터는 칼로리가 낮은 음식을 먼저 먹을 수 있게 배치하여 선수들이 음식을 더 잘 먹을 수 있게 하려고 합니다. 이번 대회를 위해 수웅이는 음식을 주문했는데, 대회의 조건..
모듈화가 필요한 이유
·
항해
자바의 버전 공부...자바 8과 11의 차이점! 여러 개선 사항 중 모듈화라는 것을 알게 됨 ✔️모듈시스템 도입 모듈화를 통해... 자바 클래스와 패키지를 더 체계적으로 구조화, 관리 모듈 간 의존성을 더욱 명확하게 관리 이렇다고 한다. ✔️모듈화의 장점? 💡 모듈화란? ▸ 소프트웨어를 작은 단위인 모듈로 분리하여 개발하는 방법 ▸ 모듈은 특정 기능을 수행하는 작은 코드 블록이며 모듈끼리 상호작용하면서 전체 소프트웨어 시스템을 구축함 재사용성 향상 : 모듈은 독립적으로 개발되며 재사용 가능한 단위로 설계되기 때문에 다른 프로젝트나 부분에서도 활용할 수 있다. ->개발 속도를 높이고 비용을 절감할 수 있다. ㅁ 유지보수 용이성 : 각 모듈이 독립적이기 때문에 변경이나 수정이 필요한 경우 해당 모듈만 수정하..
WIL : JVM이란 무엇인가?
·
항해
✔️자바 프로그램 자바 프로그램 개발을 위해서는 파일의 확장명이 .java인 텍스트파일을 생성하고 자바언어로 코드를 작성하게 된다. 이렇게 만들어진 자바 소스파일을 컴파일러가 javac 명령어로 컴파일하게 되고, 컴파일이 성공하게 되면 확장명이 .class인 바이트 코드 파일이 된다. ✔️바이트 코드 파일 바이트 코드 파일은 완전한 기계어가 아니므로 바로 실행할 수 있는 파일이 아님 -> 바이트 코드파일을 완전한 기계어로 번역해서 실행하기 위해서는 java 명령어를 사용해야 한다. 바이트코드 파일과 자바 프로그램 자바 프로그램은 완전한 기계어가 아닌, 바이트코드파일(.class)로 구성되어있다. 바이트코드파일은 운영체제에서 바로 실행할 수 없기 때문에 JVM(: Java Virtual Machin, 자바..
JAVA_형변환(casting) 정리!
·
항해
자바에서 형변환은 데이터타입을 다른 데이터타입으로 변환하는 과정!! ▸ 기본 데이터 타입(primitive data type) ▸ 참조 데이터 타입(reference data type) ✔️ 기본 데이터 타입의 형변환 기본 데이터 타입은 서로 다른 데이터 타입 간 형변환 가능 → 데이터 타입의 크기와 범위에 따라 자동 혹은 강제로 이루어진다. 자동 형변환(묵시적 형변환) : - 데이터 손실 없이 더 작은 데이터 타입에서 큰 데이터 타입으로 변환할 때 발생 ㅁ - 자동 형변환 규칙 : ▹ 'byte' → 'short' → 'int' → 'long' → 'float' → 'double' ▹ 'char'은 'int'로 변환 ▹ ex. int numInt = 5; double numDouble = numInt;..
트러블슈팅 Set 자료구조 사용_순서 관련 문제
·
항해
자바의 collection 관련 공부 레시피 메모장을 만들면서 생긴 의문점 -> 다른 자료구조 List, Map은 잘 작동하는데 Set이 값을 넣은 순서대로 출력하지 않고 있다는 것을 확인할 수 있었다. 이렇게 넣어준 순서대로가 아니게 값이 출력되는 것을 확인할 수 있었다. Set은 순서가 보장되지않는 자료구조라 입력한 순서대로 저장되지 않을 수 있다. 만약 입력한 순서대로 저장되어야 한다면 HashSet 대신 LinkedHashSet을 사용! → LinkedHashSet은 입력한 순서대로 요소가 저장되는 Set의 종류 아래와 같이 코드를 수정하여 LinkedHashSet을 사용하였다. 위 코드에서 Set strSet = new LinkedHashSet(); 부분을 사용하여 LinkedHashSet을 생..
트러블슈팅_reached end of file while parsing
·
항해
솔직히 트러블 슈팅이라고 할 내용은 아닌데.. 공부하면서 강사님이 말하는 것과 똑같이 코딩하고 있다고 생각하고 코드를 실행하게 되었는 이런 에러 메시지를 띄웠음. 몇개월을 공부하면서 이런 에러는 본 적이 없는것 같아 에러를 검색을 했는데 너무 간단한 문제였다. 저기 맨 아래 괄호에서 뜬 메시지인데 파싱하는 도중에 파일의 끝부분에 도달했다는 의미로 주로 괄호나 인용부를 닫지 않거나 열고 닫은 수가 맞지 않는 경우에 발생하는 에러다. 계속 비슷한 코드만 사용해서 복붙을 하다보니 아래서 3번째 else 부분의 괄호를 지워버린 것! 괄호를 잘 닫아주었고, 다시 잘 작동해 주었다. 너무 기초적인 실수라서 트러블슈팅을 안적으려고 했는데 그래도 몇개월 동안 본 적이 없다가 처음 본 오류라서 한번 적어본다. 이런건 이..
무한 루프 트러블 슈팅
·
항해
야구게임을 코딩하던 중 만난 문제 잘 만든 코드인 줄 알았는데 갑자기 if에 빨간줄이 떠버림.. 확인 결과 2가지 문제 발견 1. 무한루프에서 랜덤숫자 무한 생성, 사용자 입력부분과 게임결과 출력 부분의 중복 2. if문 조건 while문에서 빠져나가는 게임 종료 조건을 추가 if문의 조건을 수정하여 제대로 된 조건을 걸어주었다. 숫자 생성이 한번만 이루어지고, 띄어쓰기 없이 숫자를 받을 수 있도록 수정했음.