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


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

★★Java質問・相談スレッド132★★



1 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 20:02:41 ]
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    ttp://pc11.2ch.net/hp/
Webプログラミング ttp://pc11.2ch.net/php/
をご利用下さい。

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

前スレッド
【初心者】Java質問・相談スレッド131【歓迎】
ttp://pc12.2ch.net/test/read.cgi/tech/1250369910/
次スレは>>950あたりで。

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

267 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 18:56:37 ]
>>263 >>266
アドバイスありがとうございます。
そうですか…。今新しいパソコンを買える状況ではないので…(涙)


読んだ方のレビューもどうぞお願いします。

268 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 19:23:11 ]
パソコンを買い換えなくとも、メモリを2GBくらいまで増設すればだいぶ軽くなる
高々数千円だし、本を買うよりも優先するべき

269 名前:264 mailto:sage [2009/09/06(日) 19:26:55 ]
>>265
トンクス

270 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 19:34:08 ]
>>268
現在256MBで、最大384MBなんです。
128MB増やすだけで使えるようになるんでしょうか。
NetBeansはサンプルを開くだけでしばらく時間がかかりました。

271 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 19:36:05 ]
DDR2入れれるPCじゃなさそうだからこまる

272 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 19:39:03 ]
>>261
どちらも読んだことはないが、Java完全マスターブックは
古いのでやめた方がいい。

273 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 19:40:59 ]
むかし親が所有していた2001年製のSOTECのノートがそのくらいの性能だったな
PC100-SODIMMだった気がしますよwww

274 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 19:42:15 ]
そりゃ、流石にIDEは諦めろ、WindowsXPすら微妙なレベル
我慢してテキストエディタでやるべき
あとSwingとかGUI系は諦めたほうが良いと思う

恐らくは7−8年くらい前のノートPCだろ?
128MBの専用増設メモリ探すだけで大変だわ
1万程度でいいから中古PC買ってメモリ増設、中古のモニタ買っても2万程度。
よくPCを買い換える友達いるなら適当に古いマシンもらうべき

275 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 19:50:28 ]
cel 2.6G mem 256Mでeclipse動かしてたけど苦労した。
いまはオクタコアが2個あっておいしいです。



276 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 19:54:49 ]
時代を感じるね

277 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 19:55:11 ]
オタクコア に見えた

278 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 20:01:22 ]
>>272
5年前の本だと、今では使えないような技術だったりするんでしょうか。
既に読み終えた参考書は幸い昨年の本でした。

>>274
対応したメモリは見つかりましたが、128MB増は効果が低いと思って買ってません。
最初からXPが入ってて、なんとか動いてます。

Javaの勉強ではCPadっていうソフトを使って勉強してますが、これは軽いので
ちゃんと動きます。
Swingも簡単なものしか試してませんが、動きますよ。

279 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 20:10:33 ]
>>264ではないが

static private String addString(){
  return "abcde" + "fghij" + "klmno" + "pqrst" + "uvwxy";
}



static StringBuilder sb = new StringBuilder();
static private String appendString(){
  sb.delete(0,25);
  sb.append("abcde");
  sb.append("fghij");
  sb.append("klmno");
  sb.append("pqrst");
  sb.append("uvwxy");
  return sb.toString();
}

をたくさん呼び出して時間を計ったら、上の方がだいぶ早かったんだけど
何か間違ってる?

280 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 20:11:39 ]
Java SE5の頃よね。5年前って。

281 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 20:13:34 ]
>>279
>return "abcde" + "fghij" + "klmno" + "pqrst" + "uvwxy";

この部分最適化されるからだろ

282 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 20:16:12 ]
>>279
たくさんって何回だ?
数百回程度じゃ大差ないよ

>>278
動かすだけなら動く、ストレス無く動かせて開発できる話とは別の話

283 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 20:30:09 ]
>>279
文字定数の+演算子による結合はコンパイル時に
結合されると言語仕様に規定されている。
"abc" + "def" == "abcdef" // 必ずtrue

たまにこういうのまでStringBuilderに書き直せ、
とか言う奴いるんだけど、なんなのあれ…

284 名前:279 mailto:sage [2009/09/06(日) 20:31:28 ]
>>282
100万回回して、System.nanoTime() で計って二桁ぐらい違うけど
二桁 [ns] ぐらいなら誤差の範囲か すまん

285 名前:281 mailto:sage [2009/09/06(日) 20:32:37 ]
言語仕様では「結合してもよい」だったと思うけど。
たいした違いはないが。



286 名前:279 mailto:sage [2009/09/06(日) 20:36:56 ]
>>281,283
ぬぉ それだったみたい
文字列を変数にしたら append の方が三割ほど早くなった

287 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 20:38:03 ]
jadで逆コンパイルすればおk

288 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 20:39:46 ]
>>285
それじゃあ大した違いになるし、結合される、ってことでOKだったと思う。
文字列定数は同じ内容なら同一のインスタンスを指すことになってる。
だから文字列定数のみ使っているという限りでは==で比較してもよい。

まあこれでも見てくれ。
java.sun.com/docs/books/jls/third_edition/html/lexical.html#3.10.5
>Strings computed by constant expressions (§15.28) are
>computed at compile time and then treated as if they were literals.


289 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 20:47:20 ]
メジャーバージョンの小さい昔の eclipse などの統合環境ならメモリ少なくても動く

290 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 20:50:23 ]
eclipse.iniのJVMのメモリ量でも気づかずに
作業してる奴がいるぐらいなんだから
最近のでも大丈夫じゃね?

291 名前:261 mailto:sage [2009/09/06(日) 20:52:29 ]
みなさん、いろいろなアドバイスをどうもありがとう。

とりあえず「15歳から〜」の本を買って読むことにします。

>>289さんの小さい昔のやつを試しに入れてもダメだったら、
読書だけで頭でっかちになって
新パソコン購入後に実際に動作させてみます。

292 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 20:55:47 ]
CPadで入力して動かすことはできるよね。
初心者はEclipseみたいなIDEを使ったほうがいいって言うけど、
初心者だからこそ全部手動でやったほうが身につくと思う。

293 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 21:02:36 ]
最初はコマンドプロンプトで作業するのは有益だと思うよ。
結局、どうやって何が動いてるか分からないと意味ないからね。

でもそれは最初だけで後はEclipseでいい。
特に文法エラーなんかで数時間悩む意味はない。
即時エラー教えてくれるのは便利。

294 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 21:04:23 ]
初心者レベルなら、身についても仕方ないんじゃない?

295 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 21:09:30 ]
誰でも最初は初心者なのに、ちょっと上達すると初心を忘れて偉そうな気持ちになって上から物を言っちゃうんだよね



296 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 21:10:51 ]
プログラミングの基礎を覚えたいならエディタ+コンパイラでも十分
プログラムでなんか作ってみたいならばIDE使った方がいい
コンパイルエラーはさっさと教えてもらい修正する方がモチベーションが持続する

297 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 21:11:57 ]
>>290
それは起動だけなら充分だろうが、その後の作業がもっさりじゃね?
俺としては、みりんなしのバージョンがオヌヌメ

298 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 21:19:22 ]
>>283
> なんなのあれ…
ただの馬鹿と思っておk。

299 名前:デフォルトの名無しさん [2009/09/06(日) 21:40:33 ]
携帯から失礼します
GUIにスプレッドを使いたいのですが、フリーか評価版で何かありませんか

300 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 21:42:34 ]
>>280
いまJava SE5の本で勉強すると問題ある?

301 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 21:49:08 ]
>>270
それだとテキストエディタ+DOS窓+手動コンパイルでいいんでない?
実際IDEはGUI作るときは必要になるけど、java.io, java.net使う程度とか小物ツール(自作Base64とか)を多く作るならエディタだけで十分だったりする。
機能を分けていってクラスが10個ぐらいになるとIDEが欲しくなってくるけどね。
小物ツールなら例えばアプレットでアニメーションなんかクラスは3,4個(多くて合計1000行)でしょ。

302 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 21:51:30 ]
>>300
言語仕様でいえば問題なし。4は問題外だが。

303 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 21:52:45 ]
そんな中Java1.3が開発言語の現在の勤務先。

304 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 21:59:54 ]
>>300
6 は劇的な変更は無いね。高速化パッチの親玉。

Java SE 6 の互換性
java.sun.com/javase/ja/6/webnotes/compatibility.html

大きな変更としてはせいぜいコレクションが拡張されただけ。
Collections Framework の拡張機能
java.sun.com/javase/ja/6/docs/ja/technotes/guides/collections/changes6.html
>140 のArrays#copyOfRange()も1.6で追加された新機能の一つ。

305 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 21:59:58 ]
Java1.4のリファレンスをもらったんだけど問題あるかな。

java.lang
java.io
java.util
java.net
java.nio
java.math

だけの簡易リファレンスなんだけど。



306 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 22:00:22 ]
>>302
d

307 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 22:02:30 ]
>>304もありがと、チュッ♥

308 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 22:07:45 ]
>>305
1.4 -> 1.5 で総称型が追加されたため、はっきり言って「古い」という問題が。
特にjava.utilのコレクション周りに関して壊滅状態じゃないか?

309 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 22:29:04 ]
public class Hoge extends JPanel {

public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(new Hoge());
frame.pack();
frame.setVisible(true);
}

private JScrollBar scrollBar = new JScrollBar(Adjustable.VERTICAL);

public Hoge() {
setBackground(Color.white);
setPreferredSize(new Dimension(300, 300));

add(scrollBar,BorderLayout.EAST);
}
}
なんで、スクロールバーが右側にならないんですか

310 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 22:39:12 ]
根本的にJScrollBarの使い方がおかしい

311 名前:デフォルトの名無しさん [2009/09/06(日) 22:53:47 ]
リテラルが増えて旧式って言うなら、次の1.7が出ちゃうと1.5, 1.6なんかも旧式ってなっちゃうよ。
1.7の言語(文法)リテラルは結構増えてrubyのようにカオスってるから。

312 名前:デフォルトの名無しさん [2009/09/06(日) 22:56:31 ]
>>303
ブラック派遣乙

313 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 23:15:01 ]
リテラルって何のこといってんのかと思ったら予約語のことか。


314 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 23:18:20 ]
>>275
スレとは関係ないが8コアCPU2発って何使ってるん?

315 名前:デフォルトの名無しさん [2009/09/06(日) 23:24:22 ]
ていうか、次のリリースではクロージャはいらなかったけど、かわりに文法(言語)リテラルを多数サポートして
map["key1"]="val1"とか、map={key: "val1", k:"v"....,}とかjsみたくなる。
だからスクリプトみたいな現代風なコードになるから5,6は少なくともコード上では旧式(冗長)になるんじゃないかな。



316 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 23:34:45 ]
流石に7がリリースされても未だに1.4を引きずっている業界で導入されるのは先だろうなぁ

317 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 23:35:04 ]
>>305
いらない。
java.sun.com/javase/ja/6/download.html
から落とせるドキュメントに必要なものは一通り入ってる。

318 名前:デフォルトの名無しさん [2009/09/06(日) 23:36:25 ]
SAStruts
でフレーム分割を扱う方法を教えてください
HTTPステータス 400 - Direct access for JSP is not permitted.
と表示されてしまします

319 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 23:43:27 ]
メーリングリストで質問しろ

320 名前:デフォルトの名無しさん mailto:sage [2009/09/06(日) 23:59:51 ]
Javaってマルチスレッドだから、同期化に気をつかわなければなりません。
同期化が問題なくできているかは、コードレビューで確認するしかないのでしょうか?

単体テストか結合テストで何らかのツールを用いて確認することは無理ですか?


321 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 00:04:26 ]
Javaはマルチスレッドではなく、マルチスレッドに設計すればマルチスレッドで動くだけ

322 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 00:05:59 ]
>>321
アホじゃあるまいし。それくらい理解しています。


323 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 00:12:43 ]
なさげ
でも一応エージェントつかえばデッドロックは検査できるっぽい

324 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 00:37:49 ]
>Javaってマルチスレッドだから、同期化に気をつかわなければなりません。
これはアホの文章だな

それはさておき、マルチスレッドのテスト技法はぶっちゃけない。
コードレビューというよりは設計の段階から安全に作る以外の方法はない
詳しくはJava変更処理プログラミングって本を嫁

325 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 00:59:41 ]
ロック用に専用のオブジェクト作ればよくね?



326 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 01:06:34 ]
Threadを生のまま使わないのが早道

327 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 01:07:22 ]
タイミングに起因するテストはまず無理

328 名前:デフォルトの名無しさん [2009/09/07(月) 01:07:52 ]
JAVAのIDEで名前が思い出せないものがあります
思い出させてください
糞士痛のApworkusoの続バージョンのような雰囲気のIDEでした

329 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 01:10:58 ]
>>309
ヒント。Hoge のレイアウトは?

330 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 01:15:14 ]
328じゃないけどJava の古いIDEで思い出したのがTeikado・・・ググっても14件。
スペルまちがってる?

331 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 01:16:20 ]
最近の人なので知りません

332 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 01:18:27 ]
質問する気があるなら正しい名前書けよ
想像するにApworksとかそういう名前だと思うが

333 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 01:25:24 ]
>>332
うんいい感じ
そしてその数年後の記憶も書いてください

334 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 01:33:09 ]
Teikadoではなかったと思います
大文字アルファベット3文字だった気がしますが自信がないです

335 名前:318 [2009/09/07(月) 01:56:36 ]
仕方ないのでTilesとc:importを組み合わせてみようと思います



336 名前:318 mailto:sage [2009/09/07(月) 02:18:49 ]
やっぱダメだ
相対リンクがおかしくなるみたい
フレームでなんとかしないと
www.ibm.com/developerworks/jp/java/library/j-jsp06173/

337 名前:デフォルトの名無しさん [2009/09/07(月) 02:33:21 ]
結局iframeにした
チラウラすまそ

338 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 02:35:36 ]
>>330
teikade のこと?

339 名前:デフォルトの名無しさん [2009/09/07(月) 07:17:33 ]
InterStageだろ

340 名前:デフォルトの名無しさん [2009/09/07(月) 10:25:03 ]
keyからvalueを得るの反対の事をするにはどうしたらいいですか?

341 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 10:32:25 ]
valueをkeyにしておく

342 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 10:34:04 ]
そうするとkeyからvalueが得られません。

343 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 10:35:15 ]
両方作れやw

344 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 10:42:13 ]
keyからvalueを得るインスタンス名がaとしたら
valueからkeyを得るインスタンス名を何にしたらいいのですか?
一つにまとめられればこの問題を解決できると考えたのです。

345 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 10:44:05 ]
aなんていう意味を持たない名前を付けるのはやめれ



346 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 10:44:59 ]
aというのは例えばです。
この場合わかりやすくpoolとでもしておきましょうか。

347 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 10:54:41 ]
同じvalueの場合は複数のkeyが取れるようにすんの?

348 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 10:57:46 ]
全単射です。

349 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 11:02:57 ]
reversePool

350 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 11:05:38 ]
ありがとうございました。

351 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 11:12:37 ]
1:1対応ならvalueのインスタンス変数にkeyもたせれば解決だろ、アホ?

352 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 11:20:12 ]
valueがStringとかなら_

353 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 11:21:59 ]
アホ杉
class ValueWrapper {
Key key;
String value;
}
Map<Key, ValueWrapper> map;
終了


354 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 11:25:45 ]
>>353
ValueWrapperからkeyとvalueは取れるが、
valueからkey取れなくね?

355 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 11:27:23 ]
keys()からvalueで取得するの追加すりゃいいだけだろ



356 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 12:31:14 ]
頭いいけど、自分で考えたわけじゃないだろ。

357 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 14:07:01 ]
改行は\r\nか\nのどちらを使えばよろしいですか?

358 名前:デフォルトの名無しさん [2009/09/07(月) 14:14:30 ]
>>357
システム使うのが一番安全

359 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 16:41:49 ]
>>356
おまえは頭悪すぎ
たぶん向いてないから止めれ

360 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 16:53:01 ]
みんな最初は業務からjava始めたの?

最近業務で弄ってるんだけど教えてくれる人がいない
というか、新人教育みたいなのもないから、どうしようもなくて・・。
何から勉強していいものやらね・・。

覚えたいのは山々なんだけど、うまくいかなくてイライラするんだよなー。
なんかいい方法ないかな?
たぶん入門書嫁っていわれるだろうけどw

361 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 16:55:22 ]
>>360
俺はHelloworldからはじめて、とりあえず書いてJavaDocだけでいけたよ
本買ってもあんまり意味はない
無論、他の言語の基礎がないなら基礎から覚える必要はあるけど

362 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 17:00:11 ]
本を嫁、
後は勉強会とかセミナーに参加
自力でやれないことはないが効率悪すぎる

363 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 17:01:34 ]
>>362
それは君が他力本願だからだよ。
独学の方が効率がよい。
君の限界値もたかが知れているね。

364 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 17:04:09 ]
特に初学者の独学では何が重要で何を優先すべきかの判断ができない

365 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 17:08:49 ]
>>364
現場を知らない君が語ることじゃないね。



366 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 17:19:44 ]
上から目線w

367 名前:デフォルトの名無しさん mailto:sage [2009/09/07(月) 17:43:18 ]
そりゃ事実上だもの






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

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

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