2017-04-13 1 views
3

자바 코드를 올바르게 가져 오지 못했습니다. 필자의 System.out.Println은 입력을 요구하지 않는다. 모든 코드가 오류없이 잘 처리됩니다. 그러나 그것은 단지 아무것도 출력하지 않거나 입력을 요청하는 것처럼 보이지 않습니다.자바가 키보드 입력을 요청하지 않거나 요청하지 않습니다.

//Author Adam Duffy 
package test1; 

import java.util.Scanner; 

public class Employee { 
public static void main(String [ ] args){} 
public String DEF_EMP_NUM = "NO_EMP_NUM"; 
public double DEF_RATE_PER_HOUR = 20.0; 
public double DEF_OVER_TIME_RATE = 40.0; 
public double DEF_RATE_HOURS_PER_WEEK = 1.5; 

private String empNum; 
private double ratePerHour; 
private double baseHrsPerWeek; 
private double overTimeRate; 
// no arg constructor setting width and length to default of 1 

public Employee() { 
    empNum = DEF_EMP_NUM; 
    ratePerHour = DEF_RATE_PER_HOUR; 
    baseHrsPerWeek = DEF_RATE_HOURS_PER_WEEK; 
    overTimeRate = DEF_OVER_TIME_RATE; 
} 
// all arg constructor 

public Employee(String empNum, float ratePerHour, float baseHrsPerWeek, int overTimeRate) { 
    this.empNum = empNum; 
    this.ratePerHour = ratePerHour; 
    this.baseHrsPerWeek = baseHrsPerWeek; 
    this.overTimeRate = overTimeRate; 

} 

//setters 
public void setempNum(String empNum) { 
    this.empNum = empNum; 

} 

public String getempNum() { 
    return this.empNum; 
} 
//methods 

public double getratePerHour() { 
    return ratePerHour; 
} 

public void setratePerHour(float ratePerHour) { 
    this.ratePerHour = ratePerHour; 
} 

public double getoverTimeRate() { 
    return overTimeRate; 
} 

public int setoverTimeRate(int overTimeRate) { 
    this.overTimeRate = overTimeRate; 
    return overTimeRate; 
} 

public double getbaseHrsPerWeek() { 
    return baseHrsPerWeek; 
} 

public void setbaseHrsPerWeek(float baseHrsPerWeek) { 
    this.baseHrsPerWeek = baseHrsPerWeek; 
} 

@Override 
public String toString() { 
    return super.toString() 
      + "\n[" 
      + "\nbaseHrsPerWeek = " + baseHrsPerWeek 
      + "\noverTimeRate = " + overTimeRate 
      + "\nratePerHour = " + ratePerHour 
      + "\nempNum = " + empNum 
      + "\n]"; 
} 

public double calcWeeksPay(int hours) { 
    return this.ratePerHour * this.baseHrsPerWeek; 
    /*@param hours 
    @return 
    */ 

} 

{ 
    Scanner scan = new Scanner(System.in); 


    int myNum[] = new int[5]; 
    int i; 
    int sum = 0; 
    for (i = 0; i < myNum.length; i++) { 
     System.out.print("Enter the number " + (i + 1) + " : "); 
     myNum[i] = scan.nextInt(); 
    } 

    for (i = 0; i < myNum.length; i++) { 
     System.out.print("The number " + (i + 1) + " : "); 
     System.out.print(myNum[i] + "\n+"); 

     for (int e = 1; e <= i; e++) { 
      sum = sum + e; 
     } 
     System.out.println(sum); 
    } 

} 
} 

나는 그저 작동하지 않는 것 같습니다. 나는 명백한 무엇인가 놓치고 있다고 확신한다. 조언을 얻을 수 있다면 매우 감사 할 것입니다.

+1

클래스'{Scanner ...}'의 끝에 물건을 가지고'main'에 넣습니다. – MadProgrammer

+0

public static void main (String [] args) {} 그냥 실행 ... 아무것도하지 않습니다 :) – bestprogrammerintheworld

답변

2

콘솔에서 번호를 수락하고 인쇄하는 code 조각이 업데이트되었습니다.

public class Employee { 
public static void main(String [ ] args){ 
    Scanner scan = new Scanner(System.in); 
    int myNum[] = new int[5]; 
    int i; 
    int sum = 0; 
    for (i = 0; i < myNum.length; i++) { 
     System.out.print("Enter the number " + (i + 1) + " : "); 
     myNum[i] = scan.nextInt(); 
    } 

    for (i = 0; i < myNum.length; i++) { 
     System.out.print("The number " + (i + 1) + " : "); 
     System.out.print(myNum[i] + "\n+"); 

     for (int e = 1; e <= i; e++) { 
      sum = sum + e; 
     } 
     System.out.println(sum); 
    } 

} 
public String DEF_EMP_NUM = "NO_EMP_NUM"; 
public double DEF_RATE_PER_HOUR = 20.0; 
public double DEF_OVER_TIME_RATE = 40.0; 
public double DEF_RATE_HOURS_PER_WEEK = 1.5; 

private String empNum; 
private double ratePerHour; 
private double baseHrsPerWeek; 
private double overTimeRate; 

// 더 ARG 생성자 설정 폭과 길이는 1 개

public Employee() { 
    empNum = DEF_EMP_NUM; 
    ratePerHour = DEF_RATE_PER_HOUR; 
    baseHrsPerWeek = DEF_RATE_HOURS_PER_WEEK; 
    overTimeRate = DEF_OVER_TIME_RATE; 
} 

// 모든 인수 생성자

public Employee(String empNum, float ratePerHour, float baseHrsPerWeek, int overTimeRate) { 
    this.empNum = empNum; 
    this.ratePerHour = ratePerHour; 
    this.baseHrsPerWeek = baseHrsPerWeek; 
    this.overTimeRate = overTimeRate; 

} 

//setters 
public void setempNum(String empNum) { 
    this.empNum = empNum; 

} 

public String getempNum() { 
    return this.empNum; 
} 

// 메소드

public double getratePerHour() { 
    return ratePerHour; 
} 

public void setratePerHour(float ratePerHour) { 
    this.ratePerHour = ratePerHour; 
} 

public double getoverTimeRate() { 
    return overTimeRate; 
} 

public int setoverTimeRate(int overTimeRate) { 
    this.overTimeRate = overTimeRate; 
    return overTimeRate; 
} 

public double getbaseHrsPerWeek() { 
    return baseHrsPerWeek; 
} 

public void setbaseHrsPerWeek(float baseHrsPerWeek) { 
    this.baseHrsPerWeek = baseHrsPerWeek; 
} 

@Override 
public String toString() { 
    return super.toString() 
      + "\n[" 
      + "\nbaseHrsPerWeek = " + baseHrsPerWeek 
      + "\noverTimeRate = " + overTimeRate 
      + "\nratePerHour = " + ratePerHour 
      + "\nempNum = " + empNum 
      + "\n]"; 
} 

public double calcWeeksPay(int hours) { 
    return this.ratePerHour * this.baseHrsPerWeek; 
/*@param hours 
@return 
*/ 
} 
} 

문제 기본 없습니다 네가 havi가 아니었다는 것이었다. psvm 방법과 입력을 받아 콘솔이 어떤 호출 코드를 가지고 있지되었다에 인쇄 코드

Scanner scan = new Scanner(System.in); 
     int myNum[] = new int[5]; 
     int i; 
     int sum = 0; 
     for (i = 0; i < myNum.length; i++) { 
      System.out.print("Enter the number " + (i + 1) + " : "); 
      myNum[i] = scan.nextInt(); 
     } 

     for (i = 0; i < myNum.length; i++) { 
      System.out.print("The number " + (i + 1) + " : "); 
      System.out.print(myNum[i] + "\n+"); 

      for (int e = 1; e <= i; e++) { 
       sum = sum + e; 
      } 
      System.out.println(sum); 
     } 

의 조각 아래 NG 아무것도. 그것은 단지 코드 블록 안에있었습니다. 방금 메인 방법으로 옮겼습니다.

+0

고마워요! 도움에 감사드립니다. –

+0

@ A.Duffy, 내 대답이 귀하의 질문을 해결할 경우, upvote 및 커뮤니티에 대한 대답을 수락 잊지. –

관련 문제