JAVA1

데이터와 연산

수업소개

컴퓨터는 '데이터'를 '처리'하는 기계입니다. 데이터마다 처리방법이 다릅니다. 그래서 데이터의 분류를 아는것이 중요합니다. 여기서는 '데이터'와 '처리'의 의미에 대해서 알아봅니다. 

 

 

Editor does not contain a main type 라는 에러가 발생하면 src 디렉토리로 소스코드 위치를 변경한 후에 실행시켜보세요. 보다 자세한 내용은 다음 수업을 참고해주세요. https://www.youtube.com/watch?v=Wtb755nwIwo

강의1

 

 

 

강의2

소스코드

변경사항

public class Datatype{
    public static void main(String[] args) {
		System.out.println(6); // Number
		System.out.println("six"); // String
		
		System.out.println("6"); // String 6
		
		System.out.println(6+6); // 12
		System.out.println("6"+"6"); // 66
		
		System.out.println(6*6); // 36
//		System.out.println("6"*"6");
		
		System.out.println("1111".length()); // 4
//		System.out.println(1111.length());
		
		System.out.println("Hello World"); //String 문자열
		System.out.println('H'); //Char 문자
		System.out.println("H");
		
	}
}

 

 

댓글

댓글 본문
  1. 신유정
    0425 완료
  2. 영철이
    2020.4.21 완료했어요!
  3. green diseny
    데이터 타입을 구분하는 이유는
    데이터 타입별로 연산방법이 다르기때문

    숫자는 //Number
    문자는 //String
  4. lisa4063
    Selection does not contain a main type라고 오류 뜨시는 분 확인하세요~~~~~~!!!!

    모듈 프로젝트로 생성이 된거에요
    프로젝트 삭제하시고 저장공간까지 다 날라신 후에
    새로 생성하실때 이름 짓고 Finish 누르지마시고 Next 눌러보면
    create module-info.java file 이게 체크돼있습니다.

    이거 체크 해제하시고 만드세요
    자바 9 이상부터는 모듈 프로그래밍이 기본으로 체크가 돼있어서 말이죠
    웬만하면 초반 공부하실때는 8로 하시는게 좋아보임
  5. dofvmrhwk
    다시 공부하니까 재밌네요! 학교에서 하는것 보단 훨씬 도움돼요 ㅎㅎ
    2020년 3월 29일
  6. 눈누난나
    완료
  7. 문병민
    데이터 타입을 구분하는 이유는
    1. 각 데이터 타입 별로 적용할 수 있는 연산이 다르기 때문

    숫자와 문자열을 표현하는 방법
    System.out.println(6); // Number
    System.out.println("hello"); // String

    감사합니다.
  8. 2020.03.09 완료
  9. 완료
  10. 맥쓰다 암걸림
    맥의 경우에 ^스페이스바가 한영 변환키로되어 있어
    이클립스 환경 설정에 들어가서 key검색후에Content Assist키를 원한는 단키로 설정하시면됩니다.
  11. 자바를자바라
    2020-03-02
    Data & Operation
    Data Type
  12. 지구평화
    데이터 타입을 구분하는 이유: 각각의 데이터 타입별로 어울리는(필요로 하는) 연산방법이 있기 때문.
  13. 정찰스
    컴퓨터는 내가 써놓은 것(데이터)이 number(숫자)인지, string(문자)인지 알 수가 없습니다. 그러므로 컴퓨터에게 "이것은 문자입니다!" 라고 알려주기 위해 구분하는 것이 데이터 타입을 구분하는 이유입니다.

    출력 구문(println)에 number 데이터를 넣으면 컴퓨터는 이를 number로 인식하고, 연산 기호가 추가되면 이를 계산합니다.
    만약 연산 기호에 상관없이 써놓은 그대로 출력하고 싶다면, 큰따움표("")를 추가해 컴퓨터에 string라고 알려주면 됩니다.
  14. 동동
    수광완료
  15. 영롱
    data 자체만으로는 우리에게 큰 의미를 가지지 않는다. 그 data를 가지고 연산하여 활용하는 것이 우리가 하는 일이다.
    적용할 수 있는 연산에 따라 Number, String 등 data type에 구분이 있다.
    컴퓨터를 다루는 기술에는 두 가지 흐름이 있다. 그것은 우리가 다루는 system에 '어떤 data가 있는가', '어떤 연산이 존재하는가' 라는 것이다. 이것들로 우리는 무궁무진한 일들을 할 수 있다.
    그 중에서도 Number와 String은 가장 중요한 데이터 타입이다.
  16. 자바 애플리케이션 실행의 두번째 영상을 보세요~!
    대화보기
    • Miae Roh
      파일을 src안에 넣으니깐 실행되는 이유가 뭔가요??
    • 뉴빈
      src 안에 넣으니까 바로 run 되네요!
    • 베이비유저<baby user>
    • 베이비유저<baby user>
    • dofvmrhwk
      sout 치고 ctrl+space 하는 재미가 있네요 ㅎㅎ
      맨앞에 //을 치면 그줄은 무시되는 줄이 된다!
      오늘강의도 잘봤습니다!

      2020/ 2/ 17
    • 완료...
    • 칩과데일
      완료
    • 동그리
      완료
    • c언어랑 비슷하면서도 다른 것 같기도 하고...? 자바는 처음인데 확실히 c 하고 나서 하려니까 어렵지 않아서 좋아요
    • 임지수
      2020.01.23 완료
    • Kimjh(dondecoman)
      20200121 완료
    • 뉸찡
      2020.01.19 완료! 감사합니다 차근차근 배우는 재미가 있어요
    • 2020.01.15.WED
    • 코딩대장
      2020-01-13 감사합니다
    • 라또마니
      완료, 감사합니다.
    • 취생아
      완료 2020.01.10
    • 김소원
      저도 editor does not contain a main type이라는 문구가 떠서 알아보니 생성할때 'file'이 아닌 'class'로 생성하라던데 하니까 되긴 되던데 왜 그런거죠?ㅜㅜ
    • 소금설탕
      완료. 고맙습니다.
    • 윤영휘
      2019.12.30 완료!
    • 모른다요
      완료했습니다.
    • 윌리엄
      문자열을 나누면 컴퓨터가 할 수 있는 것이 기하급수적으로 많아지게 됩니다.

      강의를 들으셨다면 새로운 것을 배울게 아니라 배운 것을 한 번 써먹어 보세요. 앞만 보고 가기보단 이제까지 배운 것을 사용해 익숙해지는 것도 중요합니다.

      System.out.println('h'); //char (문자)
      System.out.println("h"); //String h (문자열)

      자, 다음 두 가지의 데이터 타입을 출력해보면 우리 눈으로 보기엔 둘다 h로 나옵니다. 하지만 컴퓨터는 분명히 둘을 다른 문자로 인식합니다.

      System.out.println('Hello World');
      이렇게 문자 타입으로 정하는 ''에 2개 이상의 문자를 입력하면 에러가 나옵니다.
      System.out.println('2');
      또한 ''에 숫자를 넣으면 정상적으로 2라고 출력됩니다. 물론 이때 2는 다른 2이죠.
      System.out.println('2'+'2');
      라고 입력해서 run하면 4가 아닌 100이라는 값이 나오니까요. 컴퓨터는 '2'와 2를 다른 데이터로 읽습니다.
      즉 컴퓨터에서 문자 타입 한 글자의 모든 문자나 숫자, 기호(기호도 됩니다)를 입력받고, 그것은 다른 타입의 데이터와 별개의 것으로 인식됩니다.

      왜 문자를 입력하는 타입을 두가지나 만든 걸까요? 이런 의문이 든다면 지금까지 배운 걸 이용해 둘의 차이를 규명해보는 것도 수업의 일환입니다. 다음을 입력해보세요.

      System.out.println("Hello World!!");//String
      System.out.println('H'+'e'+'l'+'l'+'o'+' '+'W'+'o'+'r'+'l'+'d'+'!'+'!'); //char
      System.out.println("H"+"e"+"l"+"l"+"o"+" "+"W"+"o"+"r"+"l"+"d"+"!"+"!"); //String

      이렇게 하면 1번째 줄 코드와 3번째 줄 코드는 같은 결과가 나오지만, 2번째 줄은 숫자로 나옵니다. 이는 컴퓨터가 타입을 처리하는 데에 있습니다. 컴퓨터(computer)는 계산하는(compute) 기계입니다. 그래서 숫자를 사용할 때, 문자열을 사용할 때 전부 계산한다고 말해왔습니다. 컴퓨터에선 결국 모든 데이터는 숫자입니다. 하지만 계산한 결과값을 어떻게 처리하느냐는 또 다른 문제죠. 문자열의 목적은 사용자에게 문자를 보여주는 게 목적입니다. 문자를 보여주는 데만 쓰면 컴퓨터가 데이터를 처리할 때 얼마나 낭비일까요? 숫자는 10개지만, 알파벳, 숫자, 기호를 전부 데이터를 처리하는데 사용한다면 컴퓨터는 사람의 상식으로는 이해하기 힘들지만 어쨌든 사람으로서는 해낼 수 없는 계산까지 성공할 수 있습니다. 앞으로 장차 우리가 더 배워나간다면 이 문자를 사용해 우리가 편하게 이용하는 프로그램들을 어떻게 만들 수 있을지도 생각해볼 수 있을겁니다.
    • gds1423
      데이터 타입별로 어울리는 연산 방법을 사용해야 하기 때문에 데이터 타입을 엄격하게 구분한다.

      System.out.println(6); //Number(숫자)
      System.out.println('6');//char(문자)
      System.out.println("6");//String(문자열)
    • 정훈
      mac에서 자동완성 ctrl+space가 기본적으로 spotlight 검색으로 쓰고 있어서 , 유지하려면 변경이 필요합니다.
      저는 환경설정 -> General -> keys -> content Assist 를 편집하여 Ctrl+space를 원하는 키로 변경하여 사용하였습니다.^^
    • 잘 들었습니다 ^^
    • 쑤우
      수강완료. 감사합니다~
    • 야무치이처누기
      자바 어설프게 공부해서 처음부터 다시 합니다. 정말 감사드립니다.
    • 멋지게살자
      중요한걸 다시금 깨닫게 되었습니다.
    • 데이
      데이터는 중요하군요.
    • 크흠..
      저두 그렇게 떴었는뎅 전부다 지우고 처음 "이클립스 Hello world" 강의해주실 때 보면서 처음부터 차근차근 하니까 잘 되더라구요!! ㅎㅎ 그리고 지우면 혼선이 와서 안대는거같아영...
      대화보기
      • 햄쮸걸
        귀엽...ㅋㅋㅋㅋ
        대화보기
        • 햄쮸맨
          오우 찾아보니까 전 강의 영상에 다 나와 있었네요. ㅎㅅㅎ).. 역시 금방 배우고 금방 까먹어버리는..햄쮸맨이였다...
        • 햄쮸맨
          음냐 처음에 String 6까지 중간 저장하고 실행하니 헬로 월드가 뜨더라고요! ㅋㅋㅋㅋㅋ..그래서 확인 해봤더니 클래스 파일이 생성이 안 되더군요..그래서 알아봤더니 처음에 자바 프로젝트 만들때 소스랑 실행 파일을 따로 폴더에 저장하도록 만들어서 그랬어요. (기본 설정이 그렇더군요.) 그래서 설정 바꿔서 새로 만들고 또 실행 했더니 이번엔 클래스 파일 제대로 생성해서 불러오더군요. 그런데 첫번째 행에 에러가 있어서 '에러가 있는데도 실행 할까요?' 묻길래 에러 고치고 실행했더니 그제서야 깔끔하게 실행 되네여. 그런데 소스랑 실행 파일이랑 따로 폴더 구분해서 생성되면 나중에 정리가 편할 것 같은데 그런 경우에는 어떻게 자바 파일을 컴파일 해서 클래스 파일이 생성되나요? 경로 지정을 따로 해줄 수 있을까용? 자바 에플리케이션 실행 편에 나왔는데 제가 까먹었을까요?? 암튼 문제 생겼을때 직접 검색하고 이전 강의 찾아보고 하니까 나름 재미가 있네요.
        • 조예인
          에러나서 당황했는데 친절하게 영상 올려주시고, 그 영상 내용도 오류를 통해 더 배워갈 수 있어서 좋은 기회라고 위로해주셔서 너무 좋았어요. 감사해요 ㅎㅅㅎ
        • 조예인
          에러나서 당황했는데, 친절하게 에러를 해결하는 영상도 올려주시고, 그리고 그 내용도 위로가 들어있어서 너무 좋았어요. 감사해요.
        버전 관리
        egoing
        현재 버전
        선택 버전
        graphittie 자세히 보기