1 名前:デフォルトの名無しさん mailto:sage [2008/04/05(土) 17:53:34 ] プログラミング言語Javaに関する質問スレです。 JavaScript, Ajaxの質問は、ここでは受け付けていません。 Web製作板をご利用ください。pc10.2ch.net/hp/ 過去ログ、関連スレッド、よくある質問とその回答など、 質問をする前に、貴方が見なければならないサイトについての情報は、 下の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質問・相談スレッド113【大歓迎】 pc11.2ch.net/test/read.cgi/tech/1204363011/ /* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。 質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */ また、当スレで質問をするかたは、回答をもらえたときに、 wikiの更新をして頂ければ、忝のう存じます。 次スレは>>980 あたりで。
445 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 21:29:39 ] 質問なんですが 入力された文字が数値なら次の処理に行き 文字列だったら数字が入力されるまで繰り返す っていうプログラムを例外処理を使わないで 作るにはどうすれば良いのでしょうか?
446 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 21:43:48 ] >>445 if文とfor文で作る
447 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 22:19:36 ] 質問です。 時計を作成し、テキストフィールドに表示させるようにしたのですが、 時計が表示されているテキストフィールドに文字を入力する事が出来てしまいます。 テキストフィールドにキーボードからの入力が行われず、 時計の表示のみを行うにはどの様にしたら良いのでしょうか?
448 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 22:31:15 ] swingについて質問です。 ボタンを押すことで、画面構成を変化させるようなプログラムを作りたいのですが、 ActionListenerから呼ばれるメソッド内でコンポーネントをaddしても反映されなくて困っています。 以下のような感じを考えているのですが、「ボタンを押すことによってコンポーネントの構成を変える」 というのはどのようにすればよいのでしょうか? import java.applet.Applet; import java.awt.event.*; import javax.swing.*; public class Test extends Applet implements ActionListener{ JButton go=new JButton("開始"); // 開始用ボタン JLabel label=new JLabel("変化反映"); /** 初期化ルーチン */ public void init(){ go.addActionListener(this); this.add(go); //this.add(label); //ここに書くと表示される } /** ボタンを押されたときの処理 */ public void actionPerformed(ActionEvent e) { if(e.getSource()==go){ this.remove(go); this.add(label);//ここで追加しても反映されない this.repaint(); } } }
449 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 23:12:21 ] >>445 do{ str = input; // 何らかの入力処理 }while( !数値かどうか(str) );
450 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 23:29:21 ] >>448 add()やremove()をした後にはvalidate()を呼ぶ必要があるらしい。 詳しくはjavadocのContainer#add()あたりを参照。
451 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:16:50 ] >>449 ごめんなさい その数値かどうかって判定が分からないです
452 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:24:10 ] 普通は Integer.parseInt() で例外発生するかどうか。 めんどくさいが丁寧に最良パフォーマンスで実装するなら boolean digit = true; for(int i=0; i<str.length(); i++){ if(! Character.isDigit(str.charAt(i))){ digit = false; break; } } 例外より遅いかもしれないが楽して正規表現使うなら (符号無視) if(str.matches("\\d+")){ // 数字 }
453 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:26:30 ] Character.isDigitは全角数字や漢数字、デヴァーナーガリ数字などにも trueを返すから使い方によっては要注意。
454 名前:448 mailto:sage [2008/04/19(土) 00:29:00 ] >>450 意図したとおりの動作ができました。ありがとうございます。
455 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 07:13:28 ] 数値かの判定? 正規表現でいいじゃねーか
456 名前:デフォルトの名無しさん [2008/04/19(土) 11:37:48 ] 配列とループの質問なんですけど、 簡単に例えると、 配列: int[] i = {1,5,4,3,2,8,4,6,1,5,7,9,3}; があって要素番号を1から順にループしていって 最初の5が出た時に表示などの処理、 2回目の5が出た時にループも終了ってのはどうすればいいですか?
457 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 11:45:32 ] >>456 やりたいことを書いた方が良いレス付くと思うぞ。 表示するならタイマーか何かで要素を取得するルーチンにwait置かないとだめだろうし。
458 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 11:50:26 ] >>447 お願いします
459 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:02:45 ] >>458 setEditable(false)
460 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:04:03 ] ついでにsetBackground(SystemColor.text)
461 名前:デフォルトの名無しさん [2008/04/19(土) 12:05:46 ] deebuu.com/nsoku-area/ これの県名部分を 今の食べ物表示に改造してくれ・・・・・。頼む!
462 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:07:31 ] >>461 JavaScriptはスレ違い。
463 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:11:24 ] >>456 int[] array = {1,5,4,3,2,8,4,6,1,5,7,9,3}; int count = 0 for (int i=0; i<13; i++) { if (array[i] == 5) { if (count == 0) { System.out.println("5"); count++; } else break; } }
464 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:15:50 ] テキストファイルから数字を読みだすクラスを教えてください。 Stringとして読む方法ならわかります。
465 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:17:25 ] >>464 バイナリじゃなくてテキストなら、 Stringとして読んだ後で数値に変換する。 変換方法はちょっと前のやりとり参照。
466 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:18:38 ] >>462 (´;ω;`)ウッ…
467 名前:464 mailto:sage [2008/04/19(土) 12:37:48 ] 解決しまつた 読み出し結果 = Integer.parseInt(line.replaceAll("[^0-9]","")
468 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 12:48:54 ] >>459 ありがとうございます!
469 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 20:00:08 ] 以下のコードを実行すると、fillRoundRecの残像(?)が残ってしまいます。 Image img; // オフスクリーンイメージ Graphics g_off; // グラフィックオブジェクト int miss_count = 255; // オフスクリーンバッファ作成 img = createImage(640, 480); g_off = img.getGraphics(); // 描画領域の塗りつぶし miss_count += 4; if (miss_count > 255) { miss_count = 255; } if(miss_count != 255) { g_off.setColor(new Color(255, miss_count, miss_count,128)); g_off.fillRoundRect(10, 57, wx - 10 * 2, 28, 20, 20); } 残像とは、うすいピンク色の物体のことです。 デバッグしたところ、g_off.fillRoundRectが実行されていないときに残像が表示されてしまいます。 この残像を消す方法を教えていただけないでしょうか?
470 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 20:52:23 ] Vectorに入れたストリングオブジェクトからメソッドを参照しても見つからないと出ます・・・ Vector ve = new Vector(); String s = new String("One Two Three Four Five Six Seven"); ve.addElement(s); int len = ve.elementAt(0).length(); String substring = ve.elementAt(0).substring(len - 10, len); // 末尾の10文字を抜き出す System.out.println(substring); Vectorに入れると何か変わってしまうんですか?
471 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 20:58:29 ] >>470 elementAtの返値はObject型になってるのでキャストすること。 つーか、JDK1.4で学習するのは推奨しないが……
472 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 21:02:58 ] (String)(ve.elementAt(0)).substring(len - 10, len); え〜っと こういうことじゃないですよね…… Object型からの変換ってどうしたらいいんですか?
473 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 21:05:19 ] そういうことですよ
474 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 21:13:37 ] >>473 無理です><
475 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 21:16:41 ] >>472 括弧の位置微妙に変じゃない?
476 名前:474 mailto:sage [2008/04/19(土) 21:24:14 ] わからない…… 教えてくだせorz
477 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 21:41:48 ] Object o = ve.elementAt(0); String s = (String)o; s.substring... と段階を追って書けばいいんじゃない?
478 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 21:57:02 ] System.out は final フィールドなのに System.setOut(PrintStream) を呼んだ後は 値が変わるようなのですが、 こんなことが可能なのでしょうか?
479 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 21:58:48 ] >>470 int len の行もキャストが必要。と言うか、操作するなら取り出しましょう。 List<String> list = new ArrayList<String>(); String str = "One Two Three Four Five Six Seven"; list.add(str); String ret = list.get(0); int len = ret.length(); if (len >= 10) { ret = ret.substring(len - 10); } System.out.println(ret);
480 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 22:10:34 ] >>478 nativeで実現されてるからできる。
481 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 22:13:05 ] >>478 フィールドへの参照はfinalだけど、OutputStreamの中の状態とかは変化できる 大雑把に言えばこんな感じになっていると考えればOK class System { final OutputStream out; void setOut(OutputStream out) { this.out.setOutputStream(out); } }
482 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 22:14:46 ] finalはバイトコードレベルではただのフラグだな。 コンパイラが代入されたり継承されたりしないように尊重してるだけで、 バイトコードレベルでの代入自体は実はできるってことじゃないの?
483 名前:474 mailto:sage [2008/04/19(土) 23:48:16 ] >>471 いまさらですがJDKについてkwsk 回答してくださった方ありがとうございます。参考にさせていただきます。
484 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 23:57:01 ] >>469 これを描画する前に真っ白の同じ形のものを描画すればOKでした。 おさわがせしました。
485 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:13:36 ] はじめまして、かなり初歩的な質問なんですが、 NetBeansで jTextFieldに配列を使って名前を付けるにはどうすればよいのでしょうか?? for (int i=1 ; i<=10 ; i++) { jTextField1[i] = new javax.swing.JTextField(); } みたいなことをやりたいのですが、やり方がわかりません... どなたかご教授お願いいたします。
486 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:17:02 ] >>483 今まではオブジェクトが何でも入れられたので、 取り出される要素の型が特定できない そこでとりあえず、出した要素の型は全部Object型ということにして、プログラマにキャストをさせるようにしていた ところがJDK1.5からはジェネリクスなる仕組みが用意され、格納できる型が固定できるようになった こんな感じ Vector<String> ve = new Vector<String>(); これでveにはStringしか入れられなくなる ve.add("hoge"); ve.add(new Integer(1)); //エラー 格納できる型が指定できるのだから、取り出す型も自然に決まってくるので キャストの必要がなくなる。ジェネリクスでぐぐってみては あと蛇足だが、今ならVectorの他にLinkedListやArrayListが用意されている。違いは同期化の有無
487 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:21:14 ] >>486 1.5になってからもはやVectorを使わないような そんなことない?
488 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:25:31 ] System.outがfinalなのにセットできるのは昔の名残だ。
489 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:45:33 ] 古いAPIがListではなくVectorを返しやがるみたいなときに 使わざるを得ないことはあるな。
490 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 00:46:08 ] それはListで受けられるだろう。 引数がVectorだとListのままじゃ渡せないが。
491 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 02:30:08 ] FocusLostでフォーカスを失ったときに、 失う前に元々フォーカスがあったところを調べるのってどうすればいいんでしょうか?
492 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 02:35:03 ] 最近拾ったスクリーンセイバーがリモートネットワーク 72.5.124.55 ポート80に アクセスしようとしていたのでセキュリティーソフトでアクセス禁止にしたのですが、 jabaの何か、としか私には解りませんでした、ここの人たちに聞けば親切に教えて くれるという事で尋ねてみました。 素人の私でも解る説明で教えてください。
493 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 02:39:28 ] void focusLost(FocusEvent e) { Component lostFrom = e.getComponent(); Component gainedBy = e.getOppositeComponent(); } か?
494 名前:491 mailto:sage [2008/04/20(日) 04:43:55 ] 493さんありがとうございます!!なるほど! これで、元々フォーカスのあったコンポーネント(jTextField)に入力されている値を取得したいのですが、 lostForm.getText(); だとエラーになるんですが、これじゃ駄目なんでしょうか?? 何度もすいません。ご教授お願いいたします。
495 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 11:55:14 ] >>494 if (lostFrom == myTextField) { String s = myTextField.getText(); } ==は同じオブジェクトを指してるかどうか型違っても==
496 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 11:56:37 ] 編集しかけで送信してしまった。 ==は同じオブジェクトを指してるかどうかの判定だから、型違っても使える。
497 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:03:17 ] JTextFieldが複数あって、どれでも処理が同じ場合は いちいち==で比較するより if (lostFrom instanceof JTextField) { JTextField tf = (JTextField)lostFrom; String s = tf.getText(); } のほうがいいだろうな
498 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:15:00 ] >>497 これはよくない気がする
499 名前:デフォルトの名無しさん [2008/04/20(日) 12:41:16 ] Javaのパッケージで定義されているクラスの中身って見れます?? 例えば java.awt クラス Label のメソッドgetText()がどういう処理してるのかとか
500 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:43:58 ] ソースコード付いてるだろ
501 名前: [2008/04/20(日) 12:46:41 ] Eclipseとか使ってたらF3で一発だよ。
502 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:48:09 ] Java ディレクトリに入ってる src.zip の中を見れ
503 名前:デフォルトの名無しさん [2008/04/20(日) 13:04:18 ] あっ...ほんとだ >>500-502 迅速な解答どもです じゃあ、iアプリの com.nttdocomo.ui クラス Label とか見れます? 探したけどdojaディレクトリの中探したけど見当たらん。。。
504 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 14:45:35 ] プロプラな部分のソースを付けるわけないだろ
505 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 14:46:35 ] MIDPならPhoneMEのソースが使えるがPhoneMEのMIDPは2.1だな。
506 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 15:30:18 ] Graphicsクラスで文字にアンチエイリアスをかけるにはどうすればいいのでしょうか? Graphics2Dクラスじゃないとできないのでしょうか?
507 名前:デフォルトの名無しさん [2008/04/20(日) 15:41:36 ] Javaで2次元ベクトルを要素とする動的2次元配列 を作るにはどうしたらいいでしょうか? 配列はArrayListで作ってみたんですが、エラーが意味不明。。 あとdouble2つを持った2次元ベクトルクラスって標準ライブラリには無いんでしょうか?
508 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 16:08:21 ] java.awt.geom.Point2D.Doubleとか。
509 名前:デフォルトの名無しさん [2008/04/20(日) 17:15:25 ] >>504 やっぱ非公開か。ありがとう。
510 名前:491 mailto:sage [2008/04/20(日) 17:35:11 ] >>495-497 早速のご回答ありがとうございます if (lostFrom == myTextField) { String s = myTextField.getText(); } これって、元々テキストが入ってたテキストフィールドが「myTextField」ってことですよね?? だと、for文で全てのテキストフィールドを一致するか調べて探すっていう形になるんでしょうか?
511 名前:507 [2008/04/20(日) 18:01:18 ] >>508 ありがとうございます。求めてたのはそれです、、が java.awt.geom.Point2D.Double foo = new java.awt.geom.Point2D.Double(); はO.Kなんですが、 Point2D.Double foo = new Point2D.Double(); と書くとPoint2Dパッケージがないと言われるのですが、そういうものなのでしょうか?? あと、このクラスに限らず、ArrayListの2次元配列に入れたものを取り出すとき bar = data.get(1).get(2).x; 等とやると、java.lang.Object クラスに変数xなんてない、 と言われるのですが、どうしたらいいのでしょうか?
512 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:22:54 ] >>510 ずらずら書くのもループで回すのも構成次第でしょう。 >>511 冒頭に import java.awt.geom.Point2D.Double; と書けばよいのでは?
513 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:23:43 ] 漏れた。 JDK1.4までのArrayList#getの返値はObject型なのでキャストが必要。
514 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:50:11 ] ArrayList の現在の要素数を取得するにはどうすれば良いのでしょうか? ArrayList.size で取得できるかと思ったのですが、以下のエラーが出てしまいます 「size は java.util.ArrayList で private アクセスされます。」
515 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:07:38 ] >>511 importも分からずにCollectionとは恐れ入った もう一回勉強した本を読み返すことをおすすめする
516 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:08:05 ] >>514 privateだからアクセスできません
517 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:12:56 ] >>514 メソッドとフィールドに関して勉強して来い
518 名前:514 mailto:sage [2008/04/20(日) 19:23:24 ] >>516-517 レスありがとうございます すいません、質問の仕方が変でしたね。 質問する時は最低限やったことを書くべきだと思ったので size が private でアクセスできないことを確認した旨を書きました。 聞きたかったことは ArrayList の現在の要素数を取得方法です 動的にサイズが変化するので要素数の取得をするべきではないのでしょうか?
519 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:33:05 ] 質問です。 あるJavasprictを改造中なのですが、フォルダの構成上、ファイルまでのパスをURL指定にしたいのですが、 以下の記述をどのように修正すればよいのでしょうか? downloadDir : '../ファイル名.php?img=フォルダ名/'
520 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:37:11 ] >>1
521 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:37:47 ] >>518 sizeメソッドを呼ぶ。
522 名前:514 mailto:sage [2008/04/20(日) 19:40:44 ] >>521 ありがとうございます!
523 名前:478 mailto:sage [2008/04/20(日) 21:26:36 ] 勉強になりました。ありがとうございます。
524 名前:510 mailto:sage [2008/04/20(日) 23:00:53 ] なるほど。ありがとうございました。
525 名前:デフォルトの名無しさん [2008/04/20(日) 23:49:12 ] javaのソースの中にたまに「class名#メソッド」 な記載があるのを見るのですが、これって何でしょうか。 staticだったら「class名.メソッド」だろうし staticじゃなかったら「インスタンス名.メソッド」かな と思っていますがそれ以外の何かがあるのでしょうか
526 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 23:51:57 ] >>525 インスタンスメソッドを示すときのお約束。 言語的にはそういう書き方はできない。
527 名前:デフォルトの名無しさん [2008/04/21(月) 00:00:20 ] >>526 ありがとうございます!!
528 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 00:06:00 ] jTextFieldを複数用意していて、 それを全てクリアしたいのですがどういう方法でやればいいのでしょうか? for (int i=1 ; i<=100 ; i++) { myTextField[i].setText(""); } のようにやればできるのですが、 テキストフィールドの変数名に配列を使わないでやるには一つづつsetTextしていくしかないんでしょうか? それだとあまりにも面倒なもので... もし良い案をご存じでしたらお願いします。
529 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 00:12:47 ] >>528 思いつかないこともないですが、もっと面倒くさいです。 たとえば、getComponents() メソッドで属するコンポーネントを全て獲得し、 forで一つ一つJTextFieldかどうかを確認し、JTextFieldならクリアする…という方法があると思います。
530 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 00:27:58 ] >>526 嘘をおしえるな。
531 名前:デフォルトの名無しさん [2008/04/21(月) 00:28:09 ] ユークリッドの互除法を用いて、 与えられた2つの整数の最大公約数を出力するJavaのプログラムを示せ。 java GCD 45 18 ←入力 9 ←出力 この問題どなたか分かりますか?
532 名前:デフォルトの名無しさん [2008/04/21(月) 00:40:15 ] >>492 です、>>493 〜>>529 の皆さん、ありがとうございました。 おかげさまで、スクリーンセイバーの件は解決できました。 興味が出てきたのでジャバの勉強もしてみようと思います、 これからいろいろと質問とか疑問に思った事を相談に来ると思うので、 その時は宜しくお願いします。 ☆⌒(*^-゜)v Thanks!!
533 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 00:46:04 ] >>531 まず、ユークリッドの互除法でぐぐってみてはどうだろうか 一番上にWikipediaが来て、 1. 入力を m, n (m ≧ n) とする。 2. n = 0 なら、 m を出力してアルゴリズムを終了する。 3. n が m を割り切るなら、 n を出力してアルゴリズムを終了する。 4. m を n で割った余りを新たに m とし、更に m と n を取り替えて 3. に戻る。 こんな解説が載ってるわけだが
534 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 01:40:55 ] ループ文を break で抜けるように メソッドを抜ける方法はありますか? public void hoge(int i) { if (i > 3){ System.out.println("nothing to do"); //ここでメソッド抜けたい } fuga(); }
535 名前: mailto:sage [2008/04/21(月) 01:42:05 ] return; と書けばいいよ。
536 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 01:47:09 ] 返り値が void でも return が使えたんですね、知りませんでした。 ありがとうございます
537 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 12:41:56 ] javaの初めからあるクラスで、エクステンズしてもいいクラスと いけないクラスの区別のつけ方と、 クラスのオーバーライドしてもいいメソッドの区別の仕方を おしえてください。 オーバーライドしてもいいメソッドやクラスは正常に動作するという意味です。
538 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 15:40:07 ] 自宅では問題ないいのだけれど、出先(友人宅や学校など)でJava Runtime Environment が入ってないPCでJavaアプリを使いたいのですが、USBやリムーバブルHDでJRE環境を 持ち歩くにはどうすればイイでしょうか?持ち歩いている人なんていないのでしょうか?
539 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 19:35:32 ] >>537 アクセス制限に引っかかることがなく、かつ final ではない場合、クラスの継承およびメソッドのオーバーライドが可能。 意味が分からなければ、実際にやれば分かる。コンパイルエラーになるから。
540 名前:デフォルトの名無しさん [2008/04/21(月) 21:36:57 ] postlet.com/ このアプレットでは日本語ファイルの送信時に、文字化けが発生するので ソースのUploadThread.javaの265行目のfile.getName()をUTF−8にエンコードするようにしてリコンパイルしました。 (コンパイルは通り、アプレットは生成されました。) これをtomcat/struts環境で利用するとエラーが発生します。 オリジナルのアプレットは正常に動くのですが、リコンパイルしたものではエラーが発生する状況です。 この状態の回避方法を教えて下さい。 このアプレットで日本語ファイル名のファイルを文字化けなく送信したいです。
541 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:39:09 ] ログ読もうよ。TOMCAT_HOME/logs/stdout.log あたりになんか 吐き出されてるんじゃないの。
542 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:42:07 ] >>538 pc11.2ch.net/test/read.cgi/software/1196692396/l50 portableapps.com/node/1141 thingamablog.sourceforge.net/phpBB2/viewtopic.php?t=16 USB に JRE を積んで、それを叩くバッチファイルを作ればいい みたい。詳しくはリンク先で確認してちょ。
543 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:51:27 ] >>536 m9(^Д^)プギャー
544 名前:デフォルトの名無しさん [2008/04/21(月) 21:57:15 ] double x = 1010.101ってのを整数部と小数部に分けたいんだけど 整数部はMath.floor(x);でいいんだけど、 小数部はどうしたらいいのか分からないっす・・・ 小数部 = x - Math.floor(x)ってやると0.100999999999ってなっちゃうんです。
545 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:02:42 ] >>544 > ってやると0.100999999999ってなっちゃうんです。 doubleの数値を10進の文字列Stringに変換してから小数点で トリミングして切り出せばいい。