TIL 2022-09-01

JYR00·2022년 9월 1일
0

TIL

목록 보기
1/60



한글을 더 잘 인식시키기 위해서 utf-8로 변환시켜준다.



src:source의 약자
소스: 프로그래밍 언어로 작성된 텍스트파일
컴파일: 소스파일을 컴퓨터가 이해할 수 있는 기계어로 만드는 과정
자바 응용 프로그램으로는 JVM에 의해 리눅스, 맥, 윈도우 등에서 실행가능하다.
JVM:자바 가상 머신(JAVA VIRTUAL MACHINE)


workspace를 변환시키기 위해서는 file-switch workspace-other를 눌러준다.
그러면 이클립스가 재부팅이 된다.

  • class의 첫글자는 대문자

  • eclipse는 자바 개발 도구이다. inteliJ라는 것도 요즘 뜨고 있다...
    자바 응용프로그램 실행은 main()메소드에서 실행한다.
    그렇기 때문에 하나의 클래스 파일에 두 개 이상의 main()메소드가 있을 수 없다.!!

  • piblic class Hello{}<-여기 안은 class
    public sstasticint sum(int x,int y) <-sum이라는 메소드
    int x,int y는 매개 변수
    //메소드와 함수는 같은 걸 말하는 것이다.
  • public static void main(String[]args){}<-main메소드
    아까 언급한 것처럼 main메소드는 한 개만 넣을 수 있다.
  • ctrl shift c => 주석처리
    식별자: 클래스, 변수, 상수, 메소드 등에 붙는 이름
    int i=20; 여기서 i가 식별자.



1byte = 8bit 4개 다 정수타입
byte
short
int (가장 많이 사용됨)
long

실수타입 (사용빈도 둘 다 비슷)
float
double

문자타입
char

논리
boolean

+ string 클래스로 문자열 표현한다. String toolName="JDK";
  • toolName+1.8 => JDK1.8
    "("+3+","+5+")"= (3,5)로 출력이 된다.

  • 변수
    :프로그램 실행중 임시 값을 임시저장하기 위한 공간

  • '\n' 줄 바꿈

  • System.in 키보드와 연결된 자바의 표준 입력 스트림

  • new를 통해 객체를 생성할 수 있다.




변수, 리터럴, 상수

원의 면적 구하기 p.60

package test;

public class CircleArea {

	public static void main(String[] args) {
      final double PI=3.14; //원주율을 상수로 선언
      double radius=10.2; //원의 반지름
      radius=15;  //이렇게 하면 반지름 값을 수정할 수 있다.
      //PI=3.11이렇게 하면 에러가 나온다.
      double circleArea=radius*radius*PI;
      //반지름은 100으로 나올지는 몰라도 면적 값은 위의 값으로 계산되어 나온다. radius=100;
      
      System.out.print("반지름"+radius+",");  //print+ln->줄바꿈하면서 프린트 출력
      System.out.println("원의 면적="+circleArea);
	}
}

상수 선언 / 데이터타입 / 상수이름 / 초기화
final double PI = 3.14;

Scanner(p.63)

객체 생성=> Scanner scanner = new Scanner(System.in);

package test;

import java.util.Scanner;

public class ScannerEx {
//p.65
	public static void main(String[] args) {
           System.out.println("이름, 도시, 나이, 체중, 독신 여부를 빈칸으로 분리하여 입력하세요.");
           
           //자동 import => ctrl + shift + o(alphabet o)
           Scanner scanner = new Scanner(System.in);
           
           String name=scanner.next();
           System.out.println("당신의 이름은 "+name+"입니다.");
           
           String city=scanner.next();
           System.out.println("당신이 사는 도시는 "+city+"입니다.");
           
           int age=scanner.nextInt();
           System.out.println("당신의 나이는 "+age+"입니다.");
           
           double weight=scanner.nextDouble();
           System.out.println("당신의 몸무게는 "+weight+"입니다.");
           
           boolean single=scanner.nextBoolean();
           System.out.println("당신의 독신 여부는 "+single+"입니다.");
           
           scanner.close();
	}

}

연산자

package test;

public class LogcalOperator {

	public static void main(String[] args) {
		System.out.println("1."+('a'>'b'));         //a문자와 b문자 비교. false
		System.out.println("2."+(3>=2));           // true
		System.out.println("3."+(-1<0)); 		   // true
		System.out.println("4."+(3.45<=2));     // false
		System.out.println("5."+(3==2));            //false
		System.out.println("6."+(3!=2));              //true
		System.out.println("7."+(!(3!=2)));           //false
		System.out.println("8."+((3>2)&&(3>4)));     // false
		System.out.println("9."+((3!=2)||(-1>0)));       // true
		System.out.println("10."+((3!=2)^(-1>0)));      //true
		
		
		int a=3, b=5;
		System.out.println("두 수의 차는? "+((a>b)?(a-b):(b-a)));
		}
}

a^b =xor 연산. a와 b가 같으면 false

xor과 or의 차이 : 두 조건 중 하나만 같아야 xor은 true가 된다. 그러나 or은 두 조건 다 만족해도 true가 된다.

조건연산(삼항연산)

세 개의 피연산자로 구성되어 있다.

condition ? opr2 : opr3

int x =5, y =3;
int big = (x>y)?x:y;
true이기 때문에 x가 실행된다.

만약 false였다면 y가 실행된다.

연습문제

public static void main(String[] args) {
		//p.87
		  //1번  
//			System.out.println("두 정수를 입력하세요");
//			Scanner scanner = new Scanner(System.in);
//			int x = scanner.nextInt();
//			int y = scanner.nextInt();
//			int sum=  x +y;
//			System.out.println(x+"+"+y+"의 값은 " +sum+"입니다");
		//System.out.println(x+"+"+y+"의 값은 " +(x+y)+"입니다");
//			
//			scanner.close();
//			
			//2번
//			System.out.println("몇 층인지 입력하세요");
//			Scanner scanner = new Scanner(System.in);
//			int floor=scanner.nextInt();
//			int height=floor*5;
//			System.out.println(height+"m 입니다.");
//			
//			scanner.close();
		
		
		//3번
		System.out.println("x값을 입력하세요");
		Scanner scanner = new Scanner(System.in);
		int x = scanner.nextInt();
		int y= x*x-3*x+7;
		
		System.out.println(y);
		
		scanner.close();
	}

}

0개의 댓글