[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 01/06 12:55 / Filesize : 277 KB / Number-of Response : 985
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【初心者】Java質問・相談スレッド115【歓迎】



1 名前:Javaが初心者 mailto:sage [2008/05/12(月) 03:05:27 ]
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    pc11.2ch.net/hp/
Webプログラミング pc11.2ch.net/php/
をご利用下さい。

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」

前スレッド
【初心者】Java質問・相談スレッド114【大歓迎】
pc11.2ch.net/test/read.cgi/tech/1207385614/
次スレは>>990あたりで。

過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
www.wikiroom.com/java/

266 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 01:40:37 ]
もろに被ったな、読み比べて補完してくれw

267 名前:170 mailto:sage [2008/05/18(日) 01:51:25 ]
>>264-265
レスどうもありがとうございます。

理解したつもりが理解不足といわれて&レスの内容をみて、自分のレベルの低さを実感しました。

>>264 で、put だけを synchronized にしても、
ラッパクラスで contains() も提供した場合、contains() と put は同期化されないことを理解しました。

あと、get と put の atomic 性というのも理解しました(つもりです)

>>265 さんの、ロック処理はシンプルに、というのも、以前不必要に synchronized をつけまくって
パフォーマンスを落としたことがあるので実感したことがあります。
どこを同期化して、どこは不要化、というのが大切ですね。

今回の複数の Map をスレッドセーフに更新するというのは、DB の複数テーブルを更新する際に
どこからどこまでを transaction にするか、と似ています(マルチスレッドと同期化、とは違うけど)

もっと勉強します。



268 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 02:30:55 ]
>>267
>以前不必要に synchronized をつけまくってパフォーマンスを落としたことが

Java 6 からVMの改良でsynchronized自体のパフォーマンスが上がってるので、
もしかしたら許容範囲になってるかもしれない (なってないかもしれない)。
不必要なsynchronizedを付けないに越したことはないけれど、
必要なsynchronizedを付け忘れてバグるよりはマシ、と思う。
synchronizedを外す (あるいは付けずに済まそうと企む) ときは、慎重に。

269 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 06:19:04 ]
get で重要なのは(まあどっちも重要だが)原子性より可視性だろ。
VMの最適化で、まだ変数に入れてない値が既に他のスレッドから見えるとか、
そんな奇妙なことが起こりうる。

同期化によるパフォーマンスの劣化は、スレッド間の競合が起こる場合に著しい。
競合で生じるコンテキストスイッチのオーバヘッドは大きく
その場でオブジェクト100個作ってもお釣りが来る。
synchronized 自身は、それほど重くはない。

「Java並行処理プログラミング」は誤訳が酷いね。訳本はみんなそうなのかもしれないけど。
特に最後の happens-before の説明、なんじゃありゃ?
半順序を定義しているだけなのに、ご丁寧に余計な脳内補完をしてる。
意味の通じないロジックや日本語が書いてあったら、無視するか原本を見た方がいい。
英語ができるなら、原本を読んだ方がいいのは言うにあらず


270 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 09:43:02 ]
> 英語ができるなら、原本を読んだ方がいいのは言うにあらず

最後の一文が……

271 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 10:00:20 ]
翻訳が〜ってのは解らないでもないが、英語が読めてもスラスラと読める人間は少ないわけで。
非難するならお前が翻訳しろと。

272 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 11:57:09 ]
いや、普通の感想だろw
金出して買ったものが酷いもんだったら文句いう権利はある。

273 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 12:09:23 ]
>>267
もう辿り着いているかもしれないが、
スレッドセーフ性は「スレッドセーフか否か」と簡単に定義できるものじゃない。

Javaの理論と実践: スレッド・セーフの特性について
www.ibm.com/developerworks/jp/java/library/j-jtp09263/index.html
(ただいまメンテナンス中)


274 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 16:05:21 ]
Rubyで書かれたクラスを利用したいのですが、どうしたらよいでしょうか?



275 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 16:07:57 ]
>>274
っ JRuby

276 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 16:22:28 ]
JRubyの存在をすっかり忘れてました
とりあえずはなんとかなりそうです
ありがとうございました

277 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 20:32:59 ]
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/254.java

このプログラムでどうしても線の描写だけ始点、挙動がおかしくなります
どこを変更すれば他の図形と同様にクリックした箇所を始点、ドラッグして話した場所を終点の線の描写になるでしょうか?

278 名前:デフォルトの名無しさん mailto:sage [2008/05/18(日) 20:42:25 ]
>>277
API docs をちゃんと読んでください。特に java.awt.Graphics を。

279 名前:170 mailto:sage [2008/05/19(月) 02:20:36 ]
>>268-273
レスどうもありがとうございます。
>>273 の URL とか、「Java並行処理プログラミング」を呼んで勉強します。

これまでのいただいた情報を理解するのに精一杯で、しばらくここに質問をする
ことはないと思いますが、ひとまずお礼させていただきます。

280 名前:デフォルトの名無しさん [2008/05/19(月) 07:51:52 ]
JAVAを勉強中の者です。
GUIを使ったサンプルコードで、
final JLabel label=new JLabel("");
というようにlabelやTextFieldにfinalとついているものがありました。
このfinalというのはどういう意味合いでくっついているんでしょうか?
フィールドにfinalが付いている場合は「変更できない」ということですよね。
私が見たサンプルコードだとfinalのついたlabelやTextFieldは表示内容を変更したりしているので、
「変更できない」というのとは違う意味でくっついてるのかなと思ったのですが・・・



281 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 07:55:44 ]
>>280
final ついてたら単に再代入不可能なだけ。
Mutableなオブジェクトなら状態は変更できる。

282 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 08:59:30 ]
>>280
final の上書き(再代入)はコンパイルエラーになるので、コーディングミスを減らせる。
メソッド引数やローカル変数にも適用でき、上書き禁止を明示することができる。
クラスやメソッドに適用しても、上書き禁止(継承禁止)の意味になる。

メソッド内で生成したクラスからの参照を保証する為に、当該ローカル変数を final にすることも。

283 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 11:38:06 ]
ぐち。
クラスをfinalにするとユニットテストが書きにくくて困る。


284 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 12:55:11 ]
そりゃそうだろうな



285 名前:デフォルトの名無しさん [2008/05/19(月) 13:11:07 ]
javaで作るゲームの本に、vistaでゲームを作るとき1/60秒に一回書き換える
ループを作ると誤差がでるから1/10秒で書き換えなさいとか書いてあるけど
1/10秒はカクカクして嫌なので、誤差を出ないように1/60秒で書き換えたいのです。
それなので、そのループを教えてください。

286 名前:280 mailto:sage [2008/05/19(月) 13:11:24 ]
>>281-283
レスありがとうございます。
代入と状態の変更をごっちゃにしてしまっていたということなんですね。
すっきりしました!
どうもありがとうございました。


287 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 17:09:58 ]
>>285は釣られていい餌?

288 名前:デフォルトの名無しさん mailto:sage [2008/05/19(月) 19:04:35 ]
腹が減っていたらどうぞ

289 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 01:54:09 ]
すみません。質問させてください。
コマンドプロンプト上でjavaファイルをコンパイルしようとしても
pathが通っていないらしく、処理ができません。
今設定しているpathを書かせていただきますので、
どなたかご教授下さい。お願いします。
pathです

C:\WINDOWS\system32;
C:\WINDOWS;
C:WINDOWS\System32\Wbem;
C:Program Files\pcdNavi\bin;
C:\Program Files\Common Files\Roxio Shared\DLLShared\;
C:\Program Files\Softex\OmniPass;
C:\Program Files\Fujitsu\sadata\fsaax;
C:\j2re1.4.2_17\bin

ちなみにローカルディスクCのProgram FilesのJavaの中に
jre1.6.0_05フォルダがあり、そのbinフォルダにもjava.exeが入っているのですが・・・。
これは何か関係あるのでしょうか?


290 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 02:12:10 ]
JRE=j2re1.4.2_17=jre1.6.0_05=実行
JDK=コンパイル+実行

291 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 02:39:27 ]
>>289
んむ。>>290の言うようにJDKへのパス通せ。
つかそういうJava以前のことは初心者用の本とかサイトに書いてないか?

292 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 02:42:25 ]
テンプレに誘導が書いてある

293 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 12:35:12 ]
すみません、質問お願いします。
今、JAVAの勉強でサーバとクライアントのプログラムを作っていて(クライアントからコマンドを送り、コマンドに応じてサーバから答えを返すプログラム)、
その中でサーバーから送られた文字列をクライアント側で表示する部分がどうしてもうまくいかず、原因がわからず困っています。
下記がおおまかなコードです(はしょりまくってますが)
・サーバ側
ServerSocket ss;
Socket s;
PrintWriter out;
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
out = new PrintWriter(s.getOutputStream(),true);
for(;;){
<ここにコマンドを受け取ってそれに応じた文字列を返すコードが入ります>
(例) out.println("aaaa\nbbbb\ncccc");
}


294 名前:デフォルトの名無しさん [2008/05/20(火) 12:35:33 ]
javaアプリのmainの変わりにjavaappletのinitにしても
appleが動きませんでした
どうしたら動くのか教えてください



295 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 12:35:41 ]

・クライアント側
Socket s;
BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
〜〜〜〜〜〜〜〜〜〜〜〜〜
for(;;){
<ここにコマンドを入力してサーバへ送るコードが入ります>
String message;
while((message = in.readLine()) != null){
System.out.println(message);
}
}

クライアント側の、while文がうまくいかないみたいなんです。どうもnullになったら抜けるというのがだめみたいで、
例えば送られてくる文字列を2行にしておいてwhile文の条件を2回繰り返すというようにするときちんと文字列が2行出るのですが、
それを任意の行数にしたくて「 != null 」という条件にすると全部の行を表示した後になぜかクライアントが落ちてしまうのです。
質問がわかりにくかったらごめんなさい、何かわかる方がいましたら教えていただけないでしょうか。




296 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 12:41:08 ]
>>295
落ちてしまうって何か例外でも出てるの?
それ捕まえてスタックトレース表示してみれば?

297 名前:295 mailto:sage [2008/05/20(火) 12:51:01 ]
>>296
コマンドプロンプトでやってるんですが、落ちるっていうか全部の行を表示した後に何も表示されなくなるんです。
適当にキーを押しても一切反応せず、でもCtl-Cで終了すると何も表示されなくなったあとに入力したキーを実行しようとした形跡がバーッと表示されるんです。
・・・すみません、わかりにくいですね。こんな感じです。

C:\>java aaa
command : bbb
>>"ccc"
>>"ddd"

ここで本来なら再度command : と出るはずなのですがそれが出ず、ここで適当に「a」とか入力しても何も起こらず、
Ctl-Cを押すと

C:\>a
'a'は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチファイルとして認識されていません。

c:\>

となるんです。








298 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 12:55:12 ]
>>297
readLineで次のデータが送られてくるのをずっと待ってるだけでは?
サーバ側でSocketをcloseするかshutdownOutputすれば通信終了(EOF)になるのでreadLineがnullを返すはず

299 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 13:02:33 ]
ちなみに
while ((message = in.readLine()) != null)
でループするということはストリームが閉じられるまで繰り返すとい
うことだから、このwhileを抜けるともうinから読むことはできない。

コマンド-レスポンスを繰り返したいなら、このwhileでメッセージの終
了判定はできないよ。



300 名前:デフォルトの名無しさん [2008/05/20(火) 13:13:07 ]
javaアプリのmainの変わりにjavaappletのinitにしても
appleが動きませんでした
どうしたら動くのか教えてください

301 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 13:16:14 ]
javaアプリのmainの変わりにjavaappletのinitにしても
りんごが動くわけありません
りんごは手で持って動かしてください

302 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 13:16:53 ]
>>300
具体的に何をどう変更したのか書きなさい。
リンゴが動かないとは何なのか。


303 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 13:18:58 ]
www.hellohiro.com/socket.htm

304 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 13:19:26 ]
万有引力が働かない異世界だからです



305 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 13:20:37 ]
javaアプリのmainの変わりにjavaappletのinitにしても
appletが動きませんでした
どうしたら動くのか教えてください

306 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 13:27:07 ]
>>305
アプリとアプレットは別物なので、mainをinitに変えただけで動くわけはない
アプレットとして動くように作られていないのなら、アプレットとして動くように最初から作り直す必要があるかもしれない

307 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 13:29:04 ]
>>300
アプレットをアプリケーションとして動作させたいってことなら
initはあくまでも初期化処理のみ
メインの動作はstartで行うようにオーバーライドされていることが多いので
インスタンスの生成→コンテナに追加→initによる初期化→コンテナの可視化→startで開始
の順で行う

308 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 13:32:50 ]
ああ逆か
mainをinitに名前を変えてアプレットとして動作させようとしているのか
無茶な

309 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 16:05:00 ]
おまえらそんな餌に食いつくなよ

310 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 18:24:38 ]
アプリもアプレットも分からん人間には食いつきようもない餌だもんな。

311 名前:デフォルトの名無しさん [2008/05/20(火) 19:29:22 ]
#
# An unexpected error has been detected by Java Runtime Environment:
#
# EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x77fcd989, pid=1392, tid=2524
#
# Java VM: Java HotSpot(TM) Client VM (1.6.0-b105 mixed mode)
# Problematic frame:
# C [ntdll.dll+0x4d989]
#
# If you would like to submit a bug report, please visit:
# java.sun.com/webapps/bugreport/crash.jsp
#

何これ

312 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 19:31:30 ]
JVMのクラッシュ

313 名前:デフォルトの名無しさん [2008/05/20(火) 19:38:45 ]
設計根本的に変えたほうがいいのかしら

314 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 20:01:41 ]
マンガlovemakeの画像ってどうしたらコピーできますか?



315 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 20:49:29 ]
Javaのデスクトップアプリでデータをローカルで持ちたいとき、
Windowsアプリで言うリソースみたいなかたちで埋め込むにはどうしたらいいの?


316 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 20:59:03 ]
>>315
リソースファイルで埋め込めばいいよ

317 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 22:26:46 ]
>>293
>質問お願いします。
いや、質問してるのは君だから。
「回答お願いします」か「質問させて下さい」だろ。

318 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 22:58:43 ]
main(String[] args){
try{
HashMap<String , String> hashMap = new HashMap<String , String>();
putData(hashMap);
System.out.println("HashMap(bb) : " + hashMap.get("bb"));
System.out.println("HashMap : " + hashMap);
}
catch(Exception e){
e.printStackTrace();
}
static void putData(Map<String , String>map){
map.put("da" , "Five");
map.put("db" , "Four");
map.put("bb" , "Three");
map.put("bc" , "Two");
map.put("aa" , "One");
}
}
これの実行結果が
HashMap(bb) :Three
HashMap :{db=Four, da=Five, aa=One, bb=Three,bc=Two}
こんな感じになるんですが、これと同じように出力されるプログラムをHashSetで書くことはできますか?
もちろん、HashMapなので出力した際の順序まで一緒には出来ないのはいいんdねすが

319 名前:デフォルトの名無しさん mailto:sage [2008/05/20(火) 23:12:25 ]
>318
DataEntry(String, String) というコンストラクタを持つクラスでも作って頑張ってください。

320 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 02:07:02 ]
HashSet クラスには get だの put だのいうメソッドはないから無理。

321 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 07:09:50 ]
HP-UXで稼動するWebシステムの保守を担当することになり
Java未経験ながらいきなり画面の追加をやらされることになりました。
(Webサーバ:SunOneでアプリサーバ:WebOTX、DB:Oracleです)

Javaは過去に勉強したこともありJavaDocなど使えば、何とかソースは読めるのですが、
ソースを格納するディレクトリの構成がイマイチよくわかりません。
なぜこのファイルはここのディレクトリに入れるのか?
とか、
このディレクトリに入れなければならないってのはどこで定義づけられているの?
というようなことです。

ソースの読み方のような入門書じゃなくて、
Webサーバのディレクトリ構成などJavaでのサーバ構築についての
書籍やアドバイスがあれば教えていただきたく。
「UNIXでJava使ってサーバ立てるならこれは基本書だろ!」
というようなものがあれば、ぜひ読んでみたいのですが。

322 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 07:34:32 ]
そんなんプロジェクト毎のルールだろ?
仕様書嫁よ。

323 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 09:51:11 ]
WEB-INFとかマニフェストファイルのことじゃないの?
いままでの開発をどうやってたのか知らないけど、
最近のIDEとかだと配備までやってくれるよ

324 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 09:56:55 ]
アプリケーションサーバのマニュアルを読め、で済む話。




325 名前:デフォルトの名無しさん [2008/05/21(水) 14:15:58 ]
特定の文字列が、作成可能な『ファイル』を示しているかどうかを判定するにはどうすればいいでしょう?
……いえ、以下のようなコードを書いてみたんですが、「a:\backup\」がtrueになるんですよ。

public boolean check(String fileName){
File tempFile = new File(fileName);
try{
tempFile.createNewFile();
if(tempFile.exists() == false || tempFile.isFile() == false){
return false;
}
tempFile.delete();
return true;
}catch (IOException e){
return false;
}
}

EclipseのデバッガでcreateNewFileまでで止めてみると、tempFileの中身は「a:\backup」として表示されています。
どうやら最後のパス区切りは無視されてるようなふいんき(……素でtypoした(汗))です。
これは「文字列の最後の一文字がパス区切りではないこと」で判定するしかないのかな?

326 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 15:22:28 ]
>特定の文字列が、作成可能な『ファイル』を示しているかどうか
イミフ。ファイル名の事?
OS依存。
それとも任意のファイル名でファイルが作成できるかって事?
OS依存。


327 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 16:49:11 ]
>>325
javadoc で createNewFile を確認しましたか?(特に戻り値を)
File は単純ではないクラスですし、扱い方自体を確認した方が良いと思います。

328 名前:  mailto:sage [2008/05/21(水) 18:43:41 ]
パソコン買おうかと思ってるんだけど、QuadのCPU買ってマルチスレッドのプログラミングをJavaで組んだら
WindowsXPでもマルチコアに対応したプログラムになってくれるんですか?

329 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 18:50:29 ]
javaのマルチCPU(コア)対応って具体的にはどこら辺まで対応してるんだろうね。

330 名前:325 mailto:sage [2008/05/21(水) 20:25:07 ]
>>326
失礼しました。つまり「a:\backup\」と指定されたら「backup\なんて名前のファイルは作れない。\はファイル名には使えないし、ディレクトリ名じゃなくファイル名を指定しろ」というチェックをしたかったのですよ。
>>325のコードにすれば、ファイル名に使える文字だけが含まれているかと「実際に書き込めるか」が一緒にチェックできると思ったのですが。
最後の「\」を無視して「a:\backup」と「a:\backup\」を等価に扱ってしまうのは、Javaの(WindowsのOS依存の部分の)仕様なのでしょうか?

>>327
はい、trueなら作成成功、falseが帰ってきたら既に存在する、ということですよね?
既に存在する場合の処理はもう少し詰める必要があると思いますが(canWriteを使えばいいかな?)、まずはファイル名の問題をお聞きしようと思い、あのようなコードにした次第です。
ステップ実行をさせると(>>325で書いたとおり)createNewFileの後にa:\backupが作られてしまっているのです。
これは(デバッガの表示どおり) new Fileした時点で最後の「\」を無視して「a:\backup」としてFileのインスタンスが作られてしまっている、ということではないのでしょうか?
ちなみに、他の不正な文字(backup*など)を指定すると、意図したとおりにIOExceptionで落ちるようです。

331 名前:325 mailto:sage [2008/05/21(水) 20:31:51 ]
……失礼。
書き込んだ直後に気が付いたのですが、Fileの仕組みだと、「a:\backup」と「a:\backup\」を等価に扱ってもかまわないのですね。
Fileが扱うのはあくまでパスであり、(まだ存在しない場合)そのパスがディレクトリを示すのかファイルを示すのかは、mkDirするかcreateFileするかによって(後で)分かれる。
よって両者は区別する必要は無いので、「a:\backup」と「a:\backup\」は等価に扱ってよい、という理解でかまわないでしょうか?

332 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 22:20:02 ]
>>328
ちゃんとスレッドを使えばそうなる

333 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 22:24:12 ]
Point型に文字を四つ格納したいんだけどどうすればいいの?

334 名前:デフォルトの名無しさん [2008/05/21(水) 22:49:35 ]
質問です。
JScrollPane を使って、エクセルのように動的にサイズを変えるようにしたいんですけど
どうしたらいいでしょう?

JScrollPane のスクロールバーが端の状態で左右のボタンを押したら
自動でサイズが拡張する感じです。

JScrollPane つかうと無理なんでしょうか?



335 名前:334 [2008/05/21(水) 23:10:21 ]
JScrollPane から JScrollBar とってこれるんですね。
でも、JScrollBar のノブが端にあるときにボタンを押しても
AdjustmentEvent は投げないみたいなんで、だめそうですね・・・

336 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 23:26:21 ]
>>328
なる。

337 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 01:16:05 ]
すみませんアノテーションについての質問です

クラスとかフィールドとかメソッドにつけたアノテーションは
リフレクション使って取り出すのはわかったのですが
ローカル変数につけたアノテーションの取得方法がわかりません
ご存知の方お教えください、お願いします


338 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 01:34:19 ]
無理っす

339 名前:デフォルトの名無しさん [2008/05/22(木) 01:51:31 ]
javaからMySQLに接続し、任意のテーブルの列数を取得したいのですが
PHPみたいにmysql_num_rows()みたいなメソッドはありますか?
javadocのjava.sql.*の項を参照したのですが見つからなかったので。

340 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 01:54:40 ]
select countすれば?


341 名前:339 [2008/05/22(木) 02:01:19 ]
>>340
javaでってことに考え過ぎてそっちの方をすっかり考えてませんでした
試してみます。ありがとうございました。

342 名前:  mailto:sage [2008/05/22(木) 04:41:06 ]
>>332 >>336
どうもありがとう。


343 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 08:41:01 ]

ttp://mainichi.jp/enta/geinou/graph/200805/21/?inb=yt
ネット証券会社が主催するFX(外国為替証拠金)取引コンテストの発表会が21日、都内で行われた。
コンテストに特別参加するグラビアアイドルの滝沢乃南さん、山本彩乃さん、折原みかさん、山口愛実さん、佐々木梨絵さん
の5人が顔をそろえ、シストレに挑戦する意気込みなどを語った。
同コンテストは、自分で作成したトレードソフトの機能を評価する「シストレソフト部門」と、
FX初心者でも安心の仮想マネーを使った取引を体験できる「トレード部門」で賞金総額2000万円を争う。
シストレ優秀ソフトは、最高2000万円までの範囲内で買い取りの可能性もあるという。登録受付は22日から。
仮想取引は6月2日〜09年4月30日までとなっている。



▼トレード部門
初期資産500万円で、デモ取引のトレード収益を競っていただきます。
https://www.click-sec.com/corp/guide/demo/
ttp://www.yomiuri.co.jp/komachi/news/mixnews/20080521ok02.htm


▼賞金総額
■社長特別賞(シストレソフト買取価格) 10,000,000円
●シストレソフト部門賞 1位300万円 2位100万円 3位50万円
●トレード部門賞 1位300万円 2位100万円 3位50万円
●前期MVP賞 50万円
●後期MVP賞 50万円

344 名前:デフォルトの名無しさん [2008/05/22(木) 14:52:37 ]
おい、おまえら。俺様が、Java入門者向けに環境変数自動設定ツール作ってやったんだけど、
Vectorにうpしようか迷ってる。まんどくさいんだけど、うぷしたらダウソする人いるかな?



345 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 15:01:25 ]
入門者に自動で設定させんな

346 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 16:34:46 ]
ていうか作らなくても既にそういうバッチがあった気がする。

347 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 16:53:15 ]
っていうかNetBeansとか入れれば環境変数なんて
設定しなくていいし

348 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 20:48:59 ]
JSPでDecimalFormatを使うために下のような指定を行い、
<%@ page import="java.lang.Object.*" %>

下記を書いたのですが、下のようなエラーになってしまいます。

DecimalFormat form = new DecimalFormat();
form.applyPattern("#,###");
int i1 = 20000;
out.println(form.format(i1));


DecimalFormat cannot be resolved to a type

どなたか解決策を教えていただけないでしょうか。
もしかしてインポートするクラスが間違ってたりするのでしょうか?

349 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 20:51:33 ]
お騒がせしました、、import java.text.*;で行けましたorz

350 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 22:34:10 ]
java のプロファイラで、「今はこれを使うのがベスト」ってなんだろう。
お勧めがあれば教えてください。

自分がググって見つけたこと
・Eclipse プロファイラプラグインは、開発が止まっていて Eclipse 3.3 に対応していないと聞いた。
・Eclipse TPTP のプロファイラは、重すぎてうんこ というのを ぐぐると見かける。
・NetBeans 6.1 のプロファイラがいいらしい。

IDE 統合型でない場合は、HPjmeter があるが(これはつかったことがある)、
これくらいでしょうか。


351 名前:デフォルトの名無しさん [2008/05/23(金) 00:16:20 ]
インターフェースを実装したクラスのメソッドに継承もとのコメントを転写したいのですが
何か簡単な方法はないでしょうか?

352 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 00:52:36 ]
Ctrl+C V

353 名前:デフォルトの名無しさん [2008/05/23(金) 00:54:32 ]
>>352
何個もあるのでツールとか使って1回でさくっとできる方法でお願いします。

354 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 02:52:05 ]
コピペは最も代表的なアンチパターン



355 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 03:24:50 ]
>351
何も書かないこと。Eclipse3.3.2 は確認。
どうしてもコメントを書きたいなら、javadocに察知されないように気をつけて。

そういうことではない?

356 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 11:02:47 ]
前スレで20桁以上の計算をしたいと相談したとき、BigDecimalやBigIntegerを使うようにアドバイスをいただいた者です。
今度はiアプリで20桁以上の整数の計算をしたいのですがどういう風にすればいいでしょうか?
ググってみるとDoJaではBigIntegerが使えないという記述を見つけたので相談しました。
よろしくお願いします。

357 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 11:52:02 ]
自分で実装するしか

358 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 13:02:17 ]
>>356
BigIntegerのソースそのまま使うとかw

359 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 13:05:33 ]
そしてGPLに感染、と。

360 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 14:58:29 ]
OpenJDKはクラスパス例外付きだろPhoneMEがクラスパス例外なしだ。

361 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 15:22:37 ]
java.mathパッケージのままだとライセンス上問題でるだろうし
パッケージ改変したり部分的にパクった場合はクラスパス例外適用されんだろ。

362 名前:デフォルトの名無しさん [2008/05/23(金) 16:24:29 ]
とっても基本的なことなんだが、
なんで

int i=2;
String k;
String l;
k="a8";
l="a" + i;

とすると、なんで、k!=lになるんでしょう。

363 名前:デフォルトの名無しさん [2008/05/23(金) 16:25:32 ]
間違えた。

int i=2;
String k;
String l;
k="a2";
l="a" + i;

こちらです。
よろしくお願いいたします。

364 名前:デフォルトの名無しさん [2008/05/23(金) 16:25:59 ]
間違えた。

int i=2;
String k;
String l;
k="a2";
l="a" + i;

こちらです。
よろしくお願いいたします。



365 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 16:28:14 ]
この違いを勉強しろ
k.equals( l ) → true
k == l →false

366 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 16:29:31 ]
>>363
>>1






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<277KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef