[JAVA] 20230224 JAVA 조건문, 반복문, 객체생성, 메소드 만들기
조건문
1. if -else문
Q. 문자열 a가 남성이 담겨있고 a가 남성이면 남성입니다. 아니면 여성입니다.를 출력하시오
String a="남성";
// String의 특이한 사용법 - 객체에 변수를 담는 것이 아니라 변수의 주소값을 담는다.
if (a.equals("남성")) { //문자열(글자)를 비교하려면 .equals()메소드를 사용하고
System.out.println("남성입니다."); //글자를 담고있는 string클래스의 객체주소값을
}else { //비교하려면 == 를 사용한다.
System.out.println("여성입니다.");
}
hint )
문자열(글자)를 비교하려면 .equals() 메소드를 사용하고
글자를 담고있는 string 클래스의 객체주소 값을 비교하려면 == 를 사용한다.
2. switch문
Q. 월화수목금은 근무일이고 토일은 휴일입니다. 를 switch문을 활용해서 출력하시오
char day = '일';
switch(day) {
case '월' : case '화' : case '수' : case '목' : case '금' :
System.out.println("근무일");
break;
case '토': case '일':
System.out.println("휴일");
break;
}
반복문
1. for(초기식; 조건식; 증감식){ }
Q. 1에서 100까지의 합을 for 문을 활용해서 합을 출력하시오
package javaStudy;
public class ForTest {
public static void main(String[] args) {
int i;
int sum;
for(i = 1, sum = 0; i<=100; i++) {
sum += i;
}
System.out.println("총합은? "+ sum);
}
}
2. while(조건식)
package javaStudy;
public class ForTest {
public static void main(String[] args) {
int i = 1;
int sum = 0;
while(i <= 100) {
sum = sum + i ;
i ++;
}
}
}
3. do{ 증감식 }while(조건식)
package javaStudy;
public class ForTest {
public static void main(String[] args) {
int i = 1;
int sum = 0;
do {
sum = sum + i;
i ++;
}while(i<=100); //초기식이 조건식에 부합하지 않아도 초기식만은 실행된다.
System.out.println("총합은? "+sum);
}
}
Q.조건문과 반복문을 활용해서 1에서 100까지의 숫자중에 홀수들의 합을 출력하시오.
package javaStudy;
public class ForTest {
public static void main(String[] args) {
int sum= 0;
for (int i = 1; i <=100; i ++) {
if (i%2==1) {
sum += i;
}
}
System.out.println("홀수들의 총합은? " +sum);
}
}
Q. 구구단 프로그램 중 2단 4단 6단 8단만 출력하시오
for(int i = 1; i<10; i++ ) {
if (i% 2==0) {
for (int j =1; j <10; j++) {
System.out.println(i +"*"+j+"="+i*j);
}
}
}
> continue; 를 이용한 또 다른 풀이
for(int i = 1; i<10; i++ ) {
if (i% 2==1) {
continue;
}
for (int j =1; j <10; j++) {
System.out.println(i +"*"+j+"="+i*j);
}
}
Q. 그 유명한 별 찍기?
> 내 풀이 (틀림)
for (int i =1 ; i<5; i ++) {
System.out.println();
for(int j =1 ; j<10; j++) {
if (j%2 == 1) {
System.out.println(" ");
System.out.println("*");
}
}
}
> 올바른 풀이
for(int i=0;i<4;i++){
for(int j=0;j<3-i;j++){
System.out.print(" ");
}
for(int j=0;j<2*i+1;j++){
System.out.print("*");
}
System.out.println("");
}
예 1 )
package javaStudy;
public class TestClass1 {
int a=1; //숫자형 변수 a에 1을 담는다
}
package javaStudy;
public class TestMain {
public static void main(String[] args) {
TestClass1 tc = new TestClass1(); //객체생성
System.out.println("객체의 메모리 주소값은"+tc);
System.out.println("객체 안에 들어있는 변수 a값은? "+ tc.a);
}
}
main 실행파일에 클래스 프로그램 객체를 생성해서 변수값을 얻을 수 있다.
예 2 ) 홍길순 학생을 객체생성 시키고 그 정보를 출력하시오
package javaStudy;
public class Student {
//멤버변수 객체변수 인스턴스변수 전역변수
String name = "홍길순";
int Age = 15;
int height = 175;
String addr = "전주";
private char gender = '여'; //private: 내부에서만
public char getGender(){ //public 메소드를 지정해준다.
return gender;
}
}
//객체생성
//형식
// //데이터 타입 (참조)변수 = new 연산자 생성자메소드();
package javaStudy;
public class TestMain {
public static void main(String[] args) {
Student s = new Student();
String stName = s.name;
System.out.println("객체의 메모리 주소 값은"+s);
System.out.println("객체 안에 들어있는 변수 a값은?" + stName);
System.out.println(s.Age);
System.out.println(s.height);
System.out.println(s.getGender());
//private 한 변수의 값을 public메소드를 통해 알아낼 수 있다.
}
}
http://www.tcpschool.com/java/java_modifier_accessModifier
코딩교육 티씨피스쿨
4차산업혁명, 코딩교육, 소프트웨어교육, 코딩기초, SW코딩, 기초코딩부터 자바 파이썬 등
tcpschool.com
접근 제거자에 대하여..
자주 쓰는 두개의 접근 제거자
1. PRIVATE
2. PUBLIC
예 3 ) 멤버 메소드 - 더하기 메소드
package javaStudy;
public class Student {
//메소드 만들기 설계
//더하기 메소드
public int add(int a, int b) {
int c = a+b;
return c;
}
}
package javaStudy;
public class TestMain {
public static void main(String[] args) {
Student s = new Student(); //객체 생성
int value = s.add(1004, 1005);
System.out.println("합은? "+ value );
}
}
예 4) 곱하기 메소드
Q. 245 *345의 곱을 구하는 메소드를 작성해보세요
package javaStudy;
public class Student {
public int times(int x,int y) {
int z =x*y;
return z;
}
}
package javaStudy;
public class TestMain {
public static void main(String[] args) {
Student s = new Student();
int value= s.times(245, 348);
System.out.println("245 곱하기 348은? " + value);
}
}
문제 ~~~ ) 1에서 100까지의 합을 구하는 class 프로그램을 작성하시오.
package javaStudy;
public class Plus {
public int result(int a, int b) {
int sum = 0;
for(int i=a; i <=b; i++) {
sum +=i;
}
return sum;
}
}
package javaStudy;
public class TestMain {
public static void main(String[] args) {
Plus p = new Plus();
int value= p.result(1,100);
System.out.println("1에서 100까지의 합은?" + value);
}
}