• ベストアンサー

独習Java章末問題模範解答のソースコードがコンパイルできない

kabutorikikoriの回答

回答No.1

そのままコンパイルしたらうまくできましたが。実行も可能でした。どんなエラーがでているのですか。

zyousuke
質問者

お礼

ご返信ありがとうございます。 な、何ですって!? そんなことは絶対ないです。 と思いつつも再度確認してみたところ なんと、普通にコンパイルできました(汗。 しかし昨日は本当にできなかったんですって。 そういえば昨日は増設したDドライブにファイルを置いたのです。 確認のため昨日と同じDドライブにソースファイルを置いてコンパイルしようとしたところ今度はコンパイルできませんでした。 ひょっとしてJavaというのはパスによってコンパイルできたり、できなかったりするのですか。 って、そんなことはないですよね。 そこで質問ソースコードのコンパイル時に表示されるメッセージを補足しますのでご覧いただき何か思い当たる点がありましたら教えてください。

zyousuke
質問者

補足

D:\MyDocument\Java\exercise\chapter2synthesis\3>javac CharacterArray.java .\StringBuffer.java:2: シンボルを解釈処理できません。 シンボル: クラス string 位置 : StringBuffer の クラス public static void main(string args[]) { ^ CharacterArray.java:15: シンボルを解釈処理できません。 シンボル: メソッド append (java.lang.Character) 位置 : StringBuffer の クラス sb.append(array[0]); ^ CharacterArray.java:16: シンボルを解釈処理できません。 シンボル: メソッド append (java.lang.Character) 位置 : StringBuffer の クラス sb.append(array[1]); ^ CharacterArray.java:17: シンボルを解釈処理できません。 シンボル: メソッド append (java.lang.Character) 位置 : StringBuffer の クラス sb.append(array[2]); ^ CharacterArray.java:18: シンボルを解釈処理できません。 シンボル: メソッド append (java.lang.Character) 位置 : StringBuffer の クラス sb.append(array[3]); ^ CharacterArray.java:19: シンボルを解釈処理できません。 シンボル: メソッド append (java.lang.Character) 位置 : StringBuffer の クラス sb.append(array[4]); ^ .\StringBuffer.java:4: 互換性のない型 出現: char 要求: java.lang.Character array[0] = 'a'; ^ .\StringBuffer.java:5: 互換性のない型 出現: char 要求: java.lang.Character array[1] = 'b'; ^ .\StringBuffer.java:6: 互換性のない型 出現: char 要求: java.lang.Character array[2] = 'c'; ^ .\StringBuffer.java:7: 互換性のない型 出現: char 要求: java.lang.Character array[3] = 'd'; ^ .\StringBuffer.java:8: 互換性のない型 出現: char 要求: java.lang.Character array[4] = 'e'; ^ .\StringBuffer.java:10: シンボルを解釈処理できません。 シンボル: メソッド append (java.lang.Character) 位置 : StringBuffer の クラス sb.append(array[0]); ^ .\StringBuffer.java:11: シンボルを解釈処理できません。 シンボル: メソッド append (java.lang.Character) 位置 : StringBuffer の クラス sb.append(array[1]); ^ .\StringBuffer.java:12: シンボルを解釈処理できません。 シンボル: メソッド append (java.lang.Character) 位置 : StringBuffer の クラス sb.append(array[2]); ^ .\StringBuffer.java:13: シンボルを解釈処理できません。 シンボル: メソッド append (java.lang.Character) 位置 : StringBuffer の クラス sb.append(array[3]); ^ .\StringBuffer.java:14: シンボルを解釈処理できません。 シンボル: 変数 ab 位置 : StringBuffer の クラス ab.append(array[4]); ^ エラー 16 個

関連するQ&A

  • JavaからJavascriptの配列を出力したい

    JavaからJavascriptの配列を出力したいのですが、 appendした要素を区切り文字で区切って返す方法が わかりません。 <% StringBuffer js = new StringBuffer(); js.append("1"); js.append("2"); %> Javaで↑のように格納した後に、 下記のようにJavascriptの配列を出力したいです。 if(a = 1){ val=new Array("1,"2"); }

  • StringBufferで改ページ処理を行うには?

    StringBufferに格納した文字列を、Printableで出力する処理を作成しています。 その際、StringBufferに「\n」を格納すると、改行させることが出来るのですが(例1)、 「\f」を格納して改ページをさせようと思っても、中点(・)が印字されてしまい、 上手く改ページさせることが出来ません(例2)。 StringBufferで改ページをさせるには、どうしたら宜しいのでしょうか? ※例1 【PGM】 StringBuffer sb = new StringBuffer(); sb.append("改行"); sb.append(\n); sb.append("テスト"); 【出力結果】 改行 テスト ※例2 【PGM】 StringBuffer sb = new StringBuffer(); sb.append("改ページ"); sb.append(\f); sb.append("テスト"); 【出力結果】 改ページ・テスト ※ \は実際には「バックスラッシュ」です

    • ベストアンサー
    • Java
  • 空文字ではない物のみをWHERE句にORで追加する方法

    こんばんは。 postgreSQLカテゴリに質問をしようかと考えたのですが、 こちらにさせていただきます。 タイトルの通り、空文字ではない物のみをWHERE句にORで追加する方法を教えていただきたいのです。 具体的には 検索の条件となる文字列が "" でなければ、 WHERE句に追加して、 WHERE ○○ = '■■■' OR ☆☆ = '×××' とできるように考えています。 しかし、 String ■■■ = "abc"; String ××× = "def"; StringBuffer sb = new StringBuffer(); if( !("".equals(■■■) ) ) {   sb.append(" ○○ = '");   sb.append(■■■);   sb.append("'"); } if( !("".equals(×××) ) ) {   sb.append(" OR ☆☆ = '");   sb.append(×××);   sb.append("'"); } としてしまっては、 ■■■が "" で、(上では"abc"が入っていますが空文字だと考えてください) ×××が "" ではない時に WHERE OR ☆☆ = '×××' となってしまい、ORが付いてしまいます。 どうか解決する方法はありませんでしょうか。 お教え願います。

    • ベストアンサー
    • Java
  • JAVA:toStringについて

    JAVAの"toString"について教えてください。 public synchronized String format(LogRecord record) StringBuffer sb = new StringBuffer(); sb.append(日付); sb.append(":"); sb.append(record); return sb.toString(); とした場合、StringBufferが解放されないため、メモリリーク等 発生しますでしょうか? また、回避するにはどうすればよいでしょうか? お力添えを宜しくお願いします。

  • JSPファイルの書き出し

    いつもお世話になっています。 ただ今とあるJSPファイルを呼ぶと他のJSPファイルを作成するものを作成中です。 ファイルに書き出す内容をプログラム上でStringBufferに格納しているのですが、コンパイルエラーが発生してしまっています。 StringBuffer buf = new StringBuffer(""); buf.append("if(Arrays.binarySearch(myGroup,path)){"); buf.append("\n %>\n"); この部分でエラーが発生してしまいます。 エラーの内容は 文字列が行の最後で終了していません。 buf.append("\n       ^ となっています。 何が原因なのでしょうか? どなたかご教授お願い致します。

    • ベストアンサー
    • Java
  • エラー処理について

    ファイルを引数に取って、そのファイルの中身を文字列として返す自作メソッドをウェブで見つけたので、そのまま使用しようと思いました。しかし、ファイルが空ファイルの場合はこのメソッドだとエクセプションエラーになってしまうようです。どこかを変更して、メイン側で適切に処理してあげなければならないと思われるのですが、どこをどう修正すればよいでしょうか。自分で作成したものでもないので、見当がつかない状態です。。申し訳ありませんが宜しくお願いします。 public static String fileToString(File file) throws IOException { BufferedReader br = null; try { br = new BufferedReader(new InputStreamReader(new FileInputStream(file))); StringBuffer sb = new StringBuffer(); int c; while((c=br.read())!=-1) { sb.append((char) c); } return sb.toString(); } finally { br.close(); } }

    • ベストアンサー
    • Java
  • char型からのバイト数取得

    文字列から1文字ずつバイト数を取得(判定)したいのですが、 char型の文字のバイト数を取得するスマートな方法はありますか? 今考えているのは以下のようなコードです。 String str ="あA" for(int i=0; i < str.length(); i++) { char ch = str.charAt(i); StringBuffer SB = new StringBuffer(); SB.append(c); if(SB.toString().getBytes.length == 1) { //1バイトの処理 } else { //2バイトの処理 } }

    • ベストアンサー
    • Java
  • javaというか文字列について少し質問です><

    javaというか文字列について少し質問です>< javaというか文字列について少し質問です>< お願いします。 シーザー暗号で文字列をずらすためのクラスのメソッドをつくったのですが・・・ String decrypt(String str,int key) { StringBuffer sb = new StringBuffer(); // もしくはStringBuilder for(int i=0;i<str.length();i++){ char c=str.charAt(i); c=(char)((int)c-key); sb.append( c ); } こんな感じなのですがアルファベットの小文字26文字のみとしたいので暗号化や復号化の際に越えてしまう場合はアルファベット内でループさせたいのですがいまいちやり方が浮かびません><越えてしまう場合はzからひいたものを表現させれば良いかと思いやってみたのですが全然違う文字が出てきてしまいました。何かいい方法を教えてください。お願いします><

    • ベストアンサー
    • Java
  • StringBuilderをStringに代入

    StringBuilderを使って文字列連結して、それをSQL文(String型)として利用するプログラムを作りました。 ※SQLはループ処理で約10万個ぐらい発行→実行します StringBuilderの文字列を、最終的にString型の変数(strSql)に代入するのですが、 下記のどちらで代入する方がコスト掛からないでしょうか? A案. ---------- StringBuilder sb = new StringBuilder(); sb.append(変数a); sb.append(変数b); sb.append(変数c); String sqlStr = new String(sb); ---------- B案. ---------- StringBuilder sb = new StringBuilder(); sb.append(変数a); sb.append(変数b); sb.append(変数c); String sqlStr = sb.toString(); ---------- 教えてください。

    • ベストアンサー
    • Java
  • avaというか文字列について少し質問です><

    avaというか文字列について少し質問です>< お願いします。 シーザー暗号で文字列をずらすためのクラスのメソッドをつくったのですが・・・ String decrypt(String str,int key) { StringBuffer sb = new StringBuffer(); // もしくはStringBuilder for(int i=0;i<str.length();i++){ char c=str.charAt(i); c=(char)((int)c-key); sb.append( c ); } こんな感じなのですがアルファベットの小文字26文字のみとしたいので暗号化や復号化の際に越えてしまう場合はアルファベット内でループさせたいのですがいまいちやり方が浮かびません><越えてしまう場合はzからひいたものを表現させれば良いかと思いやってみたのですが全然違う文字が出てきてしまいました。何かいい方法を教えてください。お願いします><

    • ベストアンサー
    • Java