1 名前:デフォルトの名無しさん mailto:sage [2008/11/17(月) 01:09:54 ] プログラミング言語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質問・相談スレッド120【歓迎】 pc11.2ch.net/test/read.cgi/tech/1223603727/ 次スレは>>990 あたりで。 過去ログ、関連スレッド、よくある質問とその回答など、 質問をする前に、貴方が見なければならないサイトについての情報は、 下のwikiのページにまとめてあります。 www.wikiroom.com/java/
577 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 17:34:05 ] アプレットで六角形を描きたいのですが、drawPolygonメソッドがint型の配列しか引数に 取れないようなのでどうすればいいかわかりません。以下のコードをどう修正したらいいですか import java.applet.*; import java.awt.*; public class hexagon extends Applet { public void paint(Graphics g) { double sqr3 = Math.sqrt(3.0); double[] xPoints = {5, 15, 20, 15, 5, 0}; double[] yPoints = {0, 0, (5*sqr3), (10*sqr3), (10*sqr3), (5*sqr3)}; int nPoints = 6; g.drawPolygon(xPoints, yPoints, nPoints); } }
578 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 18:43:10 ] >>577 intにキャストすれば?
579 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 18:44:54 ] >>578 同一インスタンスを返すようにreadResolve()をオーバーライドすればいいということかと。 readResolve()を知らないなら、直列化について詳しく調べるといい。
580 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 19:07:11 ] 直列化のsrcとdstでインスタンスのアドレスが違うからstatic final intみたな定数として機能してないってことが問題なんですけど? 何が問題が良く分かってないじゃないですか。それにインタフェイスではそのAPIはありませんよ。 直列化するときは普通はクラスのほう使いますけど。
581 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 19:17:10 ] なんでintしか扱えないんだろうか
582 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 19:36:09 ] >>580 readResolve()はANY-ACCESS-MODIFIERなメソッドだけど、 デフォルトではprivateなメソッドだから、javadocにも載ってないし、 オーバーライドしろといわれてもピンとこないのは、非常によく分かる。 ただ、直列化を使用するなら、直列化の仕様ぐらい調べようぜ。 それより、"クラスのほう"って何?
583 名前:デフォルトの名無しさん [2008/12/02(火) 20:04:29 ] 当然class ObjectInputStreamですよ。 intなのは、swichの実装が32ビットだと容易だからです。 それと仕様は読んでるんですけど、参照をフィールド定数として使いたいことと直列化は関係ありません。 enumが使えるJDKならいいんでしょうが、なんか上手い方法はないでしょうか・・・・
584 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 20:16:50 ] >>580 java.sun.com/javase/ja/6/docs/ja/api/java/io/Serializable.html > 代替オブジェクトのインスタンスをストリームから読み込むときに > そのオブジェクトを指定する必要のあるクラスでは、 > 次のシグニチャーを正確に指定して、この特別なメソッドを実装する必要があります。 > > ANY-ACCESS-MODIFIER Object readResolve() throws ObjectStreamException; 1.1 だと使えないんだっけ?
585 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 20:22:14 ] readResolveが一つの解決法なのは分かりますが、あなた、ちょっとしつこい
586 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 20:23:31 ] もうジャバはめんどい! C#とマイクロソフトだけで俺はしあわせ!
587 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 20:23:53 ] >>585 readResolve での解決では、何か不満が?
588 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 20:27:48 ] >>583 何この場か
589 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 20:29:09 ] >>585 >readResolveが一つの解決法なのは分かりますが、あなた、ちょっとしつこい いや、別人ですから。
590 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 20:32:05 ] ここまで全部俺の書き込み
591 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 20:37:57 ] どれがだれのだれへの発言なのか
592 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 20:41:19 ] >>それにインタフェイスではそのAPIはありませんよ。 >>直列化するときは普通はクラスのほう使いますけど。 横道にそれるけど、インタフェイスとクラスの理解があやふやじゃないか。 普通はクラスのほうを直列化って、インタフェイスも直列化可能と?
593 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 20:46:13 ] >>569 ワイルドカードは、 引数に対してコバリアントにしたい場合は、super を使い、 返り値に対してコバリアントにしたい場合は、extends を使う。 例えば、Comparator<T> は、T が出てくるのが、 int compare(T, T) しかないので、extends のワイルドカードを使っても全くの無意味。 逆に、Iterator<T> は、T が出てくるのが T next() しかないので、super のワイルドカードを使っても全くの無意味。 ところで、Effective Java 第2版の和訳はどうなん? 第1版は和訳が酷いとかいってた人が居たけど
594 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 20:50:23 ] javaでmysqlサーバに現在時刻を取得するためにクエリを発行して取得した結果が 2008-12-02 20:47:03.0 というように最後に余計な物がついてきます。これなんとかならないでしょうか? String query = "select now();"; try{ Class.forName("org.gjt.mm.mysql.Driver"); con = DriverManager.getConnection(url, user, pass); stmt = con.createStatement(); rs = stmt.executeQuery(query); rs.next(); TimeStamp = rs.getString("now()"); System.out.println(TimeStamp); }catch(Exception e){ System.err.println(e); } こんな感じのソースです 2008-12-02 20:47:03 これだけあればいいです
595 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 20:51:16 ] 5.0じゃないならreadResolveしかないだろ。なんでゴネてんだ?
596 名前:デフォルトの名無しさん [2008/12/02(火) 21:10:50 ] Swingで質問です… JScrollPaneのViewportViewにJTreeを二つ設置したJPanelを指定したのですが スクロールペインの中央にJTreeが並んでしまって困ってます BoxLayoutでJPanelにJTreeを設置するとテキストがまともに表示されない(後半が途切れる)ので GridBagLayoutで白紙のパネルをJTreeの下に設置し、JTreeを左上になんとか表示してます こんな無理矢理な方法を使わず、素直にJTreeを二つスクロールペインの左上に設置する方法は無いでしょうか? 何方かご教授下さい…
597 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 21:13:56 ] >>594 なんで getTimestamp しないの? java.text.SimpleDateFormat あたりを参照するよろし。
598 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 21:34:12 ] 鯖のシステム時刻とクライアントのシステム時刻が一致している 保証はあるけ?
599 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 21:35:47 ] >>597 >>598 ありがとうございます。結論から言うと、substring(0,19)で解決しました しかしなんで末尾にへんな.0がつくのかちょっと謎です
600 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 21:37:54 ] >>598 なるほどね。 ならそもそも SQL 上で整形して出力すべきだね。
601 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 21:39:37 ] ん?と思ったけど Timestamp で取得してりゃ問題ないんじゃないの? unix epoch time からの時間な訳だし…。 まぁどうでもいいや。ガンガってw
602 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 21:44:44 ] >>567 eclipse万歳〜 プランクトン万歳〜
603 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 21:53:54 ] eclipseなんて使ってると馬鹿になるぞ ってのが口癖のEmacs使いの先輩がRailsを理解できない 規約言う前に原理を説明しろとか言って怒鳴る 頭固くなってんのはどっちなんだろう
604 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 21:55:52 ] よく考えたら直列化で定数フィールドのアドレスが変わっても、equalsで解決できそうなのでそっちでやってみることにします。 実際はEnmuMapみたいなことが出来れば良いのですが、マップを使った配列アクセスみたいですけど m.put(ONE,val); m.put(TWO,val2); したあとに直列化しても m.get(ONE).equals(val)==true であることが条件です。こういうのは出来ないのでしょうか。
605 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 22:11:54 ] >>603 こんなところで先輩の悪口いってるおまえも相当アレだけどなw
606 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 22:46:37 ] >>596 sage忘れた上にSwingスレがありました…本当に申し訳ないです
607 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 23:01:39 ] >>603 「IDE? クソ使い難いエディタ付いてるだけのキッチンシンクが使いもんに なるわけねーだろ、JK」と思ってたら、リファクタリング機能のあまりの 素晴しさにEclipseに転んだEmacs歴15年の俺が通りますよ、と。 まぁ、ScalaはScala Pluginが現状役に立たないので、scala-mode.el一択 なんだがな……。
608 名前:デフォルトの名無しさん [2008/12/02(火) 23:24:18 ] emacsってそんなにいいんですか?ただのエディタじゃないですか。 しかも正規表現を使った検索・置換があれば最低現十分なのに、カスタマイズが多すぎて不要な機能が多いし。 実際私が論文書くときや役所に提出する書類なんかもms word 95と表機能程度で十分ですし、一体全体エディッタやIDEに何を望んでるんですか?といってみるテストw
609 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 23:29:42 ] >>603 IDE でしか coding したことないと馬鹿になるというか発想が 狭くなるという意味では先輩に合意する。けど、IDE を使って も良いと思うし、単純ではない GUI とかは IDE 使わない方が 時間の無駄だと思う。
610 名前:デフォルトの名無しさん mailto:sage [2008/12/02(火) 23:43:13 ] エディタだとしてもコードのコピペで済むので、時間の無駄って感覚がわかんないんですけど。 GUIとか外見のテンプレートがあってあとはロジック書くだけってならJavaじゃなくても今の時代ならWebでいいかと。 Javaの良いところはコテコテの言語サポートや特定用途でしかつかない意味不明な機能があったりせず、 シンプルにエディタのみで、OO思考的に必要なクラスファイルを書いていくだけでいいってところだと思うんですけど。 でも数千以上のクラスファイルを管理できるぐらいに頭良くないとちょっと無理か。
611 名前:デフォルトの名無しさん [2008/12/02(火) 23:45:29 ] >>603 >先輩がRailsを理解できない >規約言う前に原理を説明しろとか言って怒鳴る 先輩と君との間には、だいぶ深い差があると感じる。
612 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 00:02:31 ] >>610 Java は色々な名前がやたら長いから通常のエディタじゃかったるくないか? Exception 名とか
613 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 00:20:21 ] 自分もXEmacsからEclipseに乗り換えたクチですが、便利だなと思える機能は 「それって文法的に自明だから、自動化できるよね」という物が殆どです。 例えばインターフェイス実装時のスケルトンの自動生成なんてのは典型ですし、 リファクタリング時の参照関係の追跡と参照元の書き換えなんかもそう。 手作業でも出来るけど、時間の無駄だしエラーの元なので今では「そこは自明 なので勝手にやっちゃって下さい」という感じです。 あとはエラーやプロジェクトの状況が視覚的に分かりやすいのも良いかな。 あまり関係ないですが、インターンの学生に課題としてクラスのスケルトンと JUnitのテスト一式を与えたら随分楽しそうに取り組んでいます。 メソッド実装してEclipse上でテストを実行する度にグリーンが増えていくのが 楽しいらしいです。
614 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 00:25:50 ] C#は言語仕様をIDEで楽にプログラムできるようにしてあるとか聞くね C++はIDE使ってもjava+eclipseほど楽になんなかった
615 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 00:29:12 ] >>614 >C++はIDE使ってもjava+eclipseほど楽になんなかった それはMFCの設計の悪さから来ているだけ。
616 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 00:48:09 ] つーかjavaでeclipse以外の選択肢って無いだろ eclipse使わない奴は自分のつまらない信念とポリシー(笑い)を主張してるだけ
617 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 00:50:40 ] javaビーンズとやらもマシになったと聞くが あれはポトペタ?が楽になっただけか?モ?
618 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 00:54:28 ] >C#は言語仕様をIDEで楽にプログラムできるようにしてあるとか聞くね この辺りを言語仕様に組み込むのは、MSっぽいし商売を感じる。 VBだけにしてくれってところだけど、そのうちVBもC#もどの言語でも垣根がなくなるんじゃないか? dot netの機能で、C#では出来るけどJScriptでは出来ないとか言うわけにはいかないだろうし、 そもそも演算子オーバーロードーと同じく言語サポートとしてoperator - ()とするかライブラリでBigInteger.subtractにするかの差でしかないからなぁ。
619 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 01:13:09 ] ポイ捨てアプリならIDEでハックでいいんじゃないかと思うけど、自作ライブラリはエディタでつくるけどね。 実際継承ばかりだから重複するコードはないし、ちょっと手を加えてsuper.method(arg)とかで、 ほとんどOO的にしか作ってないしな。 テンプレート目的で使うIDEだと、確かにイミュータブルとかstatic void method(), clone()とかの概念を全く理解できないだろうからバカになるってはあるか。 javacとjavadocは非常に優秀だからこれだけで十分だけど・・・ Exceptionとか長いのは、「れ・い・が・い」ではなくて、「えくせぷしょん」と脳内で英語で発音しながらタイプするといいですよw 英会話とか英語に慣れてないと無理でしょうけど。 なれてくると、「あん・さぽーてど・おーぺれいしょん・えくせぷしょん」とリズミカルにタイプするようになるでしょうw
620 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 01:23:53 ] EclipseとNetBeans両方使ってるけどNetBeansの方が楽だな 軽いし
621 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 01:45:25 ] プロフ取るのはNBの方が簡単なんで好き
622 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 02:44:48 ] 初心者のおじさんが通ります。 eclipseは良いですな。 初心者には。 実体を意識しなくてもコーディングできると言う意味では ○インスタンスの考え方(メモリとの関係とかポインタとか)が5年たっても身に付かなさそう ○ロジックに集中できる分素人が書いてもある程度動く(といいなぁ) ○して、初心者がプログラムに手をだす、と いわゆる世紀末ってやつです。世紀末はY2Kをなおざりにしたまま通り過ぎましたがwww
623 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 03:14:07 ] >実体を意識しなくてもコーディングできると言う意味では IDEといっても機能は多彩なので、機能ごとに話は変わってくるかと。 コンテンツアシストやリファクタリング支援などについては泥臭い作業は 大いに省いてくれるものの、それほど「実体」から離れることになるとは 思いません。 スタブの自動生成やポトペタについては・・・確かに初心者が無理解の まま使っていると危ないなと思う光景は、多々あります。 初心者向けで良いと思うのはコードの整形機能です(IDEに限りませんが)。 「一つメソッド書いたらCTRL+SHIFT+F」と指導しておくとオートインデントの 結果からループ構造の間違いなどに気がつくことも多いようです。 結果としてインデントの重要性を理解して、自ら意識してタブを打つように なるのも早いような気がします。 何れにしても、初心者であれそうでない人であれ、IDEのメリットは >ロジックに集中できる ここに尽きる気がします。
624 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 03:31:04 ] IDE が「何を自動化してくれているか」を 理解しないまま IDE を使うべきではない とおもう あと Eclipse vs NetBeans の議論は ここでしないでくれ
625 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 03:35:24 ] >>622 蛇足ながら、コンテンツアシスト機能も初心者には良いと思います。 というのも、プログラム勉強したばかりの人がプログラムを書くと 変数名が宣言順にa,b,c,d...だったりする事が良くあります。 その度に「ちゃんと変数の意味を考えて長い名前をつけろ〜」など 指導しますが、「だって長い変数名をタイプするの面倒だし・・・」と 無言の抵抗が返ってくることが、ままあります。 そのような場合でもコンテンツアシストによる変数名補完を覚える と、長い変数名に対する抵抗感も随分とマシになるようです。
626 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 03:41:03 ] まあねぇ。 非static を参照できないってIDEに言われて理由を聞くと、 「IDEがだめって言ったから」、じゃねぇ・・・・
627 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 04:19:02 ] 機能てんこもりも困るし、お節介も面倒だし、IDEも玄人と初心者用に分派するんじゃないの? ただ、エクリプスは実際はプラグインの拡張を使っているだけでエクリプス固有(swtなど)の機能を使っているわけではないし、 もしnetbeansでも使えたら両者の機能的な差はないってことで、一太郎とワードの使用感(UI)でしかない。 netbeansはopenofficeと同じくもう一回ぐらいメジャー・バージョンアップすると最強になるんじゃないかと思う。
628 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 10:30:46 ] 何年経っても中身がわからないまま使ってるなんて余程向上心がないんじゃないの しかしそんな奴実際見たことねーぞ
629 名前:577 mailto:sage [2008/12/03(水) 10:36:11 ] ところで六角形の質問をした者ですが、そのreadresolveとやらを使って実際に ソースを書いてもらえませんか?
630 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 10:56:40 ] >>629 readResolveが出てきたのは >>579 がレス先間違っただけのような >>577 の話なら double[] 使わずに int[] 使って n*sqrt3 の部分を全部 (int)(n * sqrt3) にすれば?
631 名前:577 mailto:sage [2008/12/03(水) 11:00:29 ] intにキャストすると小数点以下が失われて1になってしまうものかと思ってましたが、違うのですか
632 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 11:19:22 ] >>631 System.out.println(5 * (int)sqrt3); // -> 5 System.out.println((int)(5 * sqrt3)); // -> 8
633 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 11:21:18 ] 了解です ありがとう
634 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 12:30:04 ] 細かいところ気にするなら Math.round を使えば良い。
635 名前:デフォルトの名無しさん [2008/12/03(水) 13:09:01 ] >>629 この程度の分からないなら六角形を描くとか以前の問題だな。カス
636 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 13:16:10 ] いや、だから初心者スレに来てるんだろw ここはプロフェッショナルスレじゃないよw
637 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 13:19:47 ] 自分で調べられないようなカスの相手をするな。スレが荒れる
638 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 13:26:52 ] >>629 >>630 すまん、レス先間違えた。 579は576へのレスのつもりだった。
639 名前:577 mailto:sage [2008/12/03(水) 13:48:09 ] 他にもっときれいな書き方とかあったら教えて下さい
640 名前:デフォルトの名無しさん [2008/12/03(水) 14:01:22 ] チンコなきれいだって?!
641 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 14:20:56 ] チンカスだなお前は。ウザい消えろ
642 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 14:24:10 ] カス野郎がチンカスとかほざいてるよw
643 名前:577 mailto:sage [2008/12/03(水) 16:42:40 ] なんかよくわからないのでとりあえず他の掲示板で聞いて来ます
644 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 16:48:29 ] Implって何? どんなクラス?
645 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 16:51:13 ] 盗聴するクラス教えて
646 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 16:57:24 ] >>644 implementationの略 インターフェイスの既定の実装を提供するクラスに対して 名前を考えるのが面倒な時に○○Implというような名前を付ける
647 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 17:09:27 ] おれおクラスは学級崩壊すんでんだったぞ。
648 名前:デフォルトの名無しさん [2008/12/03(水) 17:46:16 ] このスレ糞だな。初心者のためのスレじゃないのか? 統合環境がどうだの経験者が屁みたいな話したかったら別でやってこい。 ろくなのいねぇなここは。チンカス師ね
649 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 18:25:52 ] 初心者のためのスレではないが、初心者歓迎なスレです。 スレ民はなぜかささくれています
650 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 18:52:42 ] >>648 チンカスはおまえ。ageんな 鼻糞ww
651 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 19:07:59 ] 喧嘩すんな馬鹿ども
652 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 19:20:28 ] 鼻糞が泣いちゃうだろ。まだジャヴァ初心者なんだからさw
653 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 20:53:36 ] >>639 Path2D path = new Path2D.Double(); path.moveTo(xPoints[0], yPoints[0]); for(int i=1; i<nPoints; i++) { path.lineTo(xPoints[i], yPoints[i]); } path.closePath(); Graphics2D g2 = (Graphics2D)g; g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); g2.draw(path);
654 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 21:53:18 ] 基本的には >>577 で良いと思うけど,応用性とか考えたら final int nPoints=6; final float radius=20,cx=2*radius,cy=2*radius; int [] xPoints = new int [nPoints]; int [] yPoints = new int [nPoints]; for(int j=0; j<nPoints ; ++j){ xPoints[j] = (int)Math.round(cx+radius*Math.cos(2*Math.PI*j/nPoints)); yPoints[j] = (int)Math.round(cy+radius*Math.sin(2*Math.PI*j/nPoints)); } g.drawPolygon(xPoints, yPoints, nPoints); と書くかな。人によるだろうけど。
655 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 23:17:00 ] java.lang.Stringを拡張したしたクラスを作りたいのですが、どのように実装すればよいでしょうか?
656 名前:デフォルトの名無しさん mailto:sage [2008/12/03(水) 23:21:56 ] できない Stringは「変更できない文字列」以上でも以下でもないんだから, class StringUtil { public static String Hoge(String str) { /*strをなんかいじくって返す*/ } public static String Foo(String str, int arg) { /*strをなんかいじくって返す*/ } … } こういうクラスを作っとけば同じことでしょ?
657 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 00:14:07 ] Effective C++とかでも強調されてるけど、継承考えるなら 単にメンバーにする事とどちらが良いか考えなきゃいかん。 多くの場合メンバーの方がまともな答。
658 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 00:27:42 ] Stringの中身を一切変更できないようにすると何かと扱いやすいから, それを保障するために継承を禁止してるの
659 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 03:11:22 ] まんこの実装の仕方を知っているのだがどうすればいい?
660 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 03:30:55 ] いや、つまんないから
661 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 03:42:04 ] おまえらバカども寝ろ。明日会社だろ。暇人か?
662 名前:デフォルトの名無しさん [2008/12/04(木) 04:09:29 ] なんだこいつ?
663 名前:デフォルトの名無しさん [2008/12/04(木) 05:45:24 ] MacOSX1.5環境での質問です。 下記のような実行時エラーが出たのでlibj3dcore-ogl.soが読めないのかと思い、 LD_LIBRARY_PATHやjava.library.pathに.soファイルを含むディレクトリへのパスを追加したり、 カレントディレクトリに.soファイルのリンクを作成したりしてみましたが 一向に改善しません。 他に疑うべきポイントやなすべき操作はございませんでしょうか --- ここからエラー出力 java.lang.reflect.InvocationTargetException at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Constructor.java:494) at com.imakitaindustory.ui.util.ImakitaPluginLoader.createPlugin(ImakitaPluginLoader.java:80) at com.imakitaindustory.ui.ImakitaUI.main(ImakitaUI.java:34) Caused by: java.lang.UnsatisfiedLinkError: no j3dcore-ogl in java.library.path at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1753) at java.lang.Runtime.loadLibrary0(Runtime.java:822) at java.lang.System.loadLibrary(System.java:993) at javax.media.j3d.MasterControl$5.run(MasterControl.java:838) at java.security.AccessController.doPrivileged(Native Method) at javax.media.j3d.MasterControl.loadLibraries(MasterControl.java:821) at javax.media.j3d.VirtualUniverse.<clinit>(VirtualUniverse.java:252) at javax.media.j3d.Canvas3D.<clinit>(Canvas3D.java:3884) at com.imakitaindustory.ui.view.Imakita3DView.<init>(Imakita3DView.java:152) ... 11 more
664 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 11:19:35 ] Mac は .so じゃなくて .jnilib だと思うけど
665 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 13:38:42 ] 質問させてください bmp形式の画像を読み込んで、ピクセル毎のRGBの値を表示させたいのですが、どのクラスを使えばできますか?
666 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 14:19:54 ] >>665 javax.imageio.ImageIO と java.awt.image.BufferedImage
667 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 14:22:08 ] JavaからJRubyの呼び出しを行っているのですが、 オプションを指定して実行する方法がわかりません。 Fiberクラスを使うために--1.9オプションを指定する方法が知りたいです。 Fiberの機能を利用できればいいので、他の方法でもご教授ください。
668 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 14:30:27 ] >>666 さん ありがとうございます!試してみます
669 名前:デフォルトの名無しさん [2008/12/04(木) 16:02:38 ] 将棋倶楽部24でよく将棋を指すんですが ちょっと前にjava更新があったのでしたところ 対局画面の右上に!←こんなのがずっとついてきます 前はこんなのなかったのに やってない人には全く分からないと思いますので 気長に待つつもりです 誰かおね!
670 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 16:42:16 ] >>669 > プログラム・ソフトの使い方は PC 初心者板やソフトウェア板へ。 板の注意書きくらい嫁
671 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 18:07:40 ] Java6 update10 から アプレットがポップアップしたウィンドウに !マークが付くようになった。 以前はウィンドウの下部に 「警告:アプレットウィンドウ」とか付いてたけど。 >> 669 気にしないで大丈夫です。 「これは Java によって表示されたウィンドウです」 という注意書きのようなものです。
672 名前:663 mailto:sage [2008/12/04(木) 20:22:26 ] >664 ありがと何が悪かったかようやくわかった!
673 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 21:32:50 ] 【サンタクロース、トナカイの酒気帯び運用罪での逮捕に、マジ逆切れw】(ZDNet) builder.japan.zdnet.com/story_media/20384793/081204_sun-james-gosling_02_400x300.jpg
674 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 21:37:38 ] マルチすんなカス
675 名前:デフォルトの名無しさん mailto:sage [2008/12/04(木) 22:11:21 ] 【サンタクロース、トナカイの酒気帯び運用で逮捕。有罪判決に、マジ逆切れ&大暴れw(動画有り)】(ZDNet) builder.japan.zdnet.com/story_media/20384793/081204_sun-james-gosling_03_400x300.jpg builder.japan.zdnet.com/story_media/20384793/081204_sun-james-gosling_01_400x300.jpg builder.japan.zdnet.com/story_media/20384793/081204_sun-james-gosling_02_400x300.jpg
676 名前:デフォルトの名無しさん [2008/12/04(木) 22:16:43 ] ゴズリン大先生だってムカムカじゃないか!おまえが無能だからだろ。
677 名前:デフォルトの名無しさん [2008/12/04(木) 23:47:48 ] 無限大の扱いについて質問があります。 A=1/a; if(A>3){ A=3; } という文で、aが0に近い値の場合、AがInfintyになってしまいます。 そして、Aが数字であるということが読み込まれずに、 下のif文が読み込まれないようなのです。 無限大の値と自然数を比べるよい方法はなにかないでしょうか? よろしくおねがいします。