1 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 15:21:29 ] 過去ログ、関連スレッド、よくある質問とその回答、 質問をする前に、貴方が見なければならないサイトについての情報は、 下のwikiのページにまとめてあります。 www.wikiroom.com/java/ これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、 wikiからのリンクをおたどりください。 よくある質問 ・「コマンドまたはファイル名が違います」 「'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 「Exception in thread "main" java.lang.NoClassDefFoundError: 」 www.wikiroom.com/java/?path,classpath ・String に == は使うな。equals() を使え。 ・「\12288 は不正な文字です。」 文字リテラル以外で全角スペースは使えません。半角スペースに。 ・その他の質問→「APIのjavadoc見ろ」 前スレッド 【初心者】Java質問・相談スレッド101【大歓迎】 pc11.2ch.net/test/read.cgi/tech/1177938653/ /* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。 質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */ また、当スレで質問をするかたは、回答をもらえたときに、 wikiの更新をして頂ければ、忝なく存じます。 JavaScript, Ajaxの質問は、ここでは受け付けていません。 Web製作板をご利用ください。pc10.2ch.net/hp/ 次スレは>>980 あたりで。
152 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 05:13:21 ] >>149 宿題は宿題スレへ ★★ Java の宿題ここで答えます Part 61 ★★ pc11.2ch.net/test/read.cgi/tech/1179168569/
153 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 12:14:51 ] staticっていう修飾子は何のためにあるのですか?。 無くてもいいように思うのですが。
154 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 12:20:13 ] オブジェクト指向を勉強すればわかる
155 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 12:30:03 ] Math とか static 無かったらウザいことに
156 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 12:40:11 ] 無くてもいいけどあると便利。 便利だからどんどん使うと大変なことになるけど。
157 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 13:08:12 ] >>153 悪魔で俺の見解だ、他の人は知らん。例えばDBのConnectionを拾得する メソッドがある。DBManager#getPoolableConnectionとしよう。 他のクラスでDBManagerを通じてDBにアクセスしたい時getPoolableConnectionを staticメソッドにしておけば、わざわざインスタンスを作る必要がないわけだ。 後は分かるな。
158 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 13:49:47 ] そんなもんシングルトンパターンでいいじゃん。
159 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 14:09:30 ] シングルトンなら結局static使ってんじゃん
160 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 14:09:35 ] static使わずに、どうやってシングルトンするつもりなんだろ……
161 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 15:48:50 ] 下記サイトではビーンクラスのインスタンスをバイナリでファイルに書き出して それを読み込んでいますが、このファイルの中に書かれているバイナリを そのままreturnすることは可能ですか? 可能であれば方法を教えていただきたいです。 www.geocities.co.jp/Playtown/7799/progmemo/java_serialize.htm FileOutputStreamやObjectOutputStreamをreturnしてみましたが バイナリが返っている様子はありませんでした。
162 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 17:29:42 ] >>161 returnする側のメソッドからファイルデータを返すなら、 ストリームからreadしたものを返せばいいんじゃね? ストリームそのものをreturnして、 そのストリームを使って呼び出し側でreadするなら、 returnする側のメソッド内で既にreadしてるとかcloseしてしまってるかに注意。
163 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 17:45:06 ] nestedタグの属性の指定について質問させて下さい。 ■質問内容 以下のようなクラスの値をJSPで表示する場合 nestedのproperty指定はどのようにすればよいのでしょうか? ■test.java private Vector vec; public Vector getVec() { return vec; } public void setVec(Vector vec) { this.vec = vec; } ■test.java内の値vecの中身 vec +--Vector[0]--自作Formクラス[0]--プロパティ1 | +-プロパティ2 | +--Vector[1]--自作Formクラス[0]--プロパティ1 | +-プロパティ2 | +--自作Formクラス[1]--プロパティ1 +-プロパティ2 ■jsp <nested:iterate property="vec"> ←一番最初のnestedのプロパティは「test.javaのvec」で良いが <nested:iterate property="???"> ←次のnestedのプロパティはVectorであり、明示的なプロパティ名を持たない <tr> <td><nested:text property="プロパティ1" /></td> <td><nested:text property="プロパティ2" /></td> </tr> </nested:iterate> </nested:iterate>
164 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 18:50:29 ] スレ違いじゃねぇか?
165 名前:163 mailto:sage [2007/06/05(火) 18:57:05 ] >>164 wikiで関連スレは確認したつもりですが、他に適当なスレはありますでしょうか? 宿題スレとかでしょうか?
166 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 19:28:29 ] www2.2ch.net/2ch.html ここが良いんでない?
167 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 19:58:58 ] JSP内に <INPUT TYPE='text' NAME='text1' VALUE='テキスト'> があります。 doGet(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException のrequestとresponseは具体的に、何から値をもらっているのでしょうか?
168 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 20:28:07 ] あら、リンク張ったつもりが2chのトップに出る。悪い。
169 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 20:37:35 ] プログラム板にframe知らないやつがいるのか・・・
170 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 20:55:13 ] >>167 サーブレットエンジンから。 さらにいえば、HTTPリクエストから。 HTTPリクエストはあなたのブラウザから値をもらう。 入門書でも買ってこいや
171 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 22:48:04 ] staticな変数は何となくわかってきたのですが、staticなメソッドやクラスが どうして必要なのかわかりません。 例えばMathクラスのメソッドがどうしてstaticなのか?。 もしstaticでなければどううざいのか?。 インスタンスを生成するのってそんなに手間がかかるものなんでしょうか?。
172 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 22:59:56 ] >>171 それはインスタンスというものを理解する必要があるね。 インスタンスは、それぞれ独立して個別の値を保持する実体だ。 つまり、いつ何時呼び出しても同じ動作をするものは、 わざわざインスタンスにする意味がないってこった。
173 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 23:02:56 ] ・インスタンスがメモリを消費 ・インスタンスを作らないと使えない 以上に問題を感じなければ普通のメソッドでもいいんじゃね? ログ出力クラスとかも毎回インスタンス作るのか?
174 名前:デフォルトの名無しさん mailto:sage [2007/06/05(火) 23:19:42 ] JavaDocを見るとき、調べる対象のメソッドがインスタンスメソッドかクラスメソッドか判るだけで どんなことをするメソッドなのかあたりが付くようになる。 なのでインスタンスを持つ必要がないメソッドは極力staticを付けた方が良い。
175 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 00:06:35 ] >>174 >インスタンスを持つ必要がないメソッドは極力staticを付けた方が良い。 そして地獄を見る
176 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 00:48:57 ] >>175 どうして?
177 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 02:20:40 ] >>176 きっと、想像できなかった仕様変更があって、 内部状態に応じて動作が変わるようにしなければいけなくなるんだろう。 たとえば、テストモードかどうかをオブジェクト内部に持つような 仕様に急に変わって、テストモードだったら(本番データを使えないので) こっちの方法で計算するようにしてね、と言われるとか。
178 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 02:32:36 ] それstaticぜんぜん関係ないじゃん。
179 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 05:44:39 ] >>174 地獄へ落ちるに同意。 本当にインスタンスが不要であることが確信できるような場合にのみstaticを付けるが正しい。 インスタンスをもつ必要がない、というガイドラインだとデータクラス以外は全部staticでいいじゃんて話になるし、実際にそういうプロジェクトの経験もある。
180 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 06:45:35 ] 必要のない作りこみはプログラムを無駄に複雑にし、不具合を呼び込み拡張を困難にする。 将来的に使われなかったら無駄になるし、 使われるときになって実際に必要とされる機能との相違があれば、結局作り直し。 static で済むなら static で作り、必要に応じてリファクタリングする。 しかし、定数でないstaticなフィールドについては、 単体テストで弊害になるのでできるだけやめた方がいい希ガス
181 名前:163 mailto:sage [2007/06/06(水) 09:06:00 ] >>168 だよね…。厨はカエレ!的な意味かと思ったよ…。 で、正しく何スレでしょうか…?
182 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 09:31:23 ] >>180 staticでなくて済むならば非staticにして作り、必要に応じてリファクタリングでも良いかと・・・
183 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 09:37:33 ] >>181 Tomcat+jsp+struts何たらってスレでも1000行ってるから次スレで pc11.2ch.net/test/read.cgi/tech/1161862896/1001-1100
184 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 09:40:40 ] スレ名変更してた。 java+webフレームワーク pc11.2ch.net/test/read.cgi/tech/1181063688/
185 名前:181 mailto:sage [2007/06/06(水) 09:46:53 ] >>183 >>184 誘導ありがとうございました!次スレまで調べていただいて感謝です!
186 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 11:00:26 ] >>179 >インスタンスをもつ必要がない、というガイドラインだとデータクラス以外は全部staticでいいじゃんて話になる ならないだろ。データクラス以外はインスタンス化しないのか?
187 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 11:04:56 ] mein(String[] args)メソッドで呼び出すときは他クラスにメソッド配置しないと 全部staticなメソッドになって地獄見た;
188 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 11:12:54 ] 地獄見そうなメソッドだなw
189 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 11:57:59 ] >>186 そういうプロジェクトを少なくとも2つ見た事あるぞ。 自分は追加要因(火消し)で入ったもんだから、もはや手遅れでそのルールに従ったけど、結局はプロジェクトは両方とも破綻
190 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 12:04:28 ] 具体例が無いからどっちが良いとは言えんな。 どっちにしたって地獄見るのは設計がダメだったって事なんだろうし。
191 名前:デフォルトの名無しさん [2007/06/06(水) 12:26:10 ] Javaで、Windowsのファイル毎の 関連付けアプリケーションのパスを取得する方法ってありますか?
192 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 12:52:20 ] >>191 Windowsのシステムに関わる話なので当然Windows専用になってしまうが、 cmdの内部コマンドのassocとftypeをJavaから呼び出してやればいいのでは? たとえば.txtなら、 assoc .txtで.txt=hogehogeが得られたら、 ftype hogehogeでhogehoge=関連付けアプリケーションのパスとか引数の与え方、になる。
193 名前:192 mailto:sage [2007/06/06(水) 12:54:42 ] 忘れてた。 ftypeで得られるパスには環境変数名も含まれる場合も多いだろうから、 環境変数を展開する処理も必要。
194 名前:デフォルトの名無しさん [2007/06/06(水) 14:29:58 ] 教えていただきたいのですが、あるディレクトリにファイルを コピーする時はどうすればいいのでしょうか? protected void CopyFiles(IProject project){ //コペーする絶対パスが設定されてるファイル File file = projectPage.files; //ファイルがコペーされるディレクトリ + \ IPath newDir = project.getLocation().addTrailingSeparator(); //fileをnewDirにコペーする }
195 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 14:44:01 ] >>194 FileInputStream と FileOutputStreamを使え ファイルのコピーなんて、教科書に載ってないか?
196 名前:デフォルトの名無しさん [2007/06/06(水) 15:33:51 ] >>195 アーッ! すいません。ど忘れしてました。ありがとうございます。
197 名前:デフォルトの名無しさん [2007/06/06(水) 15:37:32 ] 教えていただきたいのですが、eclipse3.2.2上で lombozを認識してくれないのですが、原因はわかりますか?
198 名前:デフォルトの名無しさん [2007/06/06(水) 17:44:08 ] いまからプログラミングの勉強したいんですが初心者は何から始めるのがお奨めですか?就職に役立てるような技術が欲しい
199 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 18:12:22 ] >>198 医師・看護師・薬剤師・介護福祉士がちょうおすすめ。 仕事はプログラマ並みかそれ以上にキツいけど。
200 名前:デフォルトの名無しさん [2007/06/06(水) 18:27:46 ] >医師・看護師・薬剤師・介護福祉士がちょうおすすめ。 この仕事の人にプログラミングの技術がいるってことですか?
201 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 18:41:13 ] >>200 プログラミングは趣味で。
202 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 19:41:07 ] >>199 その選択ができるのは進学前の高校生までだろ。 >>198 は大学生くさいから諦めろ。 公務員試験の勉強をしつつ、経理の勉強でもしとけ。 プログラミングは趣味で。
203 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 19:49:20 ] 2流以下の大学の学生がプログラム関係の資格を持っていると 旧帝大で留年してるような奴と対等になれる。 ぶっちゃけ資格は何でもいい。
204 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 20:16:31 ] 勉強は二の次にして、これをネタに あちこちの勉強会に出席してコネを作ってくのがいいんじゃまいか
205 名前:デフォルトの名無しさん [2007/06/06(水) 23:21:20 ] エクリプス上で実行できたクラスファイルがバッチ上で実行が出来ずに困っています。 カレントディレクトリはクラスファイルの場所を指定しています。 ためしにjavacとjavaのバージョンを確認してみたところ、 C:\Program Files\eclipse\workspace\KBSYS\test>javac -J-version java version "1.5.0_11" C:\Program Files\eclipse\workspace\KBSYS\test>java -version java version "1.6.0_01" と出力されました。 どうやらコンパイラのバージョンより実行環境のバージョンが新しくなっていしまっているようなのですが、 実行環境をコンパイラのバージョンにあわせるにはどのような設定をしたらよいのでしょうか?
206 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 23:30:19 ] >>187 mainの中で自分自身をnewしろよ。。。
207 名前:205 mailto:sage [2007/06/06(水) 23:31:35 ] ちなみにjre1.5.0_11\bin は持っているようです。 サンマイクロもページ分かりにくい・・・。 もう一回古いバージョンを落とそうにも場所が分からず・・・。
208 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 23:35:53 ] >>205 Eclipseは自前のコンパイラを使うからjavacのバージョンは関係ない。 そもそも1.6のJREは-target 1.5でコンパイルしたクラスファイルを実行できる。 まず実行できなかったときの例外を確認するのが先。
209 名前:205 mailto:sage [2007/06/06(水) 23:42:49 ] >>206 ありがとうございます! まず、実行時のエラーですが、(クラスファイル名はtesta)以下のような出力になります。 C:\Program Files\eclipse\workspace\KBSYS\test>java testa Exception in thread "main" java.lang.NoClassDefFoundError: testa (wrong name: test/testa) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$000(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClassInternal(Unknown Source) ちなみに、ユーザー環境変数のPATHは、以下のようにjavac.exeのあるディレクトリを指定しています。 C:\Program Files\Java\jdk1.5.0_11\bin
210 名前:208 mailto:sage [2007/06/06(水) 23:45:05 ] >>209 >>1 死ねよ。
211 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 23:47:55 ] >>205 >>208 もしコンパイラの問題だとしたら、 プロジェクトを右クリックしてプロパティを開く。 Java Build Path という項目があるからTabの Libraries を選択して、JRE System Libraryをダブルクリックすれば どのコンパイラが利用されているかわかる。
212 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 23:48:20 ] 親切な人が豹変したw
213 名前:デフォルトの名無しさん mailto:sage [2007/06/06(水) 23:56:16 ] これで満足?てかおんなじ人が質問してるのね。。。 public class testa { public static void main(String[] args) { testa inst = new testa(); inst.non_static_method(); } public testa() { } public void non_static_method() { System.out.println("hahaha"); } }
214 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 00:00:04 ] >>192 ありがとうございます!大変助かりました。 ひどいコードだと思いますが誰かの役にたつかもなので一応かいておきます。(環境変数名の解決はまだです) static String ExePath(String FileName){ String epath=""; try{ //Runtime runexe = Runtime.getRuntime(); Process process = Runtime.getRuntime().exec("cmd /c assoc " + FileName.substring(FileName.lastIndexOf("."))); InputStream is = process.getInputStream(); BufferedReader br = new BufferedReader(new InputStreamReader(is)); String line, line2; line = br.readLine(); System.out.println(line2 = line.substring(line.indexOf("=")+1)); Process process1 = Runtime.getRuntime().exec("cmd /c ftype " + line2); InputStream is1 = process1.getInputStream(); BufferedReader br1 = new BufferedReader(new InputStreamReader(is1)); epath = br1.readLine(); epath = epath.substring(epath.indexOf("=")+1); System.out.println(epath = epath.substring(0, epath.lastIndexOf(" "))); } catch (Exception es) { es.printStackTrace(); } return epath; }
215 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 00:03:48 ] abstractクラスMonsterには、Vampire,Werewolf,Zombieの三つの有形サブクラスがあります。各種のモンスターを六体作成し、1次元配列に格納しなさい。ループを使ってそれぞれのモンスターの種類を表示しなさい。 abstract class Monster { public String toString() { return getClass().getName(); } } class Vampire extends Monster {} class Werewolf extends Monster {} class Zombie extends Monster {} class MonsterTypes { static int NUMMONSTERS = 6; public static void main(String args[]) { Monster monsters[] = new Monster[NUMMONSTERS]; monsters[0] = new Zombie(); monsters[1] = new Vampire(); monsters[2] = new Werewolf(); monsters[3] = new Zombie(); monsters[4] = new Werewolf(); monsters[5] = new Vampire(); for(int i = 0; i < NUMMONSTERS; i++) System.out.println(monsters[i]); } } 実行結果 Zombie Vampire Werewolf Zombie Werewolf Vampire このプログラムに則してポリモーフィズムと動的ディスパッチについて説明してほしいです。お願いします。
216 名前:205 mailto:sage [2007/06/07(木) 00:20:34 ] 親切にありがとうございます。 ここへの質問は初めてです。 >>213 様のソースを実行してみたのですが、エクリプス上では想定通りの結果でしたが コマンドラインからの結果は全く変わりませんでした・・・。 (コマンドラインは再起動しました) staticでは無いメソッドを追加しても変わらない。う〜ん・・・。 javacとjavaのパスは通っているみたいですし、set CLASSPATH=%CLASSPATH%;. をしても変化がありませぬ。 エクリプスのコンパイラは、標準のものを設定してみました。jre1.5.0_11です。
217 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 00:24:09 ] だからstaticもコンパイラも関係ないって。>>210 が切れるのも無理はない。
218 名前:205 mailto:sage [2007/06/07(木) 00:46:02 ] クラスパスのオプションが必要かと思って以下の通り実行しても 結果は変わりません・・・。 java -classpath "C:\Program Files\eclipse\workspace\KBSYS\test" testa ただ、コマンド上でのコンパイルは成功します。classファイルのタイムスタンプも変化します。 >>1 や各種リンクを一昨日から散々あたっているのですが、原因が・・・。 何か、根本的で単純な間違えをしていそうな気もするのですが・・・。
219 名前:213 mailto:sage [2007/06/07(木) 00:57:50 ] >>216 へ 勘違いしているようなので 213のソースコードは>>187 へのレス。 ただ213のソースコードが動かないとするとバージョンの違いではない。 今からやれることはだね、 1. ファイル名とクラス名が一致しているか確認(test.javaでclass testaとかしてないか) 2. java -cp . testaを試す 3. DOS窓じゃなくcygwinならセミコロンの代わりにコロンで区切ってみる 4. さっぱりわからんからjdkの再インストール
220 名前:213 mailto:sage [2007/06/07(木) 01:13:05 ] わかった。。。 (wrong name: test/testa) ← なんでpackage化されてるんだよ! java test.testa でいけない?
221 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 01:16:35 ] プロジェクト名がKBSYSなんでしょ。 そしたらtestはパッケージなんじゃねえの? cd "C:\Program Files\eclipse\workspace\KBSYS" javac test\testa.java java test.testa これでどうよ?
222 名前:221 mailto:sage [2007/06/07(木) 01:17:54 ] >>220 うわ、かぶった。すまん
223 名前:213 mailto:sage [2007/06/07(木) 01:27:30 ] >>221 どもです。。。 たぶんtestディレクトリの一個上の階層で やるべき作業がわからなくて、結果が同じです、 と言われることを考えたら、全部書くべきだった orz
224 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 01:31:08 ] え、動いたの?動いてないの?
225 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 01:48:28 ] 誰か223を英訳してくれ
226 名前:デフォルトの名無しさん [2007/06/07(木) 01:52:58 ] JAVAアプレットでTextAreaを使うと.append(string)でテキストを追加できますが TextComponentを使うと.setText(string)で書き込む事は出来ますが全て上書きに なってしまいます。TextComponentで追記するにはどうすればいいのでしょうか?
227 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 02:04:36 ] >>225 Thanks, >>221 Maybe, the questioner will be failed again and say the same output. Because the execution should be in the upper directory. I should explain everything.
228 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 02:08:23 ] >>226 敢えてやるならgetStringでとりだして文字列追加してsetString。 素直にTextArea使った方が早くね?
229 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 04:10:16 ] public class Test { public static void main (String[] args) { String str = "t u"; //tの後に空白(スペース)2回 String[] token = str.split(" "); //空白で文字列を分ける for (int i=0; i<token.length; i++) { if(token[i] != " ") //文字列が空白でないとき System.out.println(token[i]); } } } というプログラムなんですが、実行結果が t u となり、if(token[i] != " ")がうまく作動してくれないのか、空白を認知してくれません。 実行結果が t u となるようにしたいのですが、どうしたらいいのでしょうか? 初心者なんでよろしくお願いします。 あと、strを "u(t" として、String[] token = str.split("("); とするとエラーが出るのですが、それはもともと"("が対応してないからでしょうか?
230 名前:229 mailto:sage [2007/06/07(木) 04:12:50 ] >>229 のはインデントがうまくいってないので補足です。 str.split(" ") ←空白1個でsplitしています。 よろしくおねがいします。
231 名前:229 mailto:sage [2007/06/07(木) 04:25:58 ] すいません、自己解決しました。 まさかと思い if(token[i].length() != 0) とするとちゃんと t u になりました。 空白は文字としてカウントされないんでしょうか? でもそしたらsplit(" ")でスプリットされないんでは・・・。 なんか解決できたけどしっくりこないです。
232 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 04:38:13 ] >>229-230 >>1 読め。 それから API 仕様も読め。java.lang.String#split() とりあえず if(token[i] != " ") //文字列が空白でないとき を if(!("".equals(token[i]))) //文字列が空白でないとき に直せば期待する動きになると思う。 > あと、strを "u(t" として、String[] token = str.split("("); この場合は String[] token = str.split("\\("); とする必要がある。
233 名前:229 mailto:sage [2007/06/07(木) 05:04:06 ] >>232 あ、stringに==使ってたんだ…。超初歩的な間違いですねorz すいません、ご指摘ありがとうございます。 あと、”\\(”の件ですが、\\の意味についてググってみたら ”(”は特別な文字で\\はエスケープ文字といってそれを識別してくれる役割をもつみたいですね。 とても勉強になりました。ありがとうございます。
234 名前:デフォルトの名無しさん [2007/06/07(木) 10:38:07 ] >>226 回答ありがとうございます。 僕は自分で作成したアプレットのテキストエリアの様なものに BufferedReader fin = new BufferedReader(new FileReader("File.txt")); while((line = fin.readLine())!=null){ みたいに.txtファイルを読み込んでそれを自分で作成したボタン "すべて選択"、"コピー"という2つのボタンでコピーしどこにでも貼り付けれるような 状態に出来るGUIを作りたいのですがどうすればよいのでしょうか? getString()で取り出してsetText()で追加というやりかたがうまくいかなかったのですが getStringが使えなかったのでgetTextでやってみたのですが・・・ どうすればいいのでしょうか?よろしかったら例を挙げて教えていただけると助かります。
235 名前:デフォルトの名無しさん [2007/06/07(木) 13:28:53 ] 入力した数字を時間Aとして認識して、 その入力された時間Aの12600000ミリ秒後は何時何分(時間B)なのか、 更に時間Bの12600000ミリ秒後は何時何分で更にその12600000ミリ秒後は以下ループという風に作りたいのですが、 入力された数字を時間として取り扱うにはどうしたらいいのか困っています。 たとえばFormなんかで <INPUT type="text" name="text1">時<INPUT type="text" name="text2">分で入力します。 と表記して24時間表記で時間を入力させる(例01:15)として、それを午前1時15分だという風に解釈させる方法がみつからないのですが、どうしたらいいでしょう?
236 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 13:38:59 ] Calendar
237 名前:デフォルトの名無しさん [2007/06/07(木) 13:55:29 ] ノートパソコンにJavaをいれたいのですがどうすればいいですか? 共有ソフトが使えません。
238 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 13:57:35 ] 開発環境一式をCDなりDVDに焼いてノートパソコンにインストールする
239 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 16:13:10 ] >>237 共有ソフトという謎のモノに詳しい人に聞きなさない
240 名前:デフォルトの名無しさん [2007/06/07(木) 16:39:33 ] winrarとかいうヤツ
241 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 17:39:19 ] 今日からJAVAをはじめようと思ってNetBeansをインストールしたのですが、 何をどうすればいいのか良く分かりません。とりあえずプロジェクトなるものを作って、 出来たMain.javaにネットから持ってきたHelloWorldの表示プログラムを貼り付けたのですが、 実行してみるとエラー?かなんかで実行できません。しかも文字化けしてるし・・・。 Cannot find nbproject/build-impl.xml imported from E:\a??a?-a?°a?ca??a みたいな感じなのですが・・・。助けてください
242 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 17:51:45 ] >>241 ttp://pc11.2ch.net/test/read.cgi/tech/1154582593/l50
243 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 17:54:09 ] そっちで聞けって事ですね! ありがとでう
244 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 19:06:17 ] GUIの左上のアイコン(コーヒーカップの絵)って変えられないんですか?
245 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 20:27:18 ] >>244 java.awt.Window, java.awt.Frame,javax.swing.JFrame,javax.swing.JWindow あたりの setIconImage() setIconImages() かな?
246 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 21:36:36 ] >>245 詳しくありがとうございます 変更できました
247 名前:デフォルトの名無しさん mailto:sage [2007/06/07(木) 22:03:17 ] JTableの列にJButtonをいくつか描画して、それぞれのイベントリスナを実装しました。 まず手始めに、そのボタンをクリックするとコンソールに そのボタンが存在するrowを表示するもので試し成功しました。 次はボタンが押されたら、そのボタンが存在する行を削除するものを試しましたが、 消せたり消せなかったりします。消せないときはボタンとしての機能が 完全に止まっていてイベントすら発生しません。 原因がさっぱりでわかりません。
248 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 07:43:48 ] ソースもなければエラーメッセージも無しか、ゆとりは凄いな。
249 名前:247 mailto:sage [2007/06/08(金) 08:14:31 ] すいません。携帯からだったもんで。 そして今もまた携帯からなんで出直します。
250 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 10:12:36 ] 質問です。 テキストフィールドに入力された文字列がプログラム中で指定されている文字列と正しいかどうか判定するには、 どう記述したらいいですか?
251 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 10:16:11 ] >>250 >>1
252 名前:デフォルトの名無しさん mailto:sage [2007/06/08(金) 10:18:22 ] >>250 <input type="text" name="hogehoge" value="" /> ↓ request.getParameter( "hogehoge" ).equals( "tashiro" )