2016-10-20 2 views
-6

누구든지 내 코드에 어떤 문제가 있는지 말해 줄 수 있습니까 (12 호 switch (code))? 그것은 컴파일되지 않을 것이다.스위치 설명이있는 Java 오류

import java.util.Scanner; 
public class Switch 
{ 
    public static void main(String [] args) 
    { 
     Scanner in = new Scanner(System.in); 
     System.out.println("please entre a province's official code abbreviation"); 
     String code = in.next(); 

     double shipCost=0.0; 

     switch (code) { 
      case"NS": case"NB":case"PE": 
       shipCost=29.95; 
       break; 
      case"NL": 
       shipCost=34.95; 
       break; 
      case"OC": case"ON": 
       shipCost=24.95; 
       break; 
      case"MB":case"SK": 
       shipCost=29.95; 
       break; 
      case"AB":case"BC": 
       shipCost=37.95; 
       break; 
      case"NU":case"NT":case"YT": 
       shipCost=39.95; 
       break; 
      default: 
       shipCost=0; 
     } 

     System.out.println("shipping cost in "+code+"is"+shipCost); 
    } 
} 

1 error found: Flle: /Users/JamesMacBook/Downloads/Solutions_ReviewExercises/Switch.java [line: 12]
Error: /Users/JamesMacBook/Downloads/Solutions_ReviewExercises/Switch.java:12: incompatible types
found : java.lang.String
required: int

라인 (12)에 문제가 있나요? 내가 어떻게 고칠 수 있니?

+1

올바른 형식의 텍스트로 코드를 포함하십시오. 이미지가 아닌 질문을 포함하십시오. – jmoerdyk

+0

그것은 Java 버전 Luke입니다. 이전 Java 버전에서는 문자열을 전환 할 수 없습니다. – fvu

+4

코드에 링크를 넣지 마십시오. 링크를 통해 누군가가 당신을 도우려는 위치를 알 수 있습니다. 그래서 당신은 코드를 사이트에 게시 할 수 있습니다 –

답변

1

오류는 그것이 int을 찾고 말한다 감사하지만 당신은 String을 제공했다. Java는 버전 7에서 String을 전환 할 수 있도록 지원하므로 추가했는지 확인하십시오. OSX에서 Java 버전을 확인하는 방법에 대해서는 잘 모르겠지만 Windows에서는 명령 프롬프트에 java -version을 입력합니다.