17일차 java 연산(2023-01-16)

권단비·2023년 1월 16일
0

IT

목록 보기
32/139

[Eclipse 연습]

[계산]
public class Test15 {
	int a;
	int b;
	int result;
	void setT(int n, int n1) {
		a = n;
		b = n1;
	}
	int initTriangle() {
		result = a * b / 2;
		return result;
	}
	public static void main(String[] args) {
		Test15 triangle2 = new Test15();
		triangle2.setT(10, 1000);
		System.out.println("삼각형의 넓이는" + triangle2.initTriangle());
	}
}
[결과값]
삼각형의 넓이는5000

[계산]
public class Test14 {
	int eng, kor, math;
	char grade;
	double result;
	void initGrade(int n, int n1, int n2) {
		eng = n;
		kor = n1;
		math = n2;
	}
	double getAvg() {
		return result = (eng + kor + math) / 3.0;
	}
	char getGrade() {
		char grade = '가';
		if (result >= 90) {
			grade = '수';
		} else if (result >= 80) {
			grade = '우';
		} else if (result >= 70) {
			grade = '미';
		} else if (result >= 60) {
			grade = '양';
		} else {
			grade = '가';
		}return grade;
	}
	public static void main(String[] args) {
		Test14 grade = new Test14();
		grade.initGrade(90, 70, 60);
		System.out.println("값확인" + grade.eng + grade.math + grade.kor);
		System.out.println(grade.getAvg());
		System.out.println(grade.getGrade());
	}
}
[결과값]
값확인906070
73.33333333333333
미

[참조변수]

참조형엔 null을 넣을 수 있다.

null : 연결을 끊는다. 아무것도 할당되지 않은 상태.
int num = null; // 안 됨.
triangle = null; // 됨.
[계산]
public class BankAccount {
	int balance = 0; // 예금 잔액
	public int deposit(int amount) {
		balance += amount;
		return balance;
	}
	public int withdraw(int amount) {
		balance -= amount;
		return balance;
	}
	public int checkMyBalance() {
		System.out.println("잔액 : " + balance);
		return balance;
	}
}
………………………………………………………………………………………………………………………………………………………………
public class Test16 {
	public static void main(String[] args) {
		BankAccount ref1 = new BankAccount();
		BankAccount ref2 = ref1;
		ref1.deposit(3000);
		ref2.deposit(2000);
		ref1.withdraw(400);
		ref2.withdraw(300);
		ref1.checkMyBalance();
		ref2.checkMyBalance();
	}
}
[결과값]
잔액 : 4300
잔액 : 4300

[계산]
public class Test16 {
	public static void main(String[] args) {// 파라미터:main(String[]args)
		BankAccount ref = new BankAccount();
		ref.deposit(3000);
		ref.withdraw(300);
		check(ref); // '참조 값'의 전달
	}
	public static void check(BankAccount acc) { // BankAccount acc = ref
		acc.checkMyBalance();
	}
}
[결과값]
잔액 : 2700

[계산]
class Triangle2 {
	double base;
	double height;

	void initTriangle(double base, double height) {
		this.base = base; // this는 class 안에 있는 함수를 참조한다.
		this.height = height;

	}

	void compare(Triangle2 n) { // n=triangle2가 넘어옴
		if ((base == n.base) && (height == n.height)) {
			System.out.println("같은 삼각형 입니다.");
		} else {
			System.out.println("다른 삼각형 입니다.");
		}
	}

	double getArea() {
		return (base * height) / 2;
	}

	void compareArea(Triangle2 n2) {
		if ((getArea() == n2.getArea())) { // 함수 호출 시 () 필수
			System.out.println("같은 면적입니다.");
		} else {
			System.out.println("다른 면적입니다.");
		}
	}
}

public class Test14 {

	public static void main(String[] args) {
		Triangle2 triangle = new Triangle2();
		triangle.initTriangle(10, 5);

		// triangle =null; //아무 것도 할당되지 않은 상태

		System.out.println(triangle);

		Triangle2 triangle2 = new Triangle2();
		triangle2.initTriangle(10, 5);

		triangle.compare(triangle2); // 같은 삼각형입니다.
		triangle2.initTriangle(10, 10);
		triangle.compare(triangle2); // 다른 삼각형 입니다.

		triangle2.initTriangle(5, 10);
		triangle.compareArea(triangle2); // 같은 면적입니다.
		triangle2.initTriangle(3, 4);
		triangle.compareArea(triangle2); // 다른 면적입니다.
	}
}
[결과값]
같은 삼각형 입니다.
다른 삼각형 입니다.
같은 면적입니다.
다른 면적입니다.

[String]

[계산]
public class String2 {
	public static void main(String[] args) {
		String str1 = "Happy"; // String 참조형 데이터 타입(4byte) || 메모리에 올라간 Happy의 첫 번째 주소를 가져온다.
		String str2 = "Birthday";
		System.out.println(str1 + " " + str2);
		printString(str1);
		printString(str2);
	}
	public static void printString(String str) {
		System.out.println(str);
	}
}
[결과값]
Happy Birthday
Happy
Birthday

[계산]
class Baby {
	int age; // 인스턴스(객체) 변수
	String name;
	void initBaby(int n, String str1) {
		age = n;
		name = str1;
	}
	void show() {
		System.out.println(age + " 살 " + name + "입니다.");
	}
}
public class BabyTest {
	public static void main(String[] args) {
		Baby baby = new Baby(); // 객체를 생성하시오.
		baby.initBaby(5, "아카짱");
		baby.show(); // 5살 이름 아카짱 입니다.
	}
}
[결과값]
5 살 아카짱입니다.

0개의 댓글