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


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

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



1 名前:デフォルトの名無しさん mailto:sage [2007/04/30(月) 22:10:53 ]
過去ログ、関連スレッド、よくある質問とその回答、
質問をする前に、貴方が見なければならないサイトについての情報は、
下の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質問・相談スレッド100【大歓迎】
pc11.2ch.net/test/read.cgi/tech/1175317038

/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */
また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。

JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。pc10.2ch.net/hp/

次スレは>>980あたりで。

267 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 07:56:51 ]
>>266
色々すんなりって例えば?

268 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 07:57:14 ]
一長一短だが、大体において 0 の方が便利。
なにかと計算量を減らせる。

269 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 08:40:45 ]
>>267
一つ目の要素: array[0] より
一つ目の要素: array[1] のほうが分かりやすく自然だと思うんです。

もしあなたがそう思わないなら、それはプログラマーとしての観点を既に持っているからでしょう。

x番目の要素の添え字はx-1ですが、これがx-372だったとしたら
三番目の要素の添え字は、え〜っといくつだ?ってことになりますよね。

>>268
なるほど、確かにそうです。
納得しました。

270 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 09:12:46 ]
>>269
量的にではなく指標だから0からは当然だとおもうよ。
定規が1から始まるのが自然だとは思わない。

271 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 09:20:39 ]
swfup.info/view.php/6857.swf
↑このフラッシュを見てくれ
もし、参加したくなったら
日本奇跡の逆転劇!! スロベニアを抜き単独4位へ
wwwww.2ch.net/test/read.cgi/news4vip/1178574359/

歴史的瞬間にぜひご参加を!!!
どこから誘導されたかも書き込んでねー


272 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 10:37:37 ]
初心者です
textfieldに"java"と入ってたとして、それに対して指定した数だけ"*"を追加したいんですが
どうしたよいでしょう?
指定した数が3なら"java***"といった感じです。
値は変数にはいってます。

273 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 10:44:54 ]
+

274 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 11:27:08 ]
>>273
何文字か指定するにはどうしたらいいですか?

275 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 11:56:41 ]
>>274
一昨日Java始めたばかりのオレが答えてみよう。

public static void main(String[] args) {
String hoge = "java";
String fuga = "*";
int piyo = 3;
for(int i = 1; i <= piyo; i++){
hoge += fuga;
}
System.out.println(hoge);
}



276 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 11:57:45 ]
サンクス!
やっぱ繰り返すしかないのかな・・・

277 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 12:02:39 ]
>>276
>指定した数だけ"*"を追加
って時点で繰り返しは必須だと思うんだけど。

繰り返しで何か都合悪いことでもあるのか?

278 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 14:30:20 ]
>>266
数学の話だが中学校のころ数学教師が教えてくれた。

人間てのは非数を見つけてしまったから数字の0は無を表す
数字ではなく、負数を除いて起点となる数字らしい。
何もないわけではなく「0」という数字が存在している。
だから数学的に数字は0から始まる0起算らしい。

279 名前:278 [2007/05/08(火) 15:06:44 ]
そういえば、数字ってのは+か-方向に無限に伸びていくけど0はそのどちらでもない±0という状態で・・・と続き
最終的にメタ数学の話になったから気にしない方が良いよ。

特に0と配列と演算記号の関係なんて。

280 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 15:12:02 ]
>>266
>>269
Javaに限ったことではありませんってFORTRANプログラマの観点の立場は…

281 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 15:23:45 ]
>>276
どうしてもというのなら繰り返し追加するものが文字列でなく文字限定だが、
public static void main(String[] args) {
String s = "java";
char c = '*';
int n = 300;
char[] cs = new char[n];
java.util.Arrays.fill(cs, c);
System.out.println(s + String.valueOf(cs));
}
みたいに繰り返し文を自分では書かない方法があることにはある。
あと、繰り返しでStringに追加する場合は、
StringBufferかStringBuilderを明示的に使った方がいいかもしれない。
追加するものが3個程度なら大して違いはないと思うけど、大量に追加するなら。

282 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 15:30:50 ]
>>280
FORTRAN はウンコだから。
まあ、0 オリジンにしようと思えばできるけど。

283 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 15:40:07 ]
>>266
配列を配列の配列のように扱いたい場合、
0 から始まった方が便利。

インデックス i, j が与えられた場合、
0 から始まる場合は i * SIZE + j だけでいいけど、
1 から始まる場合は (i - 1) * SIZE + j と、-1 が必要になる。

とか何とか、色々と 0 から始まった方が計算量が少ない事が多い。
一部逆もあるんだけどね。

0 から始まるというイメージは、C をやった方が分かりやすいと思う。
C だと「始点 + インデックス」の位置にある値を参照するという処理になってるから、
1 から始まると始点がムダになる。
始点をズラすと、始点の値を使いたい時にまたズラさないといけない。

他の言語も、このあたりのイメージを受け継いでるんじゃないかな。

284 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 16:36:02 ]
>>269
1番目から始まる自然な序数を選択するよりも、
計算量の減少等の効率を重視して選択した結果なんで、
そういうものだと思って慣れるしかない。
0から始まる場合のインデックスは序数と考えずに、
>>283が言うように始点からのオフセットと考えればいい。

285 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 16:53:18 ]
リスナーって1つのクラスに1つまで??



286 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 16:58:15 ]
>>285
なぜそう思うのかを知りたいもんだなw

287 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 17:02:10 ]
でへ^−^

どんな風にかけばよろしいのかと

288 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 17:04:56 ]
>>285
質問がインスタンスにリスナーをadd〜Listenerで登録するって意味ならたいてい複数のリスナーを追加できる。
もしset〜Listenerとかのメソッドなら一つしか設定できないかもしれない。
そのクラスのドキュメントを見れ。

289 名前:287 mailto:sage [2007/05/08(火) 17:13:24 ]
わかりました!!
で、itemlistenerってクリックされたときのみですか、、、?
selectでindex指定しても動いてくれないんですが、、、

290 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 17:19:35 ]
>>289
だからドキュメントを見ろと言ってるだろ。
java.awt.ListとかChoiceの話か?
ちゃんとselectのところを読め。
> ItemEvent をトリガする唯一の方法はユーザの操作です。

291 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 17:22:28 ]
addItemListenerの説明にも書いてるね

292 名前:デフォルトの名無しさん [2007/05/08(火) 18:57:16 ]
スレッドに関してですが、テスト環境がないので質問させてください。
スレッドプールというものは実行のたびに空いてるCPUコアを探してくれたりするんでしょうか?
それともスレッドが生成された時点でどのコアに所属するか決定してしまうのでしょうか?

293 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 20:10:01 ]
最近javaを勉強し始めました。
www.stackasterisk.jp/tech/java/javaPractice06_06.jsp#2_4
上記のサイトの通りにjspでカレンダーを作成する、というプログラムを書いていたのですが、
このサイトにあるDayTypeConstクラスの意味がよくわかりません。
この定数を変えると土曜日曜の色が変になってしまうのですが、どうしてそうなるのかがよくわかりません。
ご教授お願いします。

294 名前:デフォルトの名無しさん [2007/05/08(火) 21:19:16 ]
pattern = Pattern.compile("ほげほげ");

文字列が入ったString変数をmatcher.matches()で判定したいのです。
そこで数値(1〜9)以外の文字が入っていた場合trueとなるようにするには("ほげほげ")の部分に何と入れればいいでしょう?
ためしに
String str = "あ457"

pattern = Pattern.compile("[^0-9]");
でやったらfalseでした。

しかしString str = "あ"

pattern = Pattern.compile("[^0-9]");
でやったらtrueでした。




295 名前:デフォルトの名無しさん [2007/05/08(火) 21:26:02 ]
↑事故解決しました。



296 名前:デフォルトの名無しさん [2007/05/08(火) 21:45:18 ]

       FOX★公認!!!

俺たちのクリックで日本を一位にしようぜ!!
“30年は日本に手は出せないな”という勝ち方をしたい
wwwww.2ch.net/test/read.cgi/news4vip/1178602852/

1. ポーランド  139,797,680
2. チリ     137,040,439
3. ★日本    86,475,213★
4. イスラエル  80,930,530
5. スロベニア  57,137,042
6. フィンランド  40,857,499

石を投げる戦争から人は進化・進歩を遂げ、剣や槍などの武器をもって戦うようになった
人間はさらに発展し兵器を使う戦争を始めた
そして今、指先一つを武器とした電脳戦争が勃発したのであった・・・
皇国を勝利へと導くには貴様らの参戦が不可欠である

・戦場
www.clickclickclick.com/default.asp
・まとめサイト
www33.atwiki.jp/clickvip/


297 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 21:59:50 ]
コピペ君って馬鹿だな、まで読んだ。

298 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 22:00:27 ]
これからJavaを学ぶ人にアプレットを勧めるのは無駄?
Javaで動くのがやりたいそうなんだけど・・・

299 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 22:08:12 ]
>>298
俺はやったが無駄ではなかった。

つっても本のサンプル見る程度じゃ無駄だと思うがな。
言語に限らず、自分で色々やりたいことやっていじりまくらないと身につかんと思うよ。

C言語のWIN32APIも少しやってるけどドット・座標の考え方とか関数とか似てるから
何も知らずにC言語始めるよりは確実に楽に覚えられてる。

300 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 22:18:58 ]
>>272 亀レス ↓のような方法もあるよ。
String[] tbl = {"*******","******","*****","****","***","**","*",""};
String word = "java";
System.out.println(word + tbl[word.length()]);

301 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 22:24:37 ]
www.uploda.org/uporg802511.xls.html
この問題が宿題で出たんだけど先週授業休んじゃって今日からすることに。。
しかも期限は明後日。
だけどここまだよく理解してなくて、、やばい!
誰か助けてください!お願いします><;;

302 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 22:26:23 ]
.xlsって段階で見る気がしない

303 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 22:26:23 ]
www.uploda.org/uporg802511.xls.html
この問題が宿題で出たんだけど先週授業休んじゃって今日からすることに。。
しかも期限は明後日。
だけどここまだよく理解してなくて、、やばい!
誰か助けてください!お願いします><;;

304 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 22:27:05 ]
あれ?2回も。。すんません。。

305 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 22:39:31 ]
いい忘れましたが問題は英語で書いてあります。。



306 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 22:41:23 ]
うっさいだまれ

307 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 22:41:53 ]
先週って連休じゃん

308 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 22:44:48 ]
>>307
いえ、海外にいるんで連休ではなかったです。

309 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 23:00:53 ]
お二方、コメントいただいてありがとうございました。

>247
なるほど・・・

FreeBSDを使っています。
そこで「文系のためのjava入門」というwin向けに書かれた
コードを実行しようとしています。
helloって書かれたウィンドウを出して終わるプログラムです。

今日、本屋に行ってみたのですが、
X11環境かつjava入門みたいな本が無かったので
前向きにX11でも動くようにいろいろ調べてみようと思います。

>248
FreeBSDでJDKやX11環境は整っていますので、
たぶん、win用のコードをX11でも動かせるように変更しなきゃいけない
と思っています。
いろいろ調べつつやっていこうと思います。


310 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 23:04:57 ]
質問です。

class A{
 int x;
}

A a = new A();
A b = new A();

とせずに、a,bを配列とかでまとめられないでしょうか。

311 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 23:13:37 ]
A[] a = new A[2];
a[0] = new

312 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 23:40:25 ]
>>298
日本に限って言えば無駄ではないと思う。
けど、今時アプレットなんて国内でもエロブラウザゲーしか見ない。
入門本はコマンドラインすら使えない人を考慮してる。

JWSおすすめ。

>>303
せめてテキストエディタで見れるようにしてから宿題スレ行こうね。

313 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 23:46:54 ]
>>311
ありがとうございました。
2行目が思いつきませんでした。

314 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 23:52:09 ]
ボタンの配置にご助言お願い出来ますか?
up.spawn.jp/file/up19856.txt
※EUC-JPで保存されてます

下の方を左右分割してパネルでボタンを配置しようかなと思ってます。
しかしながらGridLayoutとかだとパネル全体をボタンが埋め尽くしてしまいます。
で、それはやめといてsetBoundsで座標指定しようかなと思うのですが上手くいきませぬ。
パネルとレイアウトをコメント化して
  upBtn.setBounds(10,10,100,50);
  downBtn.setBounds(20,20,100,50);
  ・・・
だけでコンパイルしたのですがボタンが表示されませんでした。
JSplitPaneは消すしか無いのでしょうか?

315 名前:デフォルトの名無しさん mailto:sage [2007/05/08(火) 23:59:53 ]
>>299 312
なるほどなー。
JWSも考えたんだけど、選択肢としてもう1度検討してみるわ、thx



316 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 00:17:28 ]
>>314
中身を検討せずにぱっと見ただけなので見当外れかもしれんが、
setBoundsで直接指定したいのならFlowLayoutなんて使っちゃダメじゃないか?
setLayout(null)しないと。

317 名前:314 mailto:sage [2007/05/09(水) 00:28:02 ]
なんと!レイアウトにnullが設定出来るとは思っても見ませんでした。
レイアウトをコメント化しても上手く行かなかったのですが、こういうことだったのですね。
大変役に立ちました。ありがとうございました!

318 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 00:32:29 ]
>>315
JWSってJavaWebStartか?
ならAWT/Swingなんだからアプレットと部品一緒。
どっちか覚えたらどっちもできるよ。

319 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 00:43:45 ]
検索してもよくわからなかったのでここで聞いてみます

関数をつくるときにPascalで云う参照渡しCで云うポインタってどうするのでしょう?

Cでは

int hoge(int *a, int *b){
*a = 123;
*b = 456;
return 789;
}

int x, y;
int result = hoge(&x, &y);

みたいなことを
Javaでは

int hoge(int[] a, int[] b){
a[0] = 123;
b[0] = 456;
return 789;
}

int x[1],y[1];
int result = hoge(x, y);

みたいに書くしかないのでしょうか?


320 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 00:50:29 ]
>>319
基本形=値渡し
参照型=参照渡し

基本形をラップするクラスが用意されてる(Integerなど)
しかしそんな意味不明な関数やめなさい。
その程度だったら参照渡しよりも戻り値のほうが可読性高い。


321 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 00:51:28 ]
Cじゃないから
int x[1],y[1];
はコンパイルを通らない。
int[] x = new int[1], y = new int[1];

322 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 00:53:38 ]
値を2つ返すから戻り値じゃ・・・ってことじゃないのか?

323 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 00:57:09 ]
class result{
int a,b;
}

int hoge(result r){
r.a = 123;
r.b = 456;
return 789;
}

result r;
int result = hoge(r);

かなぁ


324 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 00:58:26 ]
>>323
はいはい ぬるぽぬるぽ
フィールドpublicにするな

325 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 00:59:33 ]
それ呼び出し側で r.a r.b 書き換わるの?




326 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 00:59:59 ]
>>292
VM の実装依存じゃね?

327 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:00:46 ]
Integerはimmutableだからこの場合役に立たない
Integerかintをラップするmutableなクラスを作ってその参照を渡さないと
>>319が具体例なのかどうか分からないので何ともいえないけど
それならint[] hoge() {return new int[]{789, 123, 456};}とかの方が(どっちもどっち)

328 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:01:55 ]
呼び出し側で書き換えてもらうって考えはオブジェクト指向的じゃない。
自分(インスタンス)の値は自分(インスタンス)が管理する。
外部に公開するのはメソッド。

329 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:03:59 ]
class Result {
final int a;
final int b;
final int result;
Result(int a, int b, int result) { (略) }
}

Result hoge() { return new Result(123, 456, 789) }


330 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:04:23 ]
>>320
回答ありがとうございます
すみません最初の例が良くなかったかもしれません

オブジェクトを複数作ってもらう関数で作業結果をintで返すみたいな仕様です

class A{
}

class B{
}

int hoge(A a, B b){
a = new A();
b = new B();
return 0;
}

呼び出し側

A a;
B b;
int result = hoge(&a, &b);

みたいなことがしたいのです



331 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:06:18 ]
別にjavaでプログラミング=オブジェクト指向的プログラミングじゃないし敢えて茨の道を
そして死亡

332 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:08:40 ]
A a = new A();
B b = new B();

じゃ、いけないのか?
失敗したら例外出すか、結果を知らせるメソッド持たせば。

333 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:11:52 ]
インスタンスを作るメソッドなら作られたインスタンスこそ返すべきもののような気がする。
作業結果は返されたインスタンス自身が知っているだろうし、
結果によってはnullを返されたり例外を投げられたりしてもいいかもしれない。
そして関連性の無い二つのインスタンスを同時に返したりするのは設計そのものの再検討の余地あり。

334 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:13:30 ]
>>331
ご指摘ありがとうございます
確かにそのおかしさを感じてたんです
むしろJava(というかオブジェクト指向)的に
望ましい書き方とかあるならそれでも結構です

やっぱり
class Wrapper{
A a;
B b;
}

Wrapper hoge(){
Wrapper r = new Wrapper();
r.a = new A();
r.b = new B();
return r;
}
(失敗は例外)

みたいにしたほうが良いのでしょうか?

他にも回答くださったかたありがとうございます
もう少し考えて見ます


335 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:17:24 ]
Wrapper hoge()はWrapperのコンストラクタじゃいかんの?




336 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:20:43 ]
オブジェクト指向は処理中心に考えるものじゃないから
目的がわからなければアドバイスしようがない

337 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:23:23 ]
class Hoge {
final A a;
final B b;

Hoge() throws CannotCreateException {
a = new A();
b = new B();
}


338 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:23:59 ]
>>320
> 参照型=参照渡し
ウソを書くな、ウソを。

339 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:24:32 ]
>>336
おかげさまで自分が間違った方向に行こうとしてたのを食い止めることは出来たみたいです
目的はあるのですがこのまま鸚鵡返しで質問繰り返すのもどうかと思いますので
まず設計を見直してもう少し煮詰まってまた分からなくなったら聞きに来たいと思います
色々ありがとうございました


340 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:25:45 ]
>>318
APIレベルの話をしているわけではなくてだな・・・

341 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 01:26:24 ]
class Hoge {
 final A a;
 final B b;
 Hoge() {
  a = new A();
  b = new B();
 }
}
AとBに関連性がなかったら相当気持ち悪いクラスだが。

342 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 04:01:17 ]
このコードを実行すると下のように計算にずれが出てくるんですがどうしてですか。
解決法を教えてください。

class DoubleTest {
public static void main(String[] args) {
double hoge;
for(hoge = 0; hoge < 1; hoge += 0.1) {
System.out.println(String.valueOf(hoge));
}
}
}

0.0
0.1
0.2
0.30000000000000004
0.4
0.5
0.6
0.7
0.7999999999999999
0.8999999999999999
0.9999999999999999

343 名前:342 mailto:sage [2007/05/09(水) 04:03:40 ]
環境を載せ忘れました。

java version "1.6.0_01"
Java(TM) SE Runtime Environment (build 1.6.0_01-b06)
Java HotSpot(TM) Client VM (build 1.6.0_01-b06, mixed mode, sharing)

344 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 04:14:17 ]
>>342-343
    _,,,,._                  、-r
   ,.','" ̄`,ゝ _,,,_   _,,,_   _,,,,__,. | |  _,,,,,_
  { {   ,___ ,'r⌒!゙! ,'r⌒!゙! ,.'r⌒!.!"| l ,.'r_,,.>〉
  ゝヽ、 ~]| ゞ_,.'ノ ゞ_,.'ノ ゞ__,.'ノ | l {,ヽ、__,.
   `ー-‐'"   ~    ~  〃 `゙,ヽ ̄` `゙'''"
                 ゙=、_,.〃

     _____________
    |2進数 小数 丸め誤差     |
      ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
    [Google検索] [I'm Feeling Lucky!]


javafaq.jp/S029.html

345 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 04:28:49 ]
なんというやさしさ



346 名前:342 mailto:sage [2007/05/09(水) 04:34:21 ]
>>344
ありがとうございました。


347 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 11:37:59 ]
アクションイベントによってパネルの色を変えたいんだけどどうしたらいい??
フレームの色は変えられるけどパネルができましぇん

348 名前:デフォルトの名無しさん [2007/05/09(水) 12:48:40 ]
public void setForeground(Color c)

349 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 14:32:13 ]
Frameを継承したクラスで、ウインドウアプリケーションを作っています。
コマンドプロンプトから、hogehoge.javaをjavacコマンドでコンパイル → javaコマンドで実行する際、
適用されるランタイムのバージョンはどこで設定されているのでしょうか?

よろしくお願いいたします。

350 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 16:57:13 ]
>>349
プロンプトで
java -version

351 名前:349 mailto:sage [2007/05/09(水) 17:02:05 ]
って質問が違ったね。

ttp://www.hellohiro.com/appli.htm
にあるように環境変数のJAVA_HOMEを変えると、反映されるかと。

352 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 17:10:16 ]
こんにちは。
北朝鮮から出稼ぎに来ている28歳の無職です。
先日、梅田のハロワのトイレに入って
ウンコをした際、
「トイレットペーパー以外の物は流さないで下さい」
と壁に張り紙がしてありました。
仕方がないので、ウンコを新聞紙に入れて持って来ましたが
非常に不便さを感じました。
皆さんはどのようにしているのでしょうか
参考までに聞かせていただけませんか?

353 名前:349 [2007/05/09(水) 18:20:15 ]
>>350
ご回答ありがとうございます。

JAVA_HOMEはC:\Program Files\Java\jdk1.6.0_01 とし、
Pathは%JAVA_HOME%\bin としています。
コマンドプロンプトのカレントディレクトリにclassファイルを常に置いているので、クラスパスは設定していません。

レジストリエディタでレジストリの値を見たところ、Java Runtime Environment\CurrentVersionは1.6となっています。
JDKのバージョン=ランタイムのバージョンという認識でよいのでしょうか?

354 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 18:34:59 ]
>>353
> JDKのバージョン=ランタイムのバージョンという認識
違う。

JDKのインストーラのデフォルトの設定(全部OKした場合)では、JDKとは別に、JREが入る。
JAVA_HOMEが指してるのは、普通は JDK内のランタイム。
で、JREにはjavacはないけど、C:\Windows\SYSTEM32 とかに java.exe を突っ込むから、
どっちを使うかは、環境変数 PATH の設定による。

レジストリの値は関係ない。

355 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 19:15:10 ]
Microsoft VMを使ったhttp上のシステムにログインする際に、
IEアンダーバーに「アプレット ClientManager notinited」の表示が出て停止してしまいます。
システムは他PCからだと正常に運用されているようです。
JAVAコンソールを見ると、以下の内容のエラーが出ています。
F&Qなどで該当例を探したのですが見つからず、助言いただければ幸いです。
============================================================
load: クラス MGBC940_01BJ.ClientManager.class が見つかりません。
java.lang.ClassNotFoundException: MGBC940_01BJ.ClientManager.class
(中略)
Caused by: java.io.IOException: open HTTP connection failed.
(中略)
load: クラス browserClient.MsgText.class が見つかりません。
java.lang.ClassNotFoundException: browserClient.MsgText.class
(中略)
Caused by: java.io.IOException: open HTTP connection failed.
(後略)



356 名前:349 mailto:sage [2007/05/09(水) 19:36:21 ]
>>354
なるほど。最初から入っているのとは別にもう一つランタイムが入るわけですね。

>C:\Windows\SYSTEM32 とかに java.exe を突っ込むから、
↑すいません。ここの表現がよくわかりません。
 コマンドプロンプトからjavaコマンドを実行したときには、SYSTEM32内のjava.exeを探しにいくということでしょうか?

ちなみにPATHは以下のとおりです。
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\QuickTime\QTSystem\;%JAVA_HOME%\bin;C:\Program Files\Common Files\GTK\2.0\bin

357 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 19:44:36 ]
>>356
PATH に書かれたディレクトリを順番に検索するから、PATHの設定が
> %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\QuickTime\QTSystem\;%JAVA_HOME%\bin;C:\Program Files\Common Files\GTK\2.0\bin

ならば、最初に書かれた %SystemRoot%\system32 は %JAVA_HOME%\bin より優先順位が高い。

358 名前:349 mailto:sage [2007/05/09(水) 20:13:53 ]
>>357
わかりました。そういう意味があったんですね。ありがとうございます。
アプリケーションをjarファイルにして他PCでも動かしたいのですが、
適応するランタイムのバージョンというのは、どうやって見極めればいいのでしょうか?

359 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 21:58:49 ]
>>358
新たに追加されたクラス、メソッドは API仕様見れば since タグふってあるから、
それを調べれば、どのAPIがどのバージョンで動くかは大体分かる。

あとは javac -target とかで、出力したクラスファイルの互換性を気をつける事とか。

360 名前:349 mailto:sage [2007/05/09(水) 22:03:25 ]
ありがとうございました。API仕様を確認してみます。
またここで質問させてもらうことがあるかと思いますが、よろしくお願いします。

361 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 22:27:43 ]
プログラム中で、trueのラジオボタンを setSelected(false); でfalseにしたはずなのに、isSelected()で調べてみたらtrueでfalseになっていません。
どうしたらいいでしょうか?

362 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 22:34:21 ]
>>361
setSelected(false) しても、実際に反映されるのは
次にイベントディスパッチスレッドに処理が移った時なのよ。

>>143 のリンク先とか見てくれ。

363 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 22:39:09 ]
>>362
早速ありがとうございます。
見てみることにします。

364 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 23:09:21 ]
配列に要素を挿入するコードを書いてみましたが、
もっとスマートにかけませか?

String[] str = {"hoge", "huga", "foo", "bar"};
String sonyu = "挿入";
String[] buff = new String[5];

// 三つ目に挿入
int j = 0;
for (int i = 0; i < str.length; i++) {
if (j == 2) {
buff[j] = sonyu;
j++;
}

buff[j] = str[i];
j++;
}


365 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 23:26:04 ]
Listでも使えば?



366 名前:デフォルトの名無しさん mailto:sage [2007/05/09(水) 23:54:22 ]
>>364
String[] buff = (String[])str.clone();
buff[2] = sonyu;

367 名前:デフォルトの名無しさん mailto:sage [2007/05/10(木) 01:15:22 ]
遅レスだけど、
>>309
win用のコードをX11でも動かせるように変更する必要は”ない”。
物理フォントを指定してたら依存する可能性があるが、そういうのはとりあえずコメントアウトしてよし。
問題は単なる環境設定。JDKやX11環境が整っているという認識が間違っている。
とりあえずFreeBSDのスレでも行って聞いてみたら?






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

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

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