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 |