본문 바로가기

자바

자바 기본

1) Scanner, next(), nextInt()

package temp;

 

import java.util.Scanner; // Scanner객체 사용하기 위해 작성

 

public class Temp { // 클래스이름은 대문자로 시작권장

 

public static void main(String[] args) { // void

System.out.print("학번 : "); // 표준 출력 스트림 System.out

Scanner scan = new Scanner(System.in);

// System.in을 직접 사용이 가능하지만 어려움이 존재하기에 Scanner 객체 사용

// System.in.read() 함수는 end of stream (-1)을 만날 때까지 동작, backspace로 편집이 가능하며 enter키로 데이터를 읽기도 가능

// '윈도우 : CTRL+z, 리닉스/매킨토시 : CTRL+d' == -1

String num = scan.next(); // 문자열 입력 함수 : next(), space로 구분

// nextLine같은 경우는 space바도 입력 가능하며 Enter키로 구분

System.out.print("나이 : ");

int age = scan.nextInt(); // 정수 입력 함수 : nextInt()

 

System.out.println("학번 : " + num); // 줄바꿈 포함

System.out.println("나이 : " + age);

 

scan.close(); // Scanner 객체인 sc 종료

}

}

 

2) final

package temp;

 

public class Temp {

 

public static final double PI=3.14; // 21버전부터는 main함수 밖에 입력

// final 키워드 사용시 실행중 값 변경 불가, 주로 static과 함께 작성

 

public static void main(String[] args) {

double radius = 10.2;

double circleArea = radius*radius*PI;

 

System.out.println("반지름 : " + radius);

System.out.println("원 넓이 : " + circleArea);

}

}

 

3) switch,

package temp;

 

import java.util.Scanner;

 

public class Temp {

 

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

 

System.out.print("/여름/가을/겨울 : ");

String season = sc.next();

 

char c = season.charAt(0); //인덱스가 0이므로 문자열에서 0번째 인덱스만 문자로 추출(문자입력은 문자열에서 처리)

 

switch(season) { //season 대신 c 입력시 봄, , , 겨 로 수정

// 문자열, 문자, 정수리터럴은 사용가능, 실수 리터럴은 사용 불가

case "":

System.out.println("3~5");

break;

case "여름":

System.out.println("6~8");

break;

case "가을":

System.out.println("9~11");

break;

case "겨울":

System.out.println("12~2");

break;

default:

System.out.println("잘못된 입력");

}

sc.close();

}

}

 

4) .equals()

package temp;

 

import java.util.Scanner;

 

public class Temp {

 

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

 

System.out.print("/여름/가을/겨울 : ");

String season = sc.next();

 

char c = season.charAt(0);

 

// if(c=='') {} //기본데이터 타입(정수, 실수, 문자, 불린) 비교연산자 사용가능

// if(season.equals("")) {}

 

 

sc.close();

}

 

}

 

5) 강제형변환

package temp;

 

import java.util.Scanner;

 

public class Temp {

 

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

 

System.out.print("커피를 주문: " );

String coffee = sc.next();

int num = sc.nextInt();

int total;

 

switch(coffee){

case "에소프레소":

total=2000*num;

if(/*coffee.equals("에소프레소")&&*/num>=10) {

total=total-(total/20);

//(double)total=total*0.95; // 컴파일에러, int형은 double형으로 변환 불가

}

System.out.println("가격 : " + total);

break;

case "아메리카노":

total=2500*num;

System.out.println("가격 : " + total);

break;

case "카푸치노":

total=3000*num;

System.out.println("가격 : " + total);

break;

case "카페라떼":

total=3500*num;

System.out.println("가격 : " + total);

break;

}

sc.close();

}

 

}

 

6) 다중반복문

package temp;

 

public class Temp {

 

public static void main(String[] args) {

/*for(int i=1; i<=5; i++) {

for(int j=0; j<i; j++) {

System.out.print("*");

}

System.out.print("\n");

}

*/

/*for(int i=1; i<=5; i++) {

for(int j=6; j>i; j--) {

System.out.print("*");

}

System.out.print("\n");

}*/

for(int i=1; i<=5; i++) {

int j;

for(j=6; j>i; j--) {

System.out.print(" ");

}

for(int k=0; k<i; k++) {

System.out.print("*");

}

if(j==i) System.out.print("\n");

}

 

}

}

 

7) charAt()

package temp;

 

import java.util.Scanner;

 

public class Temp {

 

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);

System.out.print("알파벳 한 문자를 입력>>");

String s= sc.next(); // 문자열로 읽음

char c=s.charAt(0); // 입력한 문자열에 0번 인덱스의 문자를 반환

 

for(char i='a'; i<=c; i++) {

for(char j=i; j<=c; j++) {

System.out.print(j);

}

System.out.println();

}

 

/*

String s= sc.next();

for(int i=0; i<s.length(); i++) {

int tempi=i;

for(int j=s.length(); j>i; j--) {

char c= s.charAt(tempi);

System.out.print(c);

tempi++;

}

System.out.print("\n");

tempi=i;

}*/

sc.close();

}

 

}

 

8) 

package temp;

 

import java.util.Scanner;

 

public class Temp {

 

public static void main(String[] args) {

System.out.print("정수 10개 입력");

Scanner sc= new Scanner(System.in);

int arr[]= new int[10];

 

for(int i=0; i<arr.length; i++) {

arr[i]=sc.nextInt();

}

 

for(int i=0; i<arr.length; i++)

if(arr[i]%3==0)System.out.print(arr[i]);

}

}

 

9) 

package temp;

 

import java.util.Scanner;

 

public class Temp {

 

public static void main(String[] args) {

Scanner sc= new Scanner(System.in);

System.out.print("단 입력하세요>> ");

int num=sc.nextInt();

 

for(int i=1; i<10; i++) {

System.out.println(num+ "*" +i +"="+ num*i);

//System.out.printf("%d*%d=%2d\n", num, i,(num*i));

// printf는 작성은 가능하나 미권장

}

sc.close();

}

 

}

 

10) 

package temp;

 

import java.util.Scanner;

 

public class Temp {

 

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);

 

int count=0, n=0;

double sum=0;

 

System.out.println("정수 입력후 마지막에 0 입력");

while((n=sc.nextInt())!=0) { //sc.nextInt()!=0은 컴파일은 되지만 원하는 답은 안나옴

sum=sum+n;

count++;

}

/*

while(true){

n=sc.nextInt();

if(n==0)break;

sum=sum+n;

count++;

}

*/

System.out.print("수의 개수는 "+count+"개이며");

System.out.println("평균은 "+sum/count+"입니다");

 

sc.close();

}

}

 

11) 

package temp;

 

import java.util.Scanner;

 

public class Temp {

 

public static void main(String[] args) {

Scanner sc= new Scanner(System.in);

int count=0;

int com=(int)(Math.random()*10)+1;

while(true) {

System.out.println("컴퓨터가 생각한 수를 맞춰보세요(1~10)>>");

int num=sc.nextInt();

if(num>com) {

System.out.println("입력한수가 큽니다");

count++;

}

if(num<com) {

System.out.println("입력한수가 작습니다");

count++;

}

if(num==com) {

count++;

break;

}

/*

* int count=1;

if(com==num){

System.out.println(count+"만에 맞힘");

break;

}else if(com>num)

System.out.println("입력한 수가 컴보다 작다");

else System.out.println("입력한 수가 컴보다 크다");

}

*/

}

System.out.println(count+"번 만에 맞췄습니다");

sc.close();

}

}

 

12) char형을 이용한 반복문

package temp;

 

import java.util.Scanner;

 

public class Temp {

 

public static void main(String[] args) {

/*char a='a';

do {

System.out.print(a);

a= (char)(a+1);

}while(a<='z');*/

 

for(char a='a'; a<='z'; a++){

System.out.print(a);

}

}

}

 

'자바' 카테고리의 다른 글

업캐스팅, 다운캐스팅, instance of  (0) 2024.05.02
접근지정자, super()  (0) 2024.05.02
this(), this. , 배열 객체 래퍼런스  (0) 2024.05.02
배열, for-each문, try-catch-finally문  (0) 2024.05.02
시작하며  (0) 2024.05.02