10

The Java Tutorialsによると、Java SE 7以降では、switch ステートメントの式で String オブジェクトを使用できます。

String s = ...
switch(s){
    //do stuff
}

しかし、これは本当ですか?JRE をインストールして Eclipse プロジェクトのビルド パスに追加しましたが、次のコンパイル時エラーが発生します。

タイプ String の値をオンに切り替えることはできません。変換可能な int 値または enum 定数のみが許可されます

java.nio.file.Filesまた、そのクラスを使用できたので、正しく構成できたと思いますJLayer.

何か案は?

4

3 に答える 3

12

JDTチームが文字列のスイッチ機能を実装したことは事実ですが、Java7のサポートはEclipse3.7.1より前ではありません。

バグ288548を参照してください。

JSR-292(Invoke Dynamic)とJSR-334(Project Coin)の入手が遅れ、Java 7の公式リリース日(2011年7月28日)が3.7の出荷後だったため、Java7のサポートを3.7に延期する必要がありました。 .1。これが3.7.1ダウンロードの一部として利用可能になるか、個別の機能アップデートとして利用可能になるかはまだ決定されていません。

Java 7機能の作業は現在、「BETA_JAVA7」ブランチで進行中であり、関係者にJava 7機能への早期アクセスを提供するために、安定したビルドに対して個別の更新を提供します。

于 2011-06-03T19:52:04.443 に答える
1

EclipseはまだJDK7でのコンパイルをサポートしていません。新しい機能を試すには、NetBeans 7を使用するか、JDK7のバンドルに含まれる標準のjavacコンパイラを手動またはantスクリプトを使用してコンパイルする必要があります。

于 2011-06-03T19:49:10.440 に答える
0

Eclipse 3.8 を使用します (最初のマイルストーンは数日前に達成されました)。コンパイラ設定を Java 7 に設定することを忘れないでください。

于 2011-08-12T13:42:07.047 に答える