중간점검문제
p.230
1. int[] array = new int[100];
2. 0에서 9 사이의 정수
3. 예외(오류)가 발생한다.
4. double[] array = { 1.2, 3.1, 6.7 };
5.
for(i=0;i<array.length;i++){
array[i] = 2 * array[i];
}
6.
Scanner scan=new Scanner(System.in);
System.out.println(“배열의 크기: ”);
int size = scan.nextInt();
double[] array = new double[size];
7. for-each와 전통적인 for 루프를 비교하라.
for-each루프는 배열의 크기에 신경쓰지 않아도 되고 인덱스 변수를 생성할 필요없이 배열의 첫 번째 원소부터 마지막 원소의 값을 꺼내서 처리하는 경우에 사용한다. 하지만 역순으로 배열 원소를 처리하거나 일부 원소만 처리하는 경우는 for루프를 사용한다.
전통적인 for루프를 사용하면 배열의 원소를 변경할 수 있지만 for-each보다 불편할 수 있다. 뒤에서 학습하는 컬렉션에서는 for-each구조가 무척 편리하다.
8. 배열의 크기가 동일하다고 가정하자.
for(i=0;i<length;i++){
array2[i] = array1[i];
}
9. 배열의 참조값이 전달된다.
10. 배열 원소는 값이 전달되고 배열은 참조가 전달된다.
p.232
1.
BankAccount[] bank = new BankAccount[3];
for(int i =0; i < bank.lengh; i++)
bank[i] = new BankAccount();
2. 참조값이 전달된다.
p.234
1. int[][] library = new int[8][100];
2. 2차원 배열 객체를 가리키는 참조값이 전달된다.
1.
class Employee {
String name; // 직원의 이름
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
String address; // 주소
int salary; // 연봉
String phone; // 전화 번호
}
2.
import java.util.Scanner;
class Employee {
String name; // 직원의 이름
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
public String getPhone() {
return phone;
}
public void setPhone(String phone) {
this.phone = phone;
}
String address; // 주소
int salary; // 연봉
String phone; // 전화 번호
}
public class EmployeeTest {
public static void main(String args[]) {
Scanner scan = new Scanner(System.in);
// 크기가 3인 Employee의 배열 employees을 생성한다.
Employee[] employees = new Employee[3];
// 3명의 사원 정보를 받아서 각각 Employee 객체를 생성한 후에 배열에 추가하여 본다. 반복 루프를 사용한다.
for (int i = 0; i < employees.length; i++)
employees[i] = new Employee();
for (int i = 0; i < employees.length; i++) {
System.out.println("이름: ");
employees[i].name = scan.next();
System.out.println("주소: ");
employees[i].address = scan.next();
}
// employees 배열에 저장된 모든 데이터를 출력한다. 반복 루프를 사용한다.
for (int i = 0; i < employees.length; i++) {
System.out.println("이름: " + employees[i].name);
System.out.println("주소: " + employees[i].address);
}
}
}
1.
(1) int[] studentNumbers = new int[30];
(2) double[] values = {1.2, 3.3, 6.7};
2.
(1) int[] numbers = new int[100];
(2) double[] rainfalls = new double[100];
3.
(1) 0부터 4까지
(2) 실시간 오류 발생
4.
for(int i = 0; i < values.length; i++){
values[i] = 0;
5.
int[] a = {1, 2, 3, 4, 5};
int[] b = new int[5];
for(int i = 0; i < a.length; i++)
b[i] = a[i];
6.
String[] employees = new String[10];
String name = "홍길동";
employees[0] = name;
name = null;
배열의 원소 중에서 0번째를 제외하고 나머지 원소들은 초기화가 안 되었다. 따라서 9개의 null 참조가 배열 employees[] 안에 존재한다.
'솔루션모음 > 파워자바 중간점검 Exercise Lab' 카테고리의 다른 글
[파워자바] 12장 중간점검문제 Exercise Lab Exercise 솔루션 답지 (0) | 2023.09.16 |
---|---|
[파워자바] 11장 중간점검문제 Exercise Lab Exercise 솔루션 답지 (0) | 2023.09.16 |
[파워자바] 9장 중간점검문제 Exercise Lab Exercise 솔루션 답지 (0) | 2023.09.15 |
[파워자바] 8장 중간점검문제 Exercise Lab Exercise 솔루션 답지 (0) | 2023.09.13 |
[파워자바] 7장 중간점검문제 Exercise Lab Exercise 솔루션 답지 (0) | 2023.09.13 |
댓글