- jdk 여러개 동시에 설치 가능함
java 제어문
- 분기(조건)문
- 두 갈래(true/false) 흐름을 생성
- 비교연산자/ 논리연산자를 사용함
- if (조건식) { 실행문 }
- if (조건식) { 실행문 } else { 실행문2 }
- 반복문
- for (초기식; 비교식; 증감식) { 실행문 }
- while
- do ~ while
public class ConstantEx01 {
public static void main(String[] args){
//변수의 선언
int intNum1=10;
System.out.println(intNum1);
intNum1 =20; //변수는 항상 override해서 저장한다
System.out.println(intNum1);
//상수의 선언
final int INT_NUM2=10; //상수는 일반적으로 전체 대문자로 선언한다. 두 단어는 언더바로 연결한다.
System.out.println(INT_NUM2);
// NUM2=20; //상수에는 값을 재할당 할 수 없다. //중간에 값이 고쳐지면 안되는 것에 final 선언함
//System.out.println(NUM2);
}
}
2
public class TypeCastingEx01 {
public static void main(String[] args){
//형변환
short s1=10;
int i1 = s1; //자동 형변환 //데이터 타입이 작은데서 큰데로 가는 경우
System.out.println(i1);
float f1 = 10.0F;
double d1= f1; //자동 형변환
System.out.println(d1);
char c1 = 'A';
int i2 = c1; //자동 형변환
System.out.println(i2);
}
}
3
public class TypeCastingEx02 {
public static void main(String[] args){
//형변환
int i1=20;
// short s1 = i1; // 데이터타입이 작은 곳으로 변경하는 경우 자동형변환이 되지 않음
short s1 = (short)i1; //강제 형변환
System.out.println(s1);
char c1= 'A';
int i2=c1;
int i3=i2+3;
System.out.println(i3);
System.out.println((char)i3); // 강제 형변환 //정수 i3에 해당되는 문자를 출력할 때
}
}
4
public class CodeBlockEx01 {
public static void main(String[] args){
int num1 =10;
{
//코드블럭
int num2 =20; //지역변수
System.out.println(num1);
System.out.println(num2);
}
System.out.println(num1);
// System.out.println(num2); //지역변수를 전역에서 호출할 수 없음
}
}
5
public class OperEx01 {
public static void main(String[] args){
//산술 연산자 + - * / %
int i1=10;
int i2=20;
int sum1= i1+i2;
System.out.println(sum1);
short s1 =10;
short s2 =20;
// short sum2 =s1 +s2; //형변환 오류남 // 산술연산은 int로 자동 변환됨
short sum2 =(short)(s1 +s2);
System.out.println(sum2);
System.out.println(5/2); //정수에 정수를 연산하면 소수점은 버림 //주의할것!!!!!!
System.out.println(5/2.);
}
}
6
public class OperEx02 {
public static void main(String[] args){
// 나눈 나머지 %
// 숫자를 그룹화 (짝수와 홀수의 구분)
// 1%2=1
// 2%2=0
// 3%2=1
// 4%2=0
System.out.println(1%2);
System.out.println(2%2);
System.out.println(3%2);
System.out.println(4%2);
System.out.println(3.2%2);
}
}
7
public class OperEx03 {
public static void main(String[] args){
// 증감연산자
int a=10;
a++; // a = a + 1;
System.out.println(a);
a--; // a = a - 1;
System.out.println(a);
}
}
8
public class OperEx04 {
public static void main(String[] args){
// 대입(할당)연산자 =
// 다른 연산자 결합 += -=
int num1 = 1;
num1 += 2; // num1 = num1 + 2;
System.out.println(num1);
num1 -= 2; // num1 = num1 - 2;
System.out.println(num1);
}
}
9
public class OperEx05 {
public static void main(String[] args){
// 관계연산자
int a =10;
int b =5;
System.out.println(a == b);
System.out.println(a != b);
System.out.println(a = b); //관계연산자를 대입연산자로 잘못 썼을경우 에러가 안 남
System.out.println();
//논리연산자 && ||
// && 양쪽조건이 참일 때만 참
// || 양쪽조건이 거짓일 때만 거짓
boolean bool1= (10>3);
boolean bool2= (3>10);
System.out.println(bool1 && bool2);
System.out.println(bool1 || bool2);
// 3 < x < 10
// (3 < x) && (x < 10)
}
}
10
public class OperEx06 {
public static void main(String[] args){
// 문자열 연결 연산 +
String str = "Hello";
str = str + " World";
System.out.println(str);
//산술연산, 문자열 연결연산 혼합사용
System.out.println(1 + 1 + "1");
System.out.println(1 + (1 + "1")); //괄호는 최우선 연산자
System.out.println(1 + 1 + (1 + "1"));
System.out.println("1" + 1 + 1);
}
}
11
public class ConditionEx01 {
public static void main(String[] args){
//제어문
System.out.println("시작");
int n = 10;
if(n==10){ //괄호 안에는 논리연산자와 비교연산자가 들어감
System.out.println("실행문 1"); //참일 때 실행
}else{
System.out.println("실행문 2"); //거짓일 때 실행
}
System.out.println("끝");
}
}
12
public class ConditionEx02 {
public static void main(String[] args){
//제어문
System.out.println("시작");
int n = 2;
//n 이 짝수인지 홀수인지 출력하는 구문
if(n%2==0){
System.out.println("짝수");
}else{
System.out.println("홀수");
}
System.out.println("끝");
}
}
13
public class ConditionEx03 {
public static void main(String[] args){
//if 문 중첩
int n = 10;
int i = 5;
if(n==10){
if(i==5){
System.out.println("실행문 1");
}else{
System.out.println("실행문 2");
}
}else{
if(i==5){
System.out.println("실행문 3");
}else{
System.out.println("실행문 4");
}
}
}
}
14
public class ConditionEx04 {
public static void main(String[] args){
// 학점이 90>= A, 80>= B, 70>= C, 60>= D, 기타 F
int hakjum = 76;
if(hakjum>=90){
System.out.println("A");
}else{
if(hakjum>=80){
System.out.println("B");
}else{
if(hakjum>=70){
System.out.println("C");
}else{
if(hakjum>=60){
System.out.println("D");
}else{
System.out.println("F");
}
}
}
}
}
}
15
public class ConditionEx05 {
public static void main(String[] args){
// 학점이 90>= A, 80>= B, 70>= C, 60>= D, 기타 F
//if ~ else if ~
int hakjum = 76;
if(hakjum>=90){
System.out.println("A");
}else if(hakjum>=80){
System.out.println("B");
}else if(hakjum>=70){
System.out.println("C");
}else if(hakjum>=60){
System.out.println("D");
}else{
System.out.println("F");
}
}
}
16
public class ConditionEx06 {
public static void main(String[] args){
// 프린트문을 전부 다쳐주는 것이 아니라 변수에 담아서 마지막에 출력하는 방법
char grade;
int hakjum = 76;
if(hakjum>=90){
grade = 'A';
}else if(hakjum>=80){
grade = 'B';
}else if(hakjum>=70){
grade = 'C';
}else if(hakjum>=60){
grade = 'D';
}else{
grade = 'F';
}
System.out.println("학점 :" +grade);
}
}
17
public class ConditionEx07 {
public static void main(String[] args){
// switch ~ case ~ break
/* switch (변수){ //변수의 데이터타입 byte, short, char, int
case 값: //if문은 횡적인 비교를 하기때문에 조건이 늘어나면 실행속도 느려짐
실행문;
case 값:
실행문;
default:
실행문;
}
*/
// int data = 10;
// long data = 10L; // 데이터타입이 long타입이라 오류남
String data = "10"; // String 타입 가능 (JDK 7 버전이후)
switch(data){
case "10":
System.out.println("10"); break; //break를 걸지 않으면 밑에 모두 출력됨
case "20":
System.out.println("20"); break;
case "30":
System.out.println("30"); break;
default:
System.out.println("기타");
}
}
}
18
public class ConditionEx08 {
public static void main(String[] args){
// switch 문으로 학점 계산
int hakjum = 88;
switch(hakjum/10){
case 9:
System.out.println('A'); break;
case 8:
System.out.println('B'); break;
case 7:
System.out.println('C'); break;
case 6:
System.out.println('D'); break;
default:
System.out.println('F');
}
}
}
19
public class LoopEx01 {
public static void main(String[] args){
/* 반복문
System.out.println("Hello World");
System.out.println("Hello World");
System.out.println("Hello World");
System.out.println("Hello World");
System.out.println("Hello World");
*/
for(int i=1; i<=5; i++){
System.out.println("Hello World");
}
// 초기식 공백으로 두고 밖에서 선언 해도 됨
int i=2;
for(; i<=5; i++){
System.out.println("Hello");
}
}
}
20
public class LoopEx02 {
public static void main(String[] args){
//반복문 응용
// 1 3 5 7 9 등차수열
for(int i=1; i<=10; i++){
if(i%2==1){
System.out.println(i);
}
}
// 1 3 5 7 9
for(int i=1; i<=10; i=i+2){
System.out.println(i);
}
// A~Z 알파벳
for(char i='A'; i<='Z';i++){
System.out.print(i);
}
System.out.println();
//구구단 3단 ... 3 X 1 = 3 ...
for(int i=1; i<=9; i++){
System.out.println("3 X "+i+" = "+i*3);
}
//구구단 3단
String result = ""; //변수를 먼저 지정하고 변수에 누적해서 출력하는 방식
for(int i=1; i<=9; i++){
result +="3 X "+i+" = "+i*3 +"\n";
}
System.out.println(result);
}
}
21
public class LoopEx03 {
public static void main(String[] args){
//반복문 응용
for(int i=1; i<=5; i++){
for(int j=1; j<=5; j++){
System.out.println(i + " : " +j); //25번 반복됨
}
}
}
}
22
public class LoopEx04 {
public static void main(String[] args){
//별표피라미드
for(int i=1; i<=10; i++){
for(int j=1; j<=i; j++){
System.out.print("*");
}
System.out.println();
}
//별표역피라미드
for(int i=10; i>=1; i--){
for(int j=1; j<=10-i; j++){
System.out.print(" ");
}
for(int j=1; j<=i; j++){
System.out.print("*");
}
System.out.println();
}
}
}
23
public class LoopEx05 {
public static void main(String[] args){
//구구단
for(int i=1; i<=9; i++){
for(int j=1; j<=9; j++){
System.out.print(i+" X "+j+" = "+i*j+"\t");
}
System.out.println();
}
}
}
댓글 없음:
댓글 쓰기