if (true or false 조건){
true 면 실행
}
false이면 실행 x
if (조건){
true시 실행
}
else{
false면 실행
}
if (조건){
true 실행
}
else if (조건){
else if 의 조건이 참이면 실행
여러개가 올수있다.
}
else{
else는 한번만
}
조건문의 응용 (in eclipse)
-입력값 전달 :
1.Run Configurations 클릭 -> 2.종이모양 (New launch Configuration 클릭) -> 3.Name : ~input - egoing 입력
-Argument : 입력값 -> egoing or K8805 입력 (Program Arguments)
->right 출력 (args[0] = egoing) (아마 String[] args에 초기값을 대입하는 방법으로 추측됨)
조건문의 중첩
String id = args[0]; ("egoing")
String password = args[1]; ("111111")
if (){
실행문
if (){
중첩 if 문
}
}
switch(조건){
case 1:
system.out.println(블라블라);
break;
case 2:
system.out.println(블라블라2);
break;
default:
system.out.println(블라블라 디폴트);
}
break;를 넣지않으면 예를들어 case 2에 해당한다, 이 이후로 case문이 전부 실행됨.
default는 모든 케이스에 해당하지않는 나머지 case.
조건문에서의 조건은 byte, short, int, String, char 등 몇몇으로 제한됨.
switch문은 if 문으로 변경이 가능하다. 때에따라 편한것을 사용하면됨.
while (조건(논리연산자, Boolean, 비교연산자 등 -> 언제까지, true일동안)){
반복 실행 영역
}
int i = 0; // 초기값
while (i < 10){ // 조건
i++; // 초기값 변경
}
-for 문
for(초기화; 종료조건; 반복실행)
{
반복적으로 실행될 구문
}
예)
for (int i = 0; i < 10; i++)
{
반복구문
}
for문에 초기값, 종료조건, 반복실행 모두 넣음.
for ( ){
break; -> 즉시 종료
}
for( ){
if (){
continue; -> 현재 반복문 종료, 바로 초기값 변경부분 실행.
}
System.out.println(\n);
}
-간간히 쓰는데 간간히 쓰니 역할을 까먹을때가 있음.
※ Boolean도 데이터 타입.
예)
String[] classGroup = {"최진혁", "이유리", "남궁민"};
System.out.println(classGroup[0]);
-String[] : 상수의 데이터 타입
-classGroup : 변수
-상수 : "최진혁" 등 -> 원소(element)들
-classGroup[0] : [0]-> index(색인)
String[] classGroup = new String[4];
// new는 객체지향에서 배움. 변수 classGroup은 String변수 4개를 가지는 배열임.
classGroup[0] = "최진혁";
// index[0]에 "최진혁"이라는 데이터를 대입.
System.out.println(classGroup.length); // 4
package 연습용;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
String[] classGroup = new String[4];
Scanner sc = new Scanner(System.in);
for (int i = 0; i < 4; i++)
{
classGroup[i] = sc.next();
}
for (String e: classGroup) {
System.out.print(e + " ");
}
// String e: 배열 안에있는 변수타입
// classGroup: 배열
}
}
※ nextInt다음 nextLine을 사용할경우:
nextInt는 개행문자를 제거하지않으므로 scanner.nextLine()을 하나 더 사용하여 개행문자를 받아준다.
: 웅장(?), 결함 x, 유지보수 용이.
public static/*(미지의 영역)*/ void main(string[] args){
// void main -> main 메소드임.
}
//정의
public static void numbering(){
변수
메소드
}
public static void main(string[] args){
numbering(); // 호출
}
public static void numbering(int limit){
// 파라미터 부분 -> 가변적요소. 변할수있음.
}
public static void main(String[] args){
numbering(5); // 입력값, 인자(argument) 대입
}
-입력값을 제어함.
public static void String[] getMembers(){
String[] members = {"최진혁", "이유리", "남궁민", "최자자"};
return members; // 배열 반환
}
public static void main(String[] args){
String[] members = getMembers(); // 배열 받기 가능
}
public static String(String 메소드) numbering(){
return String(String 데이터타입 반환)
}
같은 데이터타입을 반환해야한다.
class InputDemo{
public static void main(String[] args){
/* void : 봔환 없음
main: 시작 함수
String[] args : 초기데이터를 입력해서 사용할수도있다. (Run Configuration 이용)
}
}
import java.util.Scanner
Scanner sc = new Scanner(System.in);
/* Scanner 객체 생성후 사용자의 입력값을받아 변수 sc에 대입
(System.in은 사용자가 입력할값을 받음)*/
File file = new file("out.txt");
Scanner sc = new Scanner(file);
/*File 데이터 형식을 사용해 file 변수를 생성하고
file 객체를 생성하여 "out.txt"파일을 불러와서 file변수에 대입
이를 Scanner메소드를 통해 file을 불러옴*/
Java Season 1 (절차지향) 종료.