목록java (69)
June is Combung
package week5; //직접적으로 값 수정 --> 변수 = 값 : 대입연산자 //간접적으로 값 수정 --> 메서드를 사용하는것 : 외부에서 값을 주는 매개 인자값으로 매개변수를 통해서 인스턴스변수에 접근이 가능하다 class Hospital { Doctor[] docs = new Doctor[4]; Patient[] pas = new Patient[10]; Nurse[] nur = new Nurse[3]; void init() { docs[0] = new Doctor(); // docs[0].dc_name ="홍길동"; // 외부에서 데이터를 직접적으로 고치는것이 불가능하게 만들어주는게 private 변수 , // private 변수는 같은 클래스 안에서만 직접적으로 값 수정이 가능하다 // 값 ..
package week5; import java.util.Random; //카드 게임 포카카드 //카드 모양 : 다이아 하트 스페이드 클로버 //숫자 : 1- 10 //총 40장의 카드가 있어요 //플레이어는 두명 //2장씩 나눠 갖은 다음에 : 각 카드의 숫자의 합이 큰쪽이 이긴다 //랜덤값 가지기 : 카드가 한팩에서 4장을 꺼내오기 때문에 중복이 있으면 안돼요 //만약에 같은 합이 나오면 다이아 > 하트 > 스페이드 > 클로버 순으로 이긴다 class Card { static String shapeList[] = { "다이아 ", "하트", "스페이드", "클로버" }; // 스테틱 변수는 여러 객체들의 공통점을 보통 사용한다 static int garo = 100; static int sero = ..
package week5; //전역변수 : 멤버 변수 //1. 인스턴스 변수 = non -static 변수 : 객체를 생성할때 (new..) heap //생성되는 변수이다 . 각각의 객체마다 독단적으로 존재 //인스턴스객체 변수가 생성되기 전에는 사용이 불가능하다 //인스턴스 객체를 먼저 만든 후에 인스턴스객체변수이름.변수이름 접근 가능 //2. 클래스 변수 - static 변수 : 프로그램 시작될때 static 메모리방에서 생성 //클래스변수는 사용법이 2가지 // 클래스이름.클래스변수 // 인스턴스객체변수이름. 클래스변수 //같은 클래스로 만들어진 인스턴스 객체들과 값을 공유한다 //서로 다른 객체에서 접근을 해도 같이 값이 바뀐다 class Ex07 { int num1; static int num2..
package week5; class Subject{ String name; int score; } class Student{ Subject[] subjects; String name; } public class ClassStructure { public static void main(String[] args) { Student[] st = new Student[3]; st[0] = new Student(); st[0].subjects = new Subject[3]; for(int i = 0; i < 3; i++) { st[0].subjects[i] = new Subject(); } st[1] = new Student(); st[1].subjects =new Subject[2]; st[1].subject..
package week5; import java.util.Arrays; public class Test1 { /* * ##### 예시 설명 "XS"와 "XL"은 각각 한명씩 신청했습니다. "S"와 "L"은 각각 두 명씩 신청했습니다. "M"과 "XXL"을 * 신청한 학생은 없습니다. */ public int[] solution(String[] shirtSize) { int[] answer = new int[6]; for (int i = 0; i < shirtSize.length; i++) { if (shirtSize[i] == "XS") { answer[0] += 1; } else if (shirtSize[i] == "S") { answer[1] += 1; } else if (shirtSize[i] ==..
package week5; // 생성자 설명 class Product{ String name; int price; } public class Test2 { public static void main(String[] args) { // 3칸짜리 배열이 2개 필요하면 2차원배열을 사용한다. int [] arr = new int[3]; int [][] darr = new int[2][3]; darr[1][0] = 100; System.out.println("darr = " + darr); System.out.println("darr[1] = " + darr[1]); System.out.println("darr[1][0] = " + darr[1][0]); //-----------------------------..
package week5; class Ex01 { // 메서드 오버로딩 -- 매개변수값들을 변경해서 같은이름으로 매서드 생성가능 : // 매개 변수들의 타입 갯수 , 타입의 순서만 가지고 구분을 한다 --> 타입에 대해서 매개인자값으로 어떤 메서드를 호출했는지 알수 있기 // 때문에 // 원래는 같은 이름으로 메서드 만들 수 없었는데 // 매개 변수값을 다르게 하면 같은 이름으로 메서드를 계속 생성할 수 있다 // 주의점 // void int double.. 이러한 리턴타입은 영향을 미치지 않는다 --> 메서드 오버로딩에 // 매개 변수 들의 이름이 바뀐다고 해서 메서드 오버로딩이 아니다 double add(int x, int y, double z) { // 외부에서 값을 두개를 받는데 x , y : a..
package week4; /* class TestReturn4 { int countMuliple4(int[] arr) { int cnt = 0; for (int i = 0; i < arr.length; i++) { if (arr[i] % 4 == 0) { cnt += 1; } } return cnt; } int[] countMulipleArray(int[] arr) { int cnt = countMuliple4(arr); int[] temp = new int[cnt]; int j = 0; for (int i = 0; i < arr.length; i++) { if (arr[i] % 4 == 0) { temp[j] = arr[i]; j += 1; } } return temp; } void print(int..