2016-11-21 4 views
0

나는 Prinston의 코스 Algorithms, Part I입니다. 내가 .NET에서 왔고 Java을 사용하기 시작했기 때문에 Java 코드와 관련된 문제가 있으며 관련 정보를 찾을 수 없습니다. 던져In을 입력 할 수없는 경우

public static void main(String[] args) { 

    In in = new In(args[0]); 
    int n = in.readInt(); 
    ... 
} 

예외 : 그들은 내가 텍스트 파일을 읽기 위해 사용할 수있는 코드를 제공

에서이 유형이 In 무엇

에 해결 될 수없는

? 패키지를 가져와야합니까? 아니면 어떻게해야합니까?

전체 코드와 설명은 여기에서 볼 수있다 :

+0

제 생각에는 In은 Int이고 new는 Int이어야합니다. 즉, 기본 유형과 반대로 Integer 클래스입니다. – Erik

+0

좋은 질문입니다. 이 'In'은 무엇입니까? 구문 학적으로 클래스 여야합니다. 그러나 JDK에는 그러한 클래스가 없으므로 프로젝트에서 분명히 사용할 수없는 사용자 정의 클래스 여야합니다. – AlexR

답변

4

http://coursera.cs.princeton.edu/algs4/assignments/collinear.html 당신은뿐만 아니라 프린스턴에서 제공 algs4이 필요합니다. 이 클래스 패스에의 할 때 그 유일한 클래스가 있다면, 당신은 the source of In.java을 사용할 수,

import edu.princeton.cs.algs4.In; 

를 추가합니다. 하지만 Coursera에서 허용되는 것은 의심 스럽습니다. 코드를 제출하면 classpath에 algs4.jar가있는 서버에서 컴파일되므로 실제로 코드를 사용하지 말아야합니다.

+0

'algs4'를 설치했고 'edu.princeton.cs.algs4.StdRandom','edu.princeton.cs.algs4.StdIn/Out'과 같은 네임 스페이스를 사용할 수 있지만 질문의 클래스는 사용할 수 없습니다. 파일을 확인하겠습니다 .... –

+0

흠,'import edu.princeton.cs.algs4.In; '을 사용해야했습니다. 그들은 아무 데서도 언급하지 않았습니다. 고맙습니다!!! –

+0

@GiorgiNakeuri : 의견에 감사드립니다. 대답에 import 문을 추가했습니다. –

0

In.java는 princeton의 누군가가 작성한 클래스 인 것으로 보입니다. 아마도 같은 코스에 대해 http://algs4.cs.princeton.edu/12oop/In.java 일 것입니다.

올바른 패키지를 가져와야하고 클래스 경로에 해당 클래스가있는 병이 있어야합니다. 힌트를 얻으려면 코스 문서를 검색하십시오.