1 名前:テンプレ(1/3) mailto:sage [2009/11/21(土) 17:58:46 ] プログラミング言語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質問・相談スレッド133★★ pc12.2ch.net/test/read.cgi/tech/1253376151/ 次スレは>>950 あたりで。 過去ログ、関連スレッド、よくある質問とその回答など、 質問をする前に、貴方が見なければならないサイトについての情報は、 下のwikiのページにまとめてあります。 ttp://www.wikiroom.com/java/
40 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 02:05:45 ] 正直コールバックやイベントドリブンの概念が時代遅れとは思わない。
41 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 02:06:11 ] >>7 では奈美恵を性的にダイナミックな女にすることはできますか? 性的言語で攻めればいいですか?
42 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 02:09:48 ] >>41 伺か?w
43 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 02:12:19 ] >>40 マルチスレッドならそうとも言えるけど・・・多分シングルスレッドなんだろうし・・・
44 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 02:36:41 ] javaとかC++のようなスレッドを言語でサポートしていない言語ではスレッド越しは苦痛ですな
45 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 02:51:36 ] >>44 windows環境しか知らないとそうかもね。w
46 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 02:54:29 ] ですよねー! やっぱり知識がある人は違うなー!!
47 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 02:56:25 ] erlangとか言い出す奴は不能
48 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 03:07:45 ] というか、java/jvmプラットならそもそもwindows第一って言う発想はおかしいんだが。 webとかapplet(javafx,flash)さらにはdbアクセスとかじゃない、windows native(ms officeとか)だけなら素直にdotnet/directx使えよ。
49 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 08:53:56 ] swing のJOptionPane.showInputDialog を使って、こんな感じで、一個のテキストボックスを表示して 文字列を取得しているのですが、二個のテキストボックスを表示させて、文字列を取得することはできませんでしょうか。 private String inputDialog(String str) { String result = JOptionPane.showInputDialog( this, str, "インフォメーション", JOptionPane.INFORMATION_MESSAGE); return result; }
50 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 12:36:48 ] >>48 >>45 はきっとタダの燃料だから・・・
51 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 12:37:34 ] >>49 JOptionPane調べてもなさそう? なら自分でダイアログつくればいいじゃない
52 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 13:44:05 ] >>51 なさそうですね
53 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 16:14:59 ] たとえば、 final JPanel pn = new JPanel(); final JTextField tf1 = new JTextField(); final JTextField tf2 = new JTextField(); pn.add(tf1); pn.add(tf2); int res = JOptionPane.show...Dialog(null,pn,...); if(res == JOptionPane....){ final String text1 = tf1.getText(); final String text2 = tf2.getText(); } こんな感じでメッセージにコンポーネントを指定することで複数取得することはできるよ。
54 名前:デフォルトの名無しさん [2009/11/23(月) 18:28:31 ] ファイルの入出力について質問です。 a.txtの内容を b.txtにコピーしたいのですが、 以下サンプルコードの実行の仕方がわかりません。 コマンドプロンプトで C:\myjava>java WriteFile1 C:\myjava>a.txt < b.txt と記述してもエラーになります。 困っております。お願いします。 public class WriteFile1 { public static void main(String[] args){ if(args.length != 1) { System.out.println("使用法: java WriteFile1 作成ファイル"); System.out.println("例:java WriteFile1 output.txt < input.txt"); 以下略
55 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 18:42:18 ] なんでそこで改行するんだ 例にある通り C:\myjava>java WriteFile1 a.txt < b.txt ってやれ
56 名前:デフォルトの名無しさん [2009/11/23(月) 21:23:01 ] www.searchman.info/java_eclipse/1090.html >>tomcatPluginV321.zip を 解凍すると、com.sysdeo.eclipse.tomcat_3.2.1というディレクトリができます。 これを、eclipse のpluginsディレクトリに保存します。 私の場合ですと、C:\eclipse\plugins に保存します。たったそれだけです。 この設定で行ってもeclipseの設定にtomcatが表示されないのですが何故でしょうか…。
57 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 21:50:08 ] Eclipseはバージョンなに使ってんの? つーかWTPでいいじゃねーか。
58 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 23:01:40 ] 下記を実行したら81E0となります。 なぜ、こうなるのでしょうか? SunのVMで5を使っています。 byte[] b = new byte[2]; b[0] = (byte)0x87; b[1] = (byte)0x90; HexDumpEncoder dump = new HexDumpEncoder(); System.out.println(dump.encode(new String(b,"Windows-31J").getBytes("Windows-31J")));
59 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 23:12:09 ] >>58 Windows-31Jのうちいくつかの文字はUnicodeから変換するときに複数の コードポイントがあるため、そういうことが起きる。 www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=46110&forum=12
60 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 23:20:43 ] >>59 そういうことなんですか。文字コードはややこしいですね・・。 ありがとうございました。
61 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 23:22:49 ] スレがカオスってるな
62 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 23:24:48 ] パラレルGCとコンカレントGCは同じものなのでしょうか? 今、GCの時間を短くしようとしているのですが、どういうチューニングをすればよいのでしょうか。 FullGCを起こさないように、ヒープを大きくして、 ヒープ拡張時のオーバーヘッドをなくすため初期ヒープサイズと最大ヒープサイズは同じにしました。 それでも1回あたりのGCの時間が100ms位かかっており、システムのスループットに影響してます。。。
63 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 23:27:51 ] 前スレでシャローコピーとディープコピーについて質問した者です。 参考になりました。分からない事柄を調べまたひとつ勉強させていただきました。 感謝です。ありがとうございました!
64 名前:デフォルトの名無しさん mailto:sage [2009/11/23(月) 23:46:53 ] 別もんだよ。 www.atmarkit.co.jp/fjava/rensai4/troublehacks02/troublehacks02_2.html ここ見れ。 平均スループットは悪化してる点に注意ね。
65 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 16:28:31 ] 1桁の数字を入力したらEnterを押さなくてもすぐ次の処理を行うようにしたいのですが どのようにすれば良いでしょうか?
66 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 16:57:09 ] 289 :デフォルトの名無しさん :2005/06/01(水) 15:27:21 javaだけではフッキングは無理だな。 JNIでAPI呼ばないと。 TextFieldなんかで定型入力させるのか? だったらリスナで十分だ。
67 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 17:33:01 ] classにpartialを付けてもエラーになるんですけど、 どうやってファイルを分けるんですか?
68 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 17:50:27 ] そんな機能ねーよ
69 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 17:57:07 ] C#じゃないんですから・・・
70 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 18:26:34 ] 不便ですね・・・
71 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 18:27:59 ] 一向に進歩のない言語だというのは実に正しい
72 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 19:57:08 ] わかりやすいからいいじゃん。
73 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 20:41:05 ] partialは良い機能だと思うが、C#のは拘束が弱くて嫌い。 ファイル名規則をClassName$Layout.javaみたいに限定して欲しい。 まあそんなのよりヒアドキュメントを用意してくれ。ラムダ式とか後でいいだろ。
74 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 20:41:12 ] C#はむしろ変えすぎ。2.0とそれ以降は、CとC++くらい違う。 LINQなんて追加するんならC##とでもしろと。
75 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 20:43:46 ] JavaユーザーとC#ユーザーって仲悪いの?
76 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 20:48:26 ] 半端なく
77 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 20:52:42 ] 俺は概ね認めているが、Nullableという不毛なクラスのせいでイマイチな評価になっている。 半端なところのパフォーマンスに拘った言語仕様だから、エスケープ解析みたいな試みにならない。
78 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 20:54:17 ] C#(win)とJava(win以外)を比べる時点で間違ってる。
79 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 21:01:39 ] C#のGUIが使いやすいのは、レイアウトマネージャを用意する必要がないからって部分が大きいしな。
80 名前:デフォルトの名無しさん [2009/11/24(火) 22:04:38 ] JAVAでテトリスを作りたいのですが、参考になりそうなHPを知ってたら教えて下さい
81 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 22:10:13 ] Javaでゲーム作りますが何か?
82 名前:デフォルトの名無しさん mailto:sage [2009/11/24(火) 22:11:42 ] ttp://www.nintendo.co.jp/ds/atrj/rule/index.html
83 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 05:11:20 ] >>79 かくいう.NETも、WPFでレイアウトマネージャ取り入れてるけどな。
84 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 15:26:04 ] コレクションのinstanceofについて質問です。 Map<String, String> map; Object obj = map; if (obj instanceof Map) ↑このifは通ると思いますが、mapの型(String,String)としてinstanceofするにはどうすればいいのでしょうか? instanceof通った後に型付きでキャストすれば動きそうですが、 型チェック不足でwarningが出てしまいます。
85 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 19:12:39 ] 実行時の段階では元の型パラメータを取り出すことはできません。 instanceofのような動的型チェックには、型パラメータを含めることはできません。
86 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 19:35:44 ] リフレクションで取ってifじゃだめ?
87 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 20:02:49 ] swing のボタンをグレイアウトし操作無効にするメソッドを教えてください
88 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 20:05:29 ] >>87 setEnabled
89 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 20:44:52 ] >>88 thx
90 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 22:16:24 ] JAVA、プログラミング初心者のものです 分け合ってclassファイルの逆コンパイルし中身を見たいのですが ぐぐっても解決策を見出すことができません そこで質問させてください ぐぐると 『 eclipseとjadclipseをインストールして、jadのパスをeclipseに通して、 File>OpenFileで、開こうとしたらエラーメッセージが出たので、 根本的に間違ってたのかなと。 jadの使いかた調べてみます。 Could not open the editor: The Class File Viewer cannot handle the given input ('org.eclipse.ui.ide.FileStoreEditorInput'). >jad -s xxxx.class output.jadで見ることができました。 』 上記のようなことが検索されました 私も 上記のように 『Could not open the editor: The Class File Viewer cannot handle the given input ('org.eclipse.ui.ide.FileStoreEditorInput'). 』 というエラーが出ます しかし 『>jad -s xxxx.class output.jadで見ることができました。』 上記の意味が理解できずに解決できないでいます なにとぞご指示・ご指導のほどよろしくお願いします 参考にしたサイト ttp://hpcgi2.nifty.com/a-yama/wiki.cgi?Eclipse%2FPlugin ttp://www.atmarkit.co.jp/fjava/javatips/073eclipse025.html
91 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 22:21:00 ] java.decompiler.free.fr/?q=jdgui このデコンパイラがおすすめ。 eclipseプラグインもあるよ。
92 名前:デフォルトの名無しさん mailto:sage [2009/11/25(水) 22:44:05 ] >>91 ありがとうごさいます あんなに苦労したことがこんな簡単にできるとは思いませんでした ほんとに助かりました。
93 名前:デフォルトの名無しさん [2009/11/26(木) 03:11:57 ] 与えられた文字列がディレクトリを指すかどうかをテストしようとして new File(s).isDirectory() を使ってたんですが、 Windows 上で s が \\server\share の形になっていると数秒の待ち時間が発生してしまうことがわかりました。 ネットワークにサーバー名とか(?)の問い合わせをしているようです。 また、一時的にサーバーが利用できないときに false になってしまうのも望ましく ありません。 これを回避するため、任意の文字列がファイルやディレクトリを指しうるものかどうか、 文字列の解析だけで(ファイルシステムやネットワークへのアクセス無しで)判別する 方法を探しているのですが、標準のクラス内に使えるものはないでしょうか? 例えば Windows ならパス文字列に含まれない文字がいくつかあるので、それが 含まれているかどうかだけをテストする、とかいうやつです。はじめは File のメソッドに isValid() とかあるだろうと思ったのですが、見当たりませんでした。
94 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 05:45:13 ] JavaってJITコンパイルという方式のようですが、逆に言うとソースコードを見られてしまうという事ですか?
95 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 06:17:09 ] yes >>91
96 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 07:03:41 ] なるほど、ありがとうございます
97 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 09:48:32 ] >>93 > 標準のクラス内に使えるものはないでしょうか? ない。
98 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 10:22:21 ] Jadはtry-catch-finallyがあって,なおかつ内部でモニタの開放とかしてると全く逆コンパイルに失敗して涙目
99 名前:デフォルトの名無しさん [2009/11/26(木) 19:46:41 ] J2SE 1.6で、java.lang.management.OperatingSystemMXBeanからいくつかのメソッドが削除されたのはどうしてでしょう? また、他のオブジェクトで代替/回避する方法はありますか? getTotalPhysicalMemorySizeやgetFreePhysicalMemorySizeが使えなくなっていたのは少々困りました。 現在、リフレクションを使って無理やり取得していますが、1.5で実装されたモノが1.6で削除(非推奨ではなく)されたのは、何か大きな不具合があった為でしょうか?
100 名前:デフォルトの名無しさん mailto:sage [2009/11/26(木) 20:31:44 ] >>99 java.lang.management.OperatingSystemMXBean にはそんなメソッドないぞ。 com.sun.management.OperatingSystemMXBean と混同しとるんじゃないか?
101 名前:99 mailto:sage [2009/11/26(木) 22:49:43 ] >>100 ・・・申し訳ありませんでした、大当たりです。 com.sun.management.OperatingSystemMXBeanは(Eclipseでは)ビルド・パスの設定で明示的に許可してやらないと見れないので、取り違えてしまったようです・・・。 バカな質問にすばやくお答えいただき、ありがとうございました。
102 名前:デフォルトの名無しさん [2009/11/27(金) 00:18:06 ] 今からjavaやろうと思ったら 普通に1.6でいいんですよね? これはいい。これはやめとけみたいなのありますか?
103 名前:デフォルトの名無しさん mailto:sage [2009/11/27(金) 00:35:04 ] GUIについて質問です マウスイベントを用いて何度か図形(drawLineやOval)を描画する プログラムを作ってるんですが、新たに図形を描画させると 以前描画した図形が消えてしまいます。 super.paint(g)をソースから消すと以前描画した図形も残るんですが 処理速度がものすごく遅くなります・・・ ちなみに引数(g)ってのは public void paint(Graphics g) のgです 処理速度が遅くならずに以前描画した図形を残せる方法はありませんか?
104 名前:デフォルトの名無しさん mailto:sage [2009/11/27(金) 13:05:38 ] >>103 再描画してんじゃないの? ソースがないからなんともいえんが
105 名前:デフォルトの名無しさん mailto:sage [2009/11/27(金) 13:31:18 ] >>102 6.0とも言う
106 名前:103 mailto:sage [2009/11/27(金) 13:32:09 ] すみません解決しました・・・ >>104 さんのおっしゃる通り再描画していました なのでpaintメソッドと別にupdateメソッドを作り public void update(Graphics g) { paint(g); } というふうに直接paintメソッドを呼び出したら上手くいきまいした
107 名前:デフォルトの名無しさん [2009/11/27(金) 20:30:30 ] 質問です。以下のホニャララの部分を、"点aは(x,y)"および"点bは(x,y)"と、 インスタンス名と同じ名前になるように表示させたいのです。 初心者の質問で申し訳ないのですが、何か良い案を教えてください。 class Point2D{ double x; double y; Point2D(double x,double y){ System.out.println("点ホニャララは(" + x + "," + y + ")" ); } } class Test{ public static void main(String[]args){ Point2D a = new Point2D(Double.parseDouble(args[0]),Double.parseDouble(args[1])); Point2D b = new Point2D(Double.parseDouble(args[2]),Double.parseDouble(args[3])); } }
108 名前:デフォルトの名無しさん mailto:sage [2009/11/27(金) 20:47:10 ] >>107 これは初心者ってか素人のレベルだな
109 名前:デフォルトの名無しさん mailto:sage [2009/11/27(金) 22:19:59 ] >>107 そもそもインスタンスに名前なんてないよ ソースコード上の「a」とか「b」ってのはインスタンスの名前じゃないよ 名前を教えなきゃいけない
110 名前:デフォルトの名無しさん mailto:sage [2009/11/27(金) 23:18:13 ] >>108 残念なコを見るような目で見ながら教えていただけると助かります。 >>109 書き方が悪かったようです。それは理解しています。 僕の頭では、("点" + k + "は(" + x + "," + y + ")" );/*kはString型*/ として、条件文を用いてaとbを区別するか、引数を用いるかしか考え付きませんでした。 書き忘れましたが、課題の一部(質問した部分が課題なわけではない)です。 メッソドの形が指定されているので、引数は利用できません。 となると、条件文にしようと考えたわけです。 例えばif(){k="a";}if(){k="b";}とするわけですが、()の中身が思いつきません。 int n=0;n++;としてn==1 or n==2で判別しようとしたり、条件にメソッドを使用しようとしたり、 色々考えましたが、できませんでした。 素人の為知識量が不足しています。 条件文を用いる他に、スマートな方法がありそうですし。 何か、ご助言くださればありがたいです。
111 名前:デフォルトの名無しさん [2009/11/27(金) 23:26:31 ] >>110 お前、態度でかいぞ トーシロの無能が何言ってんだ
112 名前:デフォルトの名無しさん mailto:sage [2009/11/27(金) 23:40:04 ] フィールド(メンバ変数)は名前を持つが、 パラメータ(引数)やローカル変数は名前を持たない。
113 名前:デフォルトの名無しさん mailto:sage [2009/11/27(金) 23:51:22 ] 「点ホニャララは」の部分はmain側で表示してから Point2Dのコンストラクタを呼び出す。
114 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 00:04:34 ] >>110 後出しこわい > メッソドの形が指定されているので、引数は利用できません。 なんで? どうしてもシグネチャを変更できないのなら,そもそもコンストラクタで名前を表示しようなんて考えてはいけない. ソースいじくれるようだし,コンストラクタ増やしたら?
115 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 00:06:20 ] >>111 丁寧に書こうとしたら、こんなんになってしまいました。 不快にさせてごめんなさい。 >>112 助言ありがとうございます。 >>113 !?。それだ・・・!!! 正直、目から鱗です。 素人な質問に答えていただきありがとうございました! 助かりました。
116 名前:107 mailto:sage [2009/11/28(土) 00:12:29 ] >>114 >どうしてもシグネチャを変更できないのなら,そもそもコンストラクタで名前を表示しようなんて考えてはいけない. なるほど。参考になります。 >>113 とともに、コンストラクタを増やすことでも解決できますね。 自分の馬鹿さ加減がイヤになります。 お答えいただきありがとうございました。
117 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 00:32:44 ] showInputDialog でパスワード入力時に、入力文字を*****となるテキストフィールドを使いたいのですが どのようにしたらできますか?
118 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 01:23:23 ] というか大抵のケースでコンストラクタにパラメータ付ける場合は パラメータなしでnewされたくない =パラメータは意味のあるものだから必須 =メンバ変数に格納 とかじゃねーの そうでないならコンストラクタなんてパラメータ付けずに setterで外からはめさせりゃいいじゃん
119 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 01:39:33 ] マスをクリックした時に一回、勝敗が決まった時に3回 対戦者のテーマ音を鳴らす三目並べゲームを作ってるんですが Xが勝った時にテーマ音が鳴りません 以下は自分で作ったプログラムです www.dotup.org/uploda/www.dotup.org401130.java.html どうしてXのときだけ鳴らないか気付いた方はご教授おねがいします
120 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 01:49:32 ] まずクラス化したらどうだい? Playerクラスに纏めてしまえば変なswitch文にまどわされる事はない。
121 名前:119 mailto:sage [2009/11/28(土) 03:25:54 ] すみません、再生する音楽ファイルを変更したら解決しました おそらく、再生時間が極端に短いとloop再生できないようです・・・
122 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 10:31:27 ] >>117 ですが お願いします。
123 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 11:46:51 ] >>117 このあたりが参考になるのでは ttp://java.sun.com/docs/books/tutorial/uiswing/components/passwordfield.html
124 名前:デフォルトの名無しさん [2009/11/28(土) 11:59:12 ] JAVAで関数ポピンタみたいなことをやるには どうすりゃいいの。
125 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 12:01:10 ] 関数ポピンタってなんですか?
126 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 12:12:33 ] アイアムザパニーズなんですけどもザバで風呂釜を綺麗にするには?
127 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 12:13:41 ] いわゆるショッピング症候群です
128 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 12:14:34 ] ヌルポピンタ
129 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 14:53:57 ] >>123 Thx
130 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 16:36:21 ] >>124 動的にいろいろな関数のボピンタを渡す代わりに、動的にいろいろなオブジェクトを渡して、 それらのオブジェクトが共通に実装しているメソッドを呼ばせる。
131 名前:デフォルトの名無しさん mailto:sage [2009/11/28(土) 18:47:21 ] ポピンタが使えるようになったら初心者卒業だね!
132 名前:デフォルトの名無しさん [2009/11/29(日) 05:59:57 ] java seが普通のjavaで java eeがjspやサーブレットまで含めたjavaということでしょうか?
133 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 12:18:39 ] そんなところ
134 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 14:06:18 ] ポピンタがなんだかわからなかったから、ググってみたらgoogle先生が教えてくれたww
135 名前:デフォルトの名無しさん [2009/11/29(日) 14:47:45 ] クラス、継承、オーバーライドまでは使えそうですが、 ポリモーフィズム、抽象クラス、インタフェースとかになってくると もう使いこなせる気がしません。 どういうものか理解はできていますが、自分でいつ使えばいいのか 判断が難しそうです。 皆さんはどうやって使えるようになりましたか? 使わなくても問題ないでしょうか?
136 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 14:52:58 ] 俺は最近 インターフェイス=コールバック用 抽象クラス=計算戦略の概略の形を作る用 になってきた
137 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 15:20:15 ] 使っているうちにわかってくると思えばいいんでしょうかね。 前にC++をしばらくいじってみたとき、結局最初から最後までOOPらしいものはできませんでした。。
138 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 16:00:36 ] >>135 インターフェース⇒使う側は「×××という機能(メソッド)が使える」ということだけわかっていればいい。中身は気にしない。 継承関係からは独立しているので、インターフェースを実装したクラスは中で何をやっていてもいい。 ファイルに書き込む代わりにネットワーク越しでサーバにアップロードするとか。 抽象クラス⇒処理の流れの大枠は決まっているが、一部の処理だけ使う側にまかせたい。その部分は使う側が決めなければならないので、抽象クラス自身は単独では完結していない。 ポリモフィズム⇒使う側は一律、writer.write(data)みたいに書くが、このとき実際に書き込む先はファイルだったりメモリだったりDBだったりどっかのサーバだったり。 要は、呼び出し側がif〜else if〜elseやswitch〜caseで切り替えるんじゃなくて、呼び出される側が同じシグネチャのメソッドを実装した中身の違うクラスを用意する。 なるべくをif文やswitch文を書きたくないので、無いと生きて行けない。
139 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 16:05:14 ] >>135 インタフェース=ポリモルフィズムのための規格 抽象クラス=雛形
140 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 16:10:15 ] >>138-139 うーん、難しいですね…。 違う本も読んでもっと勉強してみます。 抽象クラス、インタフェースの意味・目的はさておき、どのように身に付けましたか?
141 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 17:05:12 ] 標準のコレクションクラスをひととおり眺める それらを具象クラス (ArrayList, LinkedList) ではなくインタフェース (List) で使ってみる
142 名前:デフォルトの名無しさん [2009/11/29(日) 18:17:37 ] 同じ内容のオブジェクトのハッシュコードは等しいが 異なる内容のオブジェクトのハッシュコードは必ずしも違う値になるわけでは ないと聞いたのですが、ハッシュコードってどのような場面で使用されるのですか?
143 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 18:21:19 ] >>142 例えばjava.util.HashMapの内部で使用されてる
144 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 18:22:58 ] Hashtableとか ハッシュ値はクラスの設計者がどんな値使うか決めていい 必要であれば全部同じ値を返してもいい
145 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 19:10:26 ] よく指摘される事項ではあるけど、 equalsをオーバーライドしたクラスは必ずhashcodeもオーバーライド必須ね。 これ忘れて潜在的なバグが放置されてる業務プロジェクトは星の数ほど存在する。
146 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 19:14:27 ] 仕様です。
147 名前:デフォルトの名無しさん [2009/11/29(日) 19:22:07 ] >>143-145 ありがとうございます。 HashMapの実装の仕方を見たことは無いのですが getしたとき内部では高速化のためhashcode毎に分けられており 最終的にkey紐づくものを返すというイメージなのですか?
148 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 19:42:49 ] そうだね。 ハッシュマップは↓のようなデータ構造のイメージ hash1 : {key1:val1, key4:val4, key6:val6} hash2 : {key2:val2, key3:val3, key5:val5} hash3 : {key7:val7} key3でgetした場合、まずkey3のhashcodeであるhash2でgetして、 取得されたサイズ3のコレクションに対して、key3とのequalsが実行される。 最悪7回equalsが必要(size7のMapだから)なところ、 HashMapの実装であれば3回のequalsですんでいる。 実際には値がより均等に分散するアルゴリズムでhashcodeが計算されるため、 よほどHashMapのサイズが大きくならない限り 同じhashcodeにぶら下がるオブジェクトは多くて1個で収まる。→ 超速い
149 名前:デフォルトの名無しさん [2009/11/29(日) 20:25:55 ] >>148 解説ありがとうございます。 理解できました。
150 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 21:50:57 ] javaでファイル出力処理時に、ファイル名「現在の日付+.txt」としたいのですが、 その設定をjavaのpropertiesファイルに書いておいてそこから呼び出すためには propertiesファイルに記載したら良いのでしょうか? たまに固定文字列でファイル出力を行いたいため、 プロパティファイルを編集するだけで、日付つきファイルか固定かを変えられるようにしたいのです。
151 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 22:15:23 ] 予め決めておいたパターンが(プロパティファイルの値のなかに)出現したら 現在時刻に置き換えるようにしておけば?
152 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 22:17:56 ] レスありがとうございます その方法もいいかもしれませんが、プロパティファイル内の設定だけで対応したいです
153 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 22:20:21 ] プロパティファイル読み込む処理は自分で書いたんでしょ? そこで置き換えればいいんじゃないの?
154 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 23:44:19 ] 実行可能なjarファイルを作成したのですが、 これを別のディレクトリに移動してから実行すると動きません。 jarファイル内部のpropertiesファイルが読み込めない(見つからない?)ようなのですが、 プログラム中にpropertiesファイルの相対パスを指定しただけではダメなのでしょうか?
155 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 23:52:13 ] 一体どんな指定をしてるんだ?
156 名前:デフォルトの名無しさん mailto:sage [2009/11/29(日) 23:57:01 ] >>154 jarファイル内部のはClassLoader使ってURL取得するといいよ。 hoge/ Hoge.class hoge.properties となってたら url = Hoge.class.getResource("hoge.properties"); もしくは絶対パス url = Hoge.class.getResource("/hoge/hoge.propertis");
157 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 01:55:11 ] でも、それじゃクラス全体がメモリにロードされちゃいませんか? 確かクラスは自動でアンロードされなかったし問題ですよ。
158 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 02:08:31 ] でっかい釣り針が...
159 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 06:44:15 ] java -cp abcde.jar:lib/opencsv-2.1.jar jp.aaaaa.Guiframe と実行を試みると、 NoClassDefFoundErrorがjp/aaaaa/Guiframeで出ます。 java -cp abcde.jar jp.aaaaa.Guiframe と入力すると正常に動作しますが、この場合はlibにPathが通ってないため 不十分な動作になります。 自分では原因が検討もつかず、悩んでいます。 よろしくお願いします。
160 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 06:56:58 ] >>159 パス区切り記号は :(コロン)ではなく、;(セミコロン)です。
161 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 10:40:32 ] Winではね
162 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 10:44:07 ] カラムヘッダに、日付と曜日を順々に2週間分入れてテーブルを作成したいのですがうまくいきません どこがいけないのでしょうか? public class CalendarModel extends AbstractTableModel { ......... public String getColumnName(int columnIndex) { calendar = Calendar.getInstance(); String[] columns = new String[14]; String dow = null; calendar.add(calendar.get(Calendar.DAY_OF_WEEK), columnIndex); dow = getDOW(calendar.get(Calendar.DAY_OF_WEEK)); columns[columnIndex] = dow + " " + calendar.get(Calendar.DATE); return columns[columnIndex]; }}
163 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 11:24:00 ] すみません、激しく自己解決しました calendar.add(Calendar.DAY_OF_WEEK, columnIndex); ですね
164 名前:159 mailto:sage [2009/11/30(月) 12:03:26 ] >>160 ありがとうございました。 助かりました。
165 名前:デフォルトの名無しさん [2009/11/30(月) 12:15:26 ] HashMapで現在 キー 値 あいうえお →1 かきくけこ →2,3 さしすせそ →4 とセットされているとして値の個数を返すメソッドってありますか? たとえば「かきくけこ」を引数とした場合に2が返ってきてほしいのですが。
166 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 12:25:43 ] 値の型って何さ
167 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 12:30:17 ] >>165 HashMapに同じキーの新しい値を入れると古い値は消えるので、値が2個以上になることはありません
168 名前:166 mailto:sage [2009/11/30(月) 12:38:38 ] ArrayListでも突っ込んでるのかと思った
169 名前:デフォルトの名無しさん [2009/11/30(月) 19:27:58 ] HashMapのかわりに何を使えばいいのですか? >>166 以外の人に答えてほしいです。
170 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 19:56:49 ] HashMapには値としてArrayListを入れて、そのArrayListの中に本当の値を入れるのが定番
171 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 22:06:45 ] >>166 も間違ったことは言ってないのに…
172 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 23:28:00 ] @see、@param、@override、@throwsみたいなアノーテーションをよく使うけど、 結局アノーテーションって何に使うの?
173 名前:デフォルトの名無しさん mailto:sage [2009/11/30(月) 23:32:34 ] その @see、@param、@override、@throws を、何のために入れているのか、 分からないで使ってるのかw
174 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 00:11:19 ] >>172 JavadocのタグとJava5のアノテーションを混同してないかい? そこに挙げているのはぜんぶJavadocのタグ。
175 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 00:59:17 ] アノテーションの言葉どおりに、注釈つけたい場合に利用されてる。 DIコンテナとかEJB界隈を扱うと嫌でも利用例に触れることになる。 このメソッドの前後で新規トランザクション作れよ、とか このフィールドはDI対象なんだぜ。とかね。 フレームワーク側がそういった注釈を処理してなんらかの処理を追加してくれたりする。 逆に小さなツールとかゲーム作ってるだけならあんまり出てこないと思う。
176 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 02:53:22 ] しかし全部javadoc
177 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 03:47:15 ] 最近まったくjavadoc見てないな。 自動で更新されてるけどまったく見ない。 どうせコード確認しないとあかんし。
178 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 12:29:27 ] >>171 勘違いが明らかなときは、それを一言で表現できないなら、レスしない方がいいね。 新人教育のときのような応答をするとバカを見ることになりそうだ。
179 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 12:33:18 ] でもふつう>>168 のように考えると思うんだが
180 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 12:44:45 ] いやバカは無知をさらけ出さない質問者 小出しするやつはしぬ
181 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 12:54:56 ] ええよええよ 目下に馬鹿にされるのは慣れてるから
182 名前:デフォルトの名無しさん [2009/12/01(火) 15:04:11 ] BufferedReaderで開いたファイル(bin)に akljflkgjadb jdnfkgjnd;fkj fjng;alkjndf;gk と書かれている場合に、bin.read()で一文字ずつ配列にいれていきたいのですが、改行がきたらループを抜けたい場合 while(□ !=bin.read()) の□には何を書けばいいですか?\nでいいんですかね?
183 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 16:36:34 ] EOFて定数なかったっけ?
184 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 16:51:48 ] 1 3 8 9 5 2 4 1 4 8 12 3 10 7 9 8 5 3 11 3 9 4 2 4 5 2 ↑のような内容のテキストファイルがあります。 各行にはいくつかの数字が羅列されてるんですが その個数は各行ごとに完全にランダムで かつ最大何個とかも決まっていません。 このようなファイルを読み込んで int[][]、もしくはint[][]でできないとしたら別の何らかの形で持ちたいのですが どうするのがよいでしょうか?
185 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 18:19:51 ] >>182 ためしてないけど、たぶんファイルに記録されている改行コードがその まま返るんじゃないかなあ。Windows で作ったテキストファイルだと \r と \n の2文字。 せっかくBufferedReaderなんだから、readLine() で一気に1行読んでか ら処理するのがお勧め。こっちなら改行コードが何か考える必要がない。
186 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 20:10:07 ] >>184 別にint[][]でいいんじゃねーの。 そのデータをどう使いたいのかわからんから何とも言えないが。
187 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 20:24:53 ] ファイルの内容をint[][]型の変数にどうやって格納するか ってのを聞きたいんじゃないの?
188 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 20:26:11 ] >>187 そうです、まさにそれが知りたいです えすぱー!
189 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 20:32:54 ] >>185 にほとんど答えが書いてあるけど… ストリームオブジェクトを作ってreadLineで読み出すしかない。 readLineで読み込んだ1行はさらに区切り(ここでは空白?)を元に文字列を分解して数字を取り出す。 汚いコードになるだろうけど、ベタにテキストファイルに数字が羅列されてるなら仕方ない。
190 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 21:15:34 ] スレッドを利用してバイトデータを送受信(例:mainで送信、スレッドを拡張したクラスで受信)したいのですが、それぞれ別にSocketオブジェクトを作成する必要ありますか? ググってみて必要ないと判断して打ったのですが、どうやってスレッドを拡張したクラスでSocketオブジェクトを利用するのか分かりません。 ちなみにmainでポートと接続先を指定してSocketオブジェクトを作っています。 ご教示お願いします。
191 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 21:43:37 ] >>190 こんな感じか? import java.io.InputStream; import java.io.OutputStream; import java.net.ServerSocket; import java.net.Socket; public class a190 { public static void main(String[] args) throws Exception { new a190Receive().start(); Socket socket = new Socket("localhost", 6666); OutputStream os = socket.getOutputStream(); os.write(111); os.write(222); os.close(); socket.close(); } public static class a190Receive extends Thread { @Override public void run() { try { ServerSocket receive = new ServerSocket(6666); Socket socket = receive.accept(); InputStream is = socket.getInputStream(); System.out.println("receive : " + is.read()); System.out.println("receive : " + is.read()); is.close(); socket.close(); } catch(Exception e) {throw new RuntimeException(e);} } } }
192 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 21:59:25 ] >>184 行数も特に固定じゃないんだとしたら、ArrayList<int[]>とか使った方が楽な気もするけどなぁ 読み込みはまぁ、>>189 で
193 名前:184 mailto:sage [2009/12/01(火) 22:07:25 ] 先に int[][] data = new int[N][]; としておいて FileReader fr = new FileReader(output); BufferedReader br = new BufferedReader(fr); String s=null; String[] ss = new String[99]; for (i = 0; i < N; i++) { s=br.readLine(); ss = s.split(" "); int j = 0; while (ss[j]!=null) { data[i][j] = Integer.parseInt(ss[j]); j++; } } こんな感じでやろうとおもったらdata[0][0] = の時点でぬるぽ 横のサイズも指定しておかないとだめなんですかね?
194 名前:184 mailto:sage [2009/12/01(火) 22:09:11 ] >>192 行数はNで決まってます なにかやり方あったら教えてくれませんか? ArrayList<int[]>使う方法でもいいので
195 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 22:15:54 ] BufferedReaderの行の下から↓に変えてみ for (int i = 0; i < N; i++) { String ss[] = br.readLine().split(" "); data[i] = new int[ss.length]; for (int j = 0, n = ss.length; j < n; j++) { data[i][j] = Integer.parseInt(ss[j]); } }
196 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 22:42:33 ] >>194 あぁ行数は固定だったんだ。勝手に行数も可変なんだと思ってた。 ならint[][]でもArrayList<int[]>どっちでもいいや。というか、int[][]の方がわかりやすいかも 横の配列分もnewしておかないとぬるぽになるよ。 一応ArrayList使うとしたら ArrayList<int[]> al = new ArrayList<int[]>(); String[] ss; int[] data; for(int i = 0 ; i < N ; i++){ ss = br.readLine().split(" "); data = new int[ss.length]; for(int j = 0 ; j < ss.length ; j++){ data[j] = Integer.parseInt(ss[j]); } al.add(data); } こんな感じかな
197 名前:184 mailto:sage [2009/12/01(火) 22:45:27 ] >>195 すごい!できました! こういうふうにnewすればよかったんですね ありがとうございまうす
198 名前:184 mailto:sage [2009/12/01(火) 22:47:26 ] >>196 なるほど、ありがとうございます! 大変勉強になりました
199 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 22:54:40 ] >>191 ご回答ありがとうございます。 このような主旨のプログラムを異なるホスト同士で送受信できるようにするにはどうすればよいでしょうか?
200 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 22:59:46 ] 普通に送信受信それぞれのクラスを異なるホスト上で実行して、 送信側Socketのコンストラクタでlocalhostとしているのを、相手ホスト名に変えるだけ。 ちなみにサーバソケットは、accpetしたソケットを受け取って 受信処理を専用で行う別スレッドをあげるのが一般的なやり方。
201 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 23:16:37 ] Socket socket; .... // Thread A while(true){ socket.getOutputStream().write(...); } ... // Thread B while(true){ ... socket.getInputStream().read(); } ってOKだっけ? 未だに慣れない
202 名前:デフォルトの名無しさん mailto:sage [2009/12/01(火) 23:24:11 ] むしろ1.3時代では普通なんじゃないの。 今はノンブロッキングIOだろうね。
203 名前:190 mailto:sage [2009/12/01(火) 23:24:28 ] >>200 言葉足らずでした。 申し訳ありません。 >>191 のようなプログラムを雛形として両ホスト共送信も受信も行いたいのですが、接続の際の処理をどのように記述するか思い浮かばないのです。 レスありがとうございました。
204 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 00:14:59 ] >>203 超適当に書いた。例外処理と終了処理してないんでよろしく。 rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/852.java サーバを >java a203 -s 5555 で実行してから クライアントを >java a203 -c localhost 5555 で実行してくれ。 あとはByte(-127から127)をサーバかクライアントのコンソールに入力してエンター押せば 相手のコンソール画面に入力値が表示されるはず。 終了はCtrl+C押して抜けてくれ。
205 名前:190 mailto:sage [2009/12/02(水) 01:47:56 ] >>204 ありがとうございました。 参考にさせていただきます。
206 名前:デフォルトの名無しさん [2009/12/02(水) 11:21:02 ] >>185 >>189 レスありがとうございます。 最初はreadlineでやってたんですが、類似文字列マッチングするのに一文字ずつ配列にいれたいんですが、 readlineしたあとに文字列を配列にいれることは可能ですかね?
207 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 12:16:02 ] メインメソッドのmain(String[] args)ってのはどこからString形式を引数として持ってくるのでしょうか 又、Stringクラスのargsに代入された引数を利用することはよくあるのでしょうか?
208 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 12:46:21 ] プログラムの起動元(親プロセス)から渡される よくある
209 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 14:54:06 ] >>206 そりゃ可能さー。 String line = reader.readLine(); char[] chars = line.toCharArray();
210 名前:デフォルトの名無しさん [2009/12/02(水) 16:34:21 ] C[i][j]にC[i-1][j],C[i][j-1],C[i-1][j-1]の最小値を代入したい場合って C[i][j]=C[i-1][j]; if(C[i-1][j]>C[i][j-1]) C[i][j]=C[i][j-1]; if(C[i][j-1]>C[i-1][j-1]) C[i][j]=C[i-1][j-1]; であってますよね?なんか結果が変なんですが。。。
211 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 16:42:06 ] 合ってない 2つめのifは if(C[i][j]>C[i-1][j-1]) としなければいけない
212 名前:デフォルトの名無しさん [2009/12/02(水) 17:04:58 ] >>211 即レスサンクスです。 その通りですね。助かりました
213 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 17:45:07 ] 1*2*3*4*5*・・・・*21をfor文を使って書きたいのですが、よくわかりません。教えてください。 自分で書いたコード class A { public static void main (String args[]) { int sum = 1; for(int num = 1; 21>=num; num++) { sum *= num; } System.out.println(sum); } }
214 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 17:53:15 ] >>213 intはそんなに大きい数を表現できない。 longでもダメかも。
215 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 17:59:07 ] >>214 longに変えると1307674368000で正解でした。 ありがとうございます。
216 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 18:35:21 ] sinの値を-180度から180度までの間で30度毎に求めるプログラムを作っていますが、出来ません。 間違いを教えてください。 class A { public static void main (String args[]) { double x,y; double i = 3.1415; for(x = -180; x<=180; x += 30) { y=Math.sin(x/i); System.out.println(x+"\t"+y); } } }
217 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 18:36:32 ] 上の結果 -180.0 -0.6807614127357615 -150.0 0.584287097545724 -120.0 -0.4787242540439776 -90.0 0.3657149018743784 -60.0 -0.24701689039044697 -30.0 0.12447655548158028 0.0 0.0 30.0 -0.12447655548158028 60.0 0.24701689039044697 90.0 -0.3657149018743784 120.0 0.4787242540439776 150.0 -0.584287097545724 180.0 0.6807614127357615
218 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 18:57:27 ] × y=Math.sin(x/i); ○ y=Math.sin(x*i/180); ◎ y=Math.sin(Math.toRadians(x));
219 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 18:58:22 ] y=Math.sin(i/180*x);
220 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 19:00:36 ] www.procreo.jp/tutorial03.html
221 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 19:01:40 ] >>218 >>219 あーなんで気づかんかったんやろ ありがとうございます。
222 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 19:02:21 ] >>220 参考になります。
223 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 19:41:34 ] Cっぽいところが泣ける
224 名前:デフォルトの名無しさん [2009/12/02(水) 20:46:05 ] 2ちゃんねるを荒らすプログラムを作りました!! 皆よろしくね! yutori7.2ch.net/test/read.cgi/news4vip/1259519941/537+539
225 名前:デフォルトの名無しさん mailto:sage [2009/12/02(水) 22:10:18 ] StrutsでBeanの中に、Beanを格納したArrayListを入れたいのですが、 JSP側のタグライブラリでの取得の方法が分かりません。 色々サイトでも調べてみましたが、どうしてもJSP側でエラーが発生します。 「 Bean Action のプロパティ bbsNaiyouValueList に対するゲッターメソッドがありません」というエラーです 大まかな内容です 「java beans」 private List bbsNaiyouValueList; public void setBBSNaiyouList(List bbsNaiyouValueList) {this.bbsNaiyouValueList = bbsNaiyouValueList;} public List getBBSNaiyouList() {return bbsNaiyouValueList;} 「Actionクラス」 List labelNaiyouValueList = new ArrayList(); labelNaiyouValueList.add("リストにどんどん内容を入れる"); setBBSNaiyouList(labelNaiyouValueList); 「struts-config」 <form-beans> <form-bean name="Action" type="struts.TestActionForm" /> </form-beans> 「JSP」 <logic:iterate id="Action" property="bbsNaiyouValueList"> <bean:write name="Action" property="bbsNaiyouValueList" /> </logic:iterate> おそらくJSPの記述方法に問題があると思います。大変お手数ですが どなたか分かる方がいらっしゃればご教授願います。
226 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 00:22:27 ] 普通はTestActionForm(ここではActionという名前のFormBean)に getBbsNaiyouValueListを作って(getBBSNaiyouListではない!)、以下のようなJSPを作成する。 <logic:iterate id="bbsNaiyouValue" name="Action" property="bbsNaiyouValueList"> <html:text name="bbsNaiyouValue" property="foo"/> <html:write name="bbsNaiyouValue" property="bar"/> </logic:iterate> んでめんどくさいからnestedタグを使うと <nested:iterate property="bbsNaiyouValueList"> <nested:text property="foo"/> <nested:write property="bar" /> </nested:iterate> *とうぜんstruts-config.xmlのaction-mappingで、 "Action"フォームを使っているという前提で。 *foo/barはbbsNaiyouValueListの要素Beanに プロパティ(getFoo()/getBar())が存在すると仮定した場合 *大文字小文字のルールはJavaBeans仕様に準拠しなければならない。 属性が"bbs"NaiyouValueListなのに、ゲッターセッターで勝手にBBSとかBBsとかつけてはいけない。
227 名前:デフォルトの名無しさん [2009/12/03(木) 01:02:54 ] 現在seasar2(SAStruts)にて作成されたWEBシステムを 改修しているのですが、どうしても解決しないことがあるので ご存知の方がいればご教授お願いできないでしょうか。 ファイルアップロード部分を改修しているのですが チュートリアル(sa-struts-tutorial)に従って 作成されているようなのですが、該当のjspの <input type="file" name="formFile" /> 部分を開くと テキスト部分が灰色でテキストをクリックすると ファイル参照ダイアログがでてきてしまいます。 (参照ボタン押下時のポップアップダイアログ) 試しに、チュートリアルのプロジェクトも セッティングし、同様環境でうごかしましたが テキスト部分は白色でクリックしても反応がなく 参照ボタンによるダイアログ内指定のファイルが 書き込まれました。 チュートリアルと同様の動作をさせたいのですが 何か影響を与えている設定ファイルなりに心当たりの ある方はいらっしゃらないでしょうか。 足りない情報等あれば追記いたします。宜しくお願いします。
228 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 01:13:04 ] Javascriptが何かしら動いているんではないの?
229 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 01:20:10 ] msdn.microsoft.com/ja-jp/ie/dd218483.aspx ファイルのアップロード制御 こんなのあった。IE8つかってるんでないの?
230 名前:デフォルトの名無しさん [2009/12/03(木) 01:21:28 ] レスありがとうございます。 問題切り分けとして、一度Action,Form,jspファイルそれぞれを 改修システム側のプロジェクトにベタ張りして呼び出したところ 同様の現象(テキスト灰色にて、クリックイベントでダイアログ表示) が起きたので、ソース内でscriptを呼び出しているのが原因で 起こってはない感じです。
231 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 01:25:25 ] 最終的にブラウザで表示されるソースはどうなってんの?(ブラウザのソース表示) むしろそれ見るほうが早いような。 SAStrutsが(設定によって)特別なスクリプトコードを吐くってのは考えにくいけど。
232 名前:デフォルトの名無しさん [2009/12/03(木) 01:26:43 ] >>229 さん 情報が小出しになり、申し訳ないです。 顧客要件としてはFirefox3.5なのですが 現象として確認したのは チュートリアル:IE6.0○/FireFox3.5○ 改修システム:IE6.0○/FireFox3.5× (×が灰色ダイアログポップアップ) 現状改修システムをFireFoxで動かしたときのみ 現象が発生します。
233 名前:デフォルトの名無しさん [2009/12/03(木) 01:30:42 ] >>231 さん レスありがとうございます。 チュートリアルのソースでも同様現象がでているため そちらのソースを張らしていただきます。 <html> <head> <title>Tutorial: Upload</title> <link rel="stylesheet" type="text/css" href="/patent/css/sa.css" /> </head> <body> <h1>Tutorial: Upload</h1> <form name="getCsvActionForm" method="post" action="/patent/getCsv/" enctype="multipart/form-data"> <input type="file" name="formFile" /><br /> <input type="file" name="formFiles[0]" /><br /> <input type="file" name="formFiles[1]" /><br /> <input type="submit" name="upload" value="アップロード"/> </form> </body> </html> ただ、同様ソースで改修システム側のプロジェクトでのみ 起こっているためjspからの解析は厳しいのではないかと 思っています。
234 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 01:33:46 ] 最近のブラウザはそうゆう動作をするように変更されてるとどこかで聞いた
235 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 01:41:02 ] そもそもFireFox3.5で灰色なのはデフォルトじゃね? ↓みたいなピュアなhtmlべた書きで表示させても、 同じように灰色でテキストフィールド(っぽいとこ)クリックするとダイアログでちゃうよ。 <html> <head> <title>test</title> </head> <body> <form method="post" action="/dummy" > <input type="file" name="formFile" /><br /> </form> </body> </html> むしろチュートリアルが普通(?)に表示できてるってほうを 調べたほうがよさげ。
236 名前:デフォルトの名無しさん [2009/12/03(木) 01:51:00 ] >>234 ,>>235 さん レスありがとうございます。 デフォルトなのですね・・・普段IEでしか開発していなかったので その切りわけの発想がありませんでした。指摘ありがとうございます。 xmlやプロパティファイルの差分はすでに見ていっているのですが 該当する設定を見つけきれないのが現状です。
237 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 02:08:46 ] 気になったのでSAStrutsのチュートリアルをローカルで実行してみた。 Eclipse3.5のWTPでTomcat5.5使用。 FireFox3.5でuploadアクション表示すると やはりテキストフィールド灰色でクリックするとダイアログ表示になる。
238 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 02:10:05 ] そもそも >チュートリアル:IE6.0○/FireFox3.5○ このFireFox3.5が○っていうのが何かの勘違いでは?
239 名前:デフォルトの名無しさん [2009/12/03(木) 02:16:01 ] >>237 ,>>238 さん レスありがとうございます。 指摘どおりでした・・・どこで勘違いしたのか。 納期直前でテンパっていたのか・・・本当申し訳ないです。 勘違いしている部分が分かったので、一先ず進展しました。 お手数とって頂きありがとうございました。 (となると、顧客要件実装が厳しい感じがしてきました・・・)
240 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 02:18:47 ] う、うん。大変そうだががんばってくれ。
241 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 04:07:06 ] >>226 さん どうもありがとうございます。 <logic:iterate id="bbsNaiyouValue" name="Action" property="bbsNaiyouValueList"> <html:text name="bbsNaiyouValue" property="foo"/> <html:write name="bbsNaiyouValue" property="bar"/> </logic:iterate> をJSPで作成した所 「プレフィックス htmlでインポートされたタグライブラリには、タグ write は存在しません」 というエラーが発生しました。 nestedタグだとエラーは発生しません(何も表示されませんでした) >foo/barはbbsNaiyouValueListの要素Beanに >プロパティ(getFoo()/getBar())が存在すると仮定した場合 1つ質問なのですが、bbsNaiyouValueListの要素Beanに プロパティ(getFoo()/getBar()) を存在させるにはどうすれば良いのでしょうか? TestActionForm内に public List getBbsNaiyouValueList() { return bbsNaiyouValueList; } public List getFoo() { return foo; } public List getBar() { return bar; } と作成すれば良いのでしょうか?
242 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 07:19:41 ] シングルトンってインスタンスがひとつしかつくれませんが 三つしかつくれないクラスってどうやって作ればいいでしょうか?
243 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 07:36:15 ] すまん。html:writeはbean:writeだわね。 foobarはbbsNaiyouValueListにaddされたオブジェクトが持っているプロパティ。 なにも表示されないのは、そもそもbbsNaiyouValueListが空なんだと思う。
244 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 09:07:05 ] >>242 シングルトンのインスタンスいれる変数を配列にして getInstanceメソッドで頭から埋めていくとか
245 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 09:53:37 ] >>244 サンプルでくれ
246 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 10:23:03 ] getInstance1、getInstance2、getInstance3 でおk
247 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 11:52:49 ] >>246 かっけー
248 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 13:31:58 ] Javaの台形則をもちいた数値積分の質問です。 三次関数f(x)=x^3-7x^2+14x-8と直線f(x)=0とy軸で囲まれた部分の面積を求めたいのですができません。 積分区間は1〜4です。 グラフを書くと負の値がでてしまうので三次関数の値の絶対値を定積分するようですが、どういうif文を書けばいいんですか?
249 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 14:19:15 ] 自分で分かるところまでのソースを示すぐらいの努力はしたら?
250 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 15:11:08 ] >>249 chie.mobile.yahoo.co.jp/p/chie/qa/view?qid=1433673199 すみません。
251 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 16:58:37 ] >>248 自己解決しました。
252 名前:デフォルトの名無しさん [2009/12/03(木) 22:17:12 ] Windows+Java1.3.1の環境でswingを使ったGUIのプログラムを修正しているのですが、 どうにも妙な動きをしていて困っています。 画面上にJLabelとJButtonがいくつか並んでいて、 JLabelをクリックするとアクションリスナ内でモーダルのJDialogを二つ続けて表示し、 そのダイアログ上での入力に応じて画面上のJButtonを setEnabled(false)とする、という処理があるのですが、 画面上のボタンにフォーカスが当たっている(ボタンの縁に点線がある)状態でラベルをクリックすると 一回目のJDialogが開いている時はそのフォーカスは消えているのですが、 それを閉じて二回目のJDialogを開いた時に、フォーカス線が表示されてしまいます。 そのままフォーカス線が表示されたボタンがsetEnabled(false)となってしまうと、 ボタンはグレイアウトされていながらフォーカス線がある、という変な状態になってしまいます。 さらにその後他の操作でそのボタンがEnabledとなっても、ずっとフォーカス線が表示されっぱなしです。 ボタンとしてはクリックすると普通に動作するのですが、Tabでのフォーカス移動をすると その変になったボタンの前のボタンで詰まってしまいます。 上記のような現象について、何か情報をお持ちの方がおりましたら ちょっとした事でも構いませんので教えて下さい。 walk-aroundでもバッドノウハウでも構いません。 よろしくお願いします。
253 名前:デフォルトの名無しさん mailto:sage [2009/12/03(木) 22:34:59 ] ダイアログを表示する前に、 強制的にボタンのフォーカスを取り上げてみては? ボタンの transferFocus() を呼ぶとか、 他のコンポーネントの requestFocus() を呼ぶとか (requestFocusInWindow() は 1.4 以降なので)。
254 名前:デフォルトの名無しさん mailto:sage [2009/12/04(金) 00:52:15 ] Eclipceを使い五目並べのプログラムを作成してたのですが、 マウスをクリックした時碁石を置くのがうまく動きません。 とりあえず黒石を置きたいのですが、何か間違い、おかしな所等あればご指摘お願いします。 ttp://www.rupan.net/uploader/download/1259855059.zip
255 名前:252 mailto:sage [2009/12/04(金) 08:05:29 ] >>253 ありがとうございます。 そうですね、手動でフォーカスを外す方向で考えてみます。 ダイアログでキャンセルの操作をした時にもフォーカスが無くなる方が 変なフォーカス線が残るよりはましだと思いますので。
256 名前:デフォルトの名無しさん mailto:sage [2009/12/04(金) 09:51:19 ] >>254 おかしな所として とりあえずクリックを監視してないと思う こんな感じの↓ panel1.addMouseListener(new SquareMouseAdapter()); 黒塗りに関するソースは色々と試そうとしてるのか どういう方向で解決したいのか分からなかったから触らないでおく
257 名前:デフォルトの名無しさん mailto:sage [2009/12/04(金) 11:09:14 ] Windows 7 x64でjvmが調子悪い。32bit版jvm使ってるんだが、 EclipseやAptana Studioが起動後しばらくすると JVMが EXCEPTION_ACCESS_VIOLATION (0xc0000005) を吐いて落ちる。 同じファイルをWindows XP x86で実行してもエラーは起こらない。 jvmはEclipse All in oneパッケージについてたやつ使ってるし。 何か解決策思いつくやつおらん? メモリ8GB詰んでたら動かないとか?
258 名前:デフォルトの名無しさん mailto:sage [2009/12/04(金) 11:32:40 ] >>257 おまえじゃ無理 もう諦めろ
259 名前:デフォルトの名無しさん mailto:sage [2009/12/04(金) 11:49:52 ] はいはい、XPモードで使えばいいんだろ
260 名前:デフォルトの名無しさん mailto:sage [2009/12/04(金) 16:26:52 ] 頭悪いのは仕方ないとして 質問する時の態度ぐらいは考えた方がいいかも
261 名前:デフォルトの名無しさん mailto:sage [2009/12/04(金) 17:02:13 ] 答える気がないなら黙ってればいいのに
262 名前:デフォルトの名無しさん mailto:sage [2009/12/04(金) 17:34:17 ] 次の方どうぞ〜
263 名前:デフォルトの名無しさん mailto:sage [2009/12/04(金) 19:19:24 ] >>257 Subversionインストールしてね?
264 名前:デフォルトの名無しさん mailto:sage [2009/12/04(金) 21:25:25 ] >>257 相当頭の痛い子のようですね。
265 名前:デフォルトの名無しさん mailto:sage [2009/12/04(金) 21:27:18 ] >>257 ni-to otu
266 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 03:37:14 ] 実行可能なjarファイルを作成して、 コマンドプロントからjava -jar JarFile.jarとすると起動できるのですが、 jarファイルを直接ダブルクリックしても実行できません。 どうすればダブルクリックで実行できるようになりますか?
267 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 03:46:01 ] >>266 ファイルタイプ関連付け でぐぐれ
268 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 04:06:26 ] >>267 javax.exeに関連付けてダブルクリックしたら could not find the main class と表示されて実行できません。 ちなみにXPだとダブルクリックで問題なく実行できるのですが、 現在使用しているWindows7では上記のような表示が出て実行できません。
269 名前:268 mailto:sage [2009/12/05(土) 04:07:49 ] ↑javax.exe じゃなくて javaw.exe です
270 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 05:03:57 ] パスの問題か?
271 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 06:37:23 ] >>268 -jarが足らない
272 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 07:50:03 ] batファイルでいいじゃない
273 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 08:21:58 ] shellexecuteするexe作ればいいじゃない
274 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 11:20:58 ] このスレの過疎りぐあいのようにJAVAもやばそうだ
275 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 18:37:52 ] 今からJavaを1から勉強するのって手遅れなのかな。 周辺技術がたくさんありすぎてわけわからんのです。
276 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 18:40:02 ] >>275 必要な所だけ覚えればいいと思うんだけど 俺も1年くらい前からJavaを勉強しているけど、自分に必要な所しか知らない
277 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 18:40:09 ] 早く7出せよ馬鹿
278 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 18:52:57 ] java 7は来年の9月にリリースを延期したしね
279 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 18:54:08 ] >>276 どうもです。 必要なところだけなら何とかなるかも知れないです。 とりあえずAndroidとGoogle App Engineのドキュメントを読み進めます。 周辺技術がたくさんあるってことはそれだけ色んな問題にJavaが適用できるってことですよね。 その問題の最適解がJavaの使用かどうかはわかりませんが、頑張ってみます。
280 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 19:10:31 ] マルチプラットフォームで googleに引っかかりやすくサポート受けやすくて 鯖から家庭用PCまでサポートしてるのが java という認識
281 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 21:53:09 ] >>257 Windows x64でも32bit版Eclipseは動くぞ。7はしらん。
282 名前:デフォルトの名無しさん mailto:sage [2009/12/05(土) 22:37:28 ] javaは業務系の仕事してる人にとっては重要なんだろうだけど Webサービス系だと、もうマンモスサイトでもPHPやRoRで十分なんだよね。 自分の場合、食べログがRailsで作られてるってのを知ってから完全にスクリプト言語に移行してしまったな。 フリーだとJavaじゃ稼げない
283 名前:デフォルトの名無しさん mailto:sage [2009/12/06(日) 07:54:08 ] >>281 うっひょ〜
284 名前:デフォルトの名無しさん mailto:sage [2009/12/06(日) 19:16:37 ] JNIでC言語の関数を呼ぶとき、C側の引数がcharもポインタの場合のサンプルってありますでしょうか? 色々ネットを探しても見つけることができませんでした。
285 名前:デフォルトの名無しさん mailto:sage [2009/12/06(日) 20:46:39 ] >>284 java.sun.com/javase/ja/6/docs/ja/technotes/guides/jni/spec/functions.html#wp17382 で変換。jcharArrayだとワイド文字、cで言うcharならjbyteArrayになる。
286 名前:デフォルトの名無しさん [2009/12/07(月) 02:06:27 ] JavaのJListで、自動で項目選択させています。 setSelectedValueメソッドで値指定して項目選択なら、項目が見える位置までスクロールさせる機能がついてるのですが setSelectedIndexメソッドにはついていません。 Indexで項目選択位置を指定して、その選択項目が見えるまでスクロールさせるにはどうすればいいのでしょうか?
287 名前:286 mailto:sage [2009/12/07(月) 10:11:07 ] ↑ 自己解決しました。
288 名前:デフォルトの名無しさん [2009/12/07(月) 14:09:58 ] javaで、クラスを使って花を作りたいのですが、どうすればいいですか?orz ミ●キーを作ったので、そこから変形させたいのですが。
289 名前:デフォルトの名無しさん mailto:sage [2009/12/07(月) 15:01:16 ] 質問が全く意味不明。まずはソースを晒せ
290 名前:デフォルトの名無しさん mailto:sage [2009/12/07(月) 15:35:11 ] javascriptのshowModalDialogでjspを直接呼んだ(※1)場合の 呼び元の値の取得(※2)方法は分かったのですが showModalDialogでservletで処理してからjspを呼ぶ(※3)場合の servletでの呼び元の値を取得する方法を教えてください。 ※1 xxx=1; window.showModalDialog('aaa.jsp',xxx,); ※2 alret(window.xxx); ※3 xxx=1; window.showModalDialog('bbb',xxx,);
291 名前:デフォルトの名無しさん mailto:sage [2009/12/07(月) 18:30:24 ] スレ違い
292 名前:デフォルトの名無しさん mailto:sage [2009/12/07(月) 23:11:02 ] そして過疎へ・・・
293 名前:デフォルトの名無しさん mailto:sage [2009/12/07(月) 23:12:40 ] FileListFlavorでドラッグアンドドロップを実装しようとしています。 メッセンジャーなどのソフトウェアで explorerからのドラッグアンドドロップで操作が出来るものについて Javaから直接ドラッグアンドドロップして操作したいです。 terai.xrea.jp/Swing/DragSource.html ここを参考に組んではみましたが、うまくいかないときがあります。 具体的にはSkypeです。 explorerからSkypeのチャットウィンドウにDnDすると ファイル送信できるはずなのですが、なぜか送信できず・・・ 何か見落としてる場所あるんでしょうか
294 名前:デフォルトの名無しさん [2009/12/07(月) 23:21:49 ] >>293 根本的に能力が低い ただそれだけ
295 名前:デフォルトの名無しさん mailto:sage [2009/12/07(月) 23:48:04 ] spy++で覗け。
296 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 00:47:28 ] まともにDnDの対象に出来るのってURL LISTくらいで次にごく一部の画像のみだよ。 定石としてはURLで受け取って自前で全部処理。
297 名前:デフォルトの名無しさん [2009/12/08(火) 01:05:39 ] マルチスレッド環境で 各スレッドからstaticなBufferedWriterを利用してファイル書き込みした場合 競合って発生しますか? また発生した場合どうなりますか?
298 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 01:22:05 ] Writerはスレッドセーフどす。
299 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 01:36:23 ] >>297 なんで実験してみないの?
300 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 02:41:00 ] >>298 サンクス >>299 お金ないんです
301 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 11:30:33 ] >>300 いやいや、開発に必要な環境はPC以外すべて無償でしょ。 まあそれはおいといて、 今EJB3の勉強しているんですが、実案件としてEJBってどのくらい使われているんでしょうか。 リモートのwebサービスを組み合わせて利用するというのがクラウドの考えにあっていると思ったのですが、 とりあえず動かしてみるってレベルでもかなり面倒な印象です。 javaでwebAPIを公開しているようなサービスってどんな技術を採用するんだろう。
302 名前:デフォルトの名無しさん [2009/12/08(火) 15:51:56 ] 実行時の java.lang.ArrayIndexOutOfBoundsException: 5 ってどんなエラーですかね?
303 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 15:52:37 ] webサービス系でEJBなんて使ったこと無い。金融系とかならあるのかもしれないけど。
304 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 15:54:10 ] >>302 その言葉の通りだろうがボケがァァァァ 配列 添え字 領域の外 例外
305 名前:293 mailto:sage [2009/12/08(火) 19:28:18 ] SWTだとうまくいく・・・のでAWTがダメな予感 諦めました・・・
306 名前:デフォルトの名無しさん mailto:sage [2009/12/08(火) 21:03:05 ] SWT使うくらいならC#使えば?と思うくらいSWTはプラットフォーム寄り。 だからかな?
307 名前:デフォルトの名無しさん [2009/12/09(水) 00:55:43 ] だれかいますか?
308 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 00:59:44 ] いません
309 名前:デフォルトの名無しさん [2009/12/09(水) 01:05:36 ] いたw ちょっと質問させてください!
310 名前:デフォルトの名無しさん [2009/12/09(水) 01:11:21 ] public class Itest3 extends JFrame{ public final static int WIDTH=50; public final static int HEIGHT=70; public final static int FRAME_W=800; public final static int FRAME_H=700; static Card[] card = new Card[52]; public static void main(String args[]){ JFrame jf = new JFrame(); jf.setSize( FRAME_W,FRAME_H ); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); int pos=100; String[] filen=new String[52]; String a; String o; for(int i=0;i<10;i++){ a=Integer.toString(i+1); filen[i]="./obj/"+a+".png";//ファイル名作成: objディレクトリの中にファイル1.png〜52.pngが入ってます。 o=filen[i]; card[i]=new Card(o,pos);//Card instance 生成 pos+=WIDTH; } //System.out.println("インスタンス作成されました");
311 名前:デフォルトの名無しさん [2009/12/09(水) 01:12:56 ] for(int i=0;i<10;i++){ card[i].setBounds(card[i].posX,card[i].posY,50,70); jf.getContentPane().setLayout(null); jf.getContentPane().add(card[i]); } //System.out.println("フレームに追加されました"); jf.setVisible(true); } }
312 名前:デフォルトの名無しさん [2009/12/09(水) 01:14:27 ] class Card extends JComponent implements MouseListener{ public final static int FIELD_X =350 ; public final static int FIELD_Y =300 ; boolean select=true;//カードの選択記憶 Image pic; int posX; int posY=500; public Card(String s,int posx){ posX=posx; pic= Toolkit.getDefaultToolkit().getImage(s); addMouseListener(this); }
313 名前:デフォルトの名無しさん [2009/12/09(水) 01:17:14 ] public void paintComponent(Graphics g){ super.paintComponent(g); g.drawImage(pic,0,0,this); }
314 名前:デフォルトの名無しさん [2009/12/09(水) 01:18:23 ] public void hand(Card c){ c.posX=FIELD_X; c.posY=FIELD_Y; c.setBounds(posX,posY,50,70); c.repaint(); }
315 名前:デフォルトの名無しさん [2009/12/09(水) 01:20:34 ] public void mouseClicked(MouseEvent e){ Card fc; int mx=e.getX(); int my=e.getY(); Card c=(Card)e.getComponent(); fieldCard=c; hand(c); fc.posX=0; fc.posY=0; fc.setBounds(posX,posY); }
316 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 01:27:44 ] WEBアプリを作っているのですが、プロパティファイルを更新した際に、サーバを再起動せずに更新した値を使うことは不可能なのでしょうか?
317 名前:デフォルトの名無しさん [2009/12/09(水) 01:27:45 ] 大体こんな感じのプログラムです。 Frame上にトランプカードの絵を表示させてクリックされたカードを上に 表示し直すというものです。 一応動いたのですが、paintComponentメソッドで表示させる順番が 恐らくカードの数字の大きいものから小さいものへ(getContentPane().add() であとに追加されたものから順に?)という風になっているらしく、 一度選択したカードよりも大きな数字のカードを選んでも画面がなにも 変わりません。どうしたらいいでしょうか?
318 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 02:17:51 ] >>316 環境次第
319 名前:デフォルトの名無しさん [2009/12/09(水) 02:59:22 ] サイコロゲームのヨットのプログラム教えてください。
320 名前:デフォルトの名無しさん [2009/12/09(水) 03:48:49 ] CUIで改行なしに表示を書き換えるにはどうしたらよいでしょうか? CUI版のプログレスバーを作りたいです、右端に数字%、左からだんだん*が詰まっていくような形式。 *****-----50% が ******----60% に書きかわるように。
321 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 04:08:28 ] >>320 System.out.print("\r*****----- 50%"); System.out.flush(); : System.out.print("\r******---- 60%"); System.out.flush(); windowsのコマンドプロンプトって\r使えるのかな ダメならエスケープシーケンス
322 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 06:01:10 ] winは2000以降無理
323 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 09:32:24 ] >>321 win7はそのコード使えるね。
324 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 10:44:49 ] >>317 何やらよくわからんが、いったんremoveしてaddし直すとか、setComponentZOrderとか、そのあたりみてみれば
325 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 11:42:57 ] ArrayList<String> objAry = new <String>ArrayList(); の部分に対して。 「型 ArrayList は総称ではありません。引数 <String> でパラメーター化できません。」 というエラーが発生します。 java version "1.6.0_15"です。 Eclipseのコンパイラ準拠レベルも変更してみたのですが、解決できません。 大変お手数ですが、解決策をご教授いただけないでしょうか。
326 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 11:46:38 ] >new <String>ArrayList(); new ArrayList<String>();
327 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 11:47:45 ] コンストラクタをArrayList<String>に変えろ
328 名前:デフォルトの名無しさん [2009/12/09(水) 12:21:55 ] BeanReaderとbetwixtを使ってXMLを読み込む時の質問はここでしても良いですか?
329 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 13:45:24 ] エクセルでマクロをちょっといじる程度の者です。 Javaを勉強しようと思いました。 そんな入門者にベストなサイト、本を教えてください。 このサイトだけ、この本だけでとりあえずは大丈夫!的な。
330 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 13:48:53 ] >>329 ここ見ればマスターしたも同然 www.hellohiro.com/
331 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 14:19:41 ] JEditorPaneを使っていて気になった事があります どうやって、スクロールバーの大きさを計算しているのですか? 教えてエロい人!!
332 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 14:53:58 ] >>330 あなたもエロくな〜れ
333 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 16:41:40 ] javaのクラスライブラリにリフレクションをして、privateなメソッドにアクセスするのは止めた方がいいんですかね?
334 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 16:44:33 ] >>333 止めた方がいいが、それしか手段がなければ仕方ない。
335 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 18:27:23 ] >>330 ありがとー
336 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 19:10:59 ] 過疎が酷いな…
337 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 19:13:50 ] そりゃ仕方ない 現実世界でもJava離れが進んでるんだもの
338 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 19:42:32 ] Javaがダメになったのはフレームワークの乱立とEJBのせいだと思う
339 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 19:57:00 ] フルスクリーンモードに移行すると初期化が終わるまで FrameでpackしたCanvasのサイズが狂うんだけど、 初期化終了まで同期する方法って有る?
340 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 20:58:03 ] .NETのせいだと思う
341 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 21:32:59 ] Windows以外でもそうなら、Rubyのせいだな。
342 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 22:12:19 ] >>338 が正解だろう。他言語のせいではないと思う。 プロジェクトごとに大した目的意識も無く好き勝手で色んなフレームワークを継ぎ接ぎしてるから 自分の場合は勉強する意識が失せてしまった。 いくら経験積んでも本質とは違う場所で苦労するだけでエンジニアとして成長してる気がしないんだよね。
343 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 22:18:44 ] まぁEJBがクソすぎたっつーことだな。
344 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 22:32:31 ] EJBを批判するとバカ扱いされるからEJBを批判したくないけど 使いたくない人はJavaそのものを避けるようになった。
345 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 22:58:00 ] PHPとか馬鹿が使う言語だろ〜とか思ってたあの頃が懐かしい。
346 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 23:03:12 ] Javaで大成しても時代遅れ感が否めないもんな seasarプロジェクトの人達とかすごい技術持ってるのに知名度も将来性もイマイチだし。 スピード感のあるweb屋が成功する時代
347 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 23:27:55 ] web屋はアクセサビリティ覚えてから仕事してくれ。 あと書類に仕様の名称くらい正しく使ってくれ。 昔みたいにURN,URI,URLを区別してた時代とは違うんだからそれくらい出来てくれ。
348 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 23:43:50 ] あるJPanelを別のJPanelに入れ替えたいのですが どうすればいいのでしょうか?
349 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 23:49:04 ] 古いJPanelをremoveして新しいJPanelをaddする
350 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 00:37:20 ] webの仕事したいなーと思ってjava勉強しようと思ったけど間違い? 相変わらずjava案件いっぱいある気がするんだが・・・ 先が無いってこと? 先を考えたら何がいいわけ?
351 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 00:49:01 ] 全部
352 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 01:22:57 ] 今後も(オープン系での)エンタープライズなシステムはJava一択だと思うけど。 ただそーいった新規案件自体は、レガシー環境からのリプレースをメインとした需要だったわけで、 一時期ほどの活況はないだろうな。保守運用はいっぱいあると思うが。 単純なWebアプリ(簡単なデータ登録といろんな検索)とかのシーンでは Javaの出番はないだろ。もはや。RoRあたりでがんばれ。
353 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 01:28:04 ] つ マ板
354 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 01:46:34 ] 案件の数自体はJava案件は全然減ってないよ。 PHPやRoRが急激に増えただけ。 個人的な考えだけど、PHPやRoRの大きな利点として仕事以外でもスキルを生かせるところだと思う。 個人で作るサイトにJavaを使う理由はほとんど無いし。
355 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 10:21:16 ] そこでGAE/Jですよ。タダはでかい。
356 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 12:09:46 ] アルファ成分が事前に乗算されずに色成分と別で持ってる一つの画像をアルファ成分が乗算された新しい画像を生成するにはどうすればいい? アルファ付きの8bit PNGが事前にアルファ成分を乗算してなくて透過指定したピクセルが透過せずに描画されてしまうんだけど。 元からアルファ成分を乗算した状態の画像を用意するってのはナシでお願い。
357 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 12:32:13 ] 二点の座標で結ばれた線分の中点から垂直に30ピクセル上の点の座標を求めるにはどうすればいいでしょうか
358 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 12:35:15 ] sin.cos.tan
359 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 12:57:45 ] 「上」がy座標の減少方向として((x1+x2)/2,(y1+y2)/2-30)
360 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 13:06:38 ] Java3Dのアプレットをブラウザで見れるようにするには Java 3D Runtime for JREが必要らしいということは分かったのですが、 どこでダウンロードできるのでしょうか。
361 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 13:22:35 ] >>360 Java3DでぐぐってJava3Dのプロジェクトページへ行き、 バイナリのダウンロードページから動作させたい環境に合ったものを落としてくる。 インストールの仕方が分からないならインストーラ付きのやつを落とせ。
362 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 15:02:24 ] >>359 解答ありがとうございます 中点から真っ直ぐ上にではなく線分に対して垂直な座標が欲しいのですが…
363 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 16:02:14 ] C#のプログラムで取得したデータを javaのプログラムで即座に読み込んで処理させたいのですが、 どうすればよいのでしょうか? C#のデータ自体は1行程度の文字列で大体1秒ごとに 外部デバイスから取得されます。 C#側のソースも自由に変更することができます。
364 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 16:03:09 ] スレチだけど、暇つぶしに解いてみる 2点(x1, y1), (x2, y2)を結ぶ線分の垂直二等分線の方程式は、 a*X + b*Y + c = 0 a = x2 - x1 b = y2 - y1 c = (x1^2 - x2^2 + y1^2 - y2^2)/2 Y座標は2点の中点から-30なので求める座標は、 (-(b*d + c)/a, d) ―― ※ d = (y1 + y2)/2 - 30 とりあえず解は※だけど、a=0のときは「解なし」となるので注意
365 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 16:08:04 ] >>363 ソケット通信で送ればいいんじゃない?
366 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 16:09:33 ] >>364 数学苦手だけどsin,cosなしでできるもの?角度が必要じゃないの?
367 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 16:14:26 ] 直角なので概念的にはベクトルや複素数などのテクニックが使われてます
368 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 16:15:35 ] >>366 中学レベル三角関数いらない
369 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 16:17:41 ] 一次関数の傾きひっくり返すだけでしょ
370 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 16:23:13 ] >>365 なるほど。それでやってみます。 ありがとうございます。
371 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 16:26:42 ] ネタにマジレス
372 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 16:34:04 ] 2点(x1, y1), (x2, y2)を結ぶ線分の方程式 y-y2=((y1-y2)/(x1-x2))*(x-x2) 2点(x1, y1), (x2, y2)の中点の座標(x3,y3)は (x3,x3)=((x1+x2)/2,(y1+y2)/2) ...A 2点(x1, y1), (x2, y2)の中点を通る2点(x1, y1), (x2, y2)を結ぶ線分に垂直な直線の方程式 y-y3=-((x1-x2)/(y1-y2))*(x-x3) ...B 中点からのその直線に従って距離30ピクセルの位置の座標を(x4,y4)とすると (x3-x4)*(x3-x4)+(y3-y4)*(y3-y4)=30*30 ...C の方程式が成り立つ 以上のA,B,Cを連立してx4とy4を求めれば2つの座標が求まるはず >垂直に30ピクセル上 これが示す「上」という概念が不明だが Y軸にしたがって上下を決めるなら 求まった2つの座標のY座標を比較すればいい 上下を決める直線が別に存在するなら ベクトルの概念がないと求まらないけど
373 名前:デフォルトの名無しさん [2009/12/10(木) 16:58:03 ] ベクマスツカウヨロシアルヨ
374 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 17:35:16 ] >>372 そのまま連立しちゃダメだろ Bの式のxとyにx4,y4を代入しなくちゃダメだろ
375 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 19:37:34 ] >>372 ここはプログラム板だ 数学の話なんかするな!
376 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 21:55:41 ] 数学板?
377 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 22:04:28 ] 自分が理解できないからって……
378 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 22:39:08 ] 確かに板違いではあるが、プログラマなら数学に無縁ということもないだろ 何十レスと続くわけでも他に話題があるわけでもないし、高校数学までなら別にいいと思うがね
379 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 22:45:53 ] >他に話題があるわけでもない 泣けるね
380 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 23:02:19 ] すれちがい
381 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 23:32:59 ] >>378 禿げ!しく同意
382 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 06:03:53 ] SwingのJRadio buttonを改行込みできちんと表示させたいです. ◎〜〜〜〜〜〜 〜〜 ◎〜〜〜〜〜〜 といった感じで,右側が端についたら折り返して欲しいのです. 今のところ radio_panel.setLayout(new BoxLayout(radio_panel,BoxLayout.Y_AXIS)); と書いているのですが,これだと隠れてしまいます. よろしくお願いします.
383 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 12:10:59 ] >>363 俺は似たような要件あったとき、 C#で一旦ファイルに落としてたなー Javaでそいつtailするようにして。
384 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 12:13:27 ] 低能がいるな
385 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 12:31:49 ] >>383 ダサス
386 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 15:40:54 ] ペイントツール作成していて書いたものをDATファイルとして保存、読込していたものを jpgファイルとして保存、読込がしたい。JPEGImageEncoder使うのはわかったけど使い方が わからないんだ。アドバイス頼む。
387 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 15:58:35 ] >>386 javax.imageio.ImageIOのread,writeで読み書きした方が楽だと思う
388 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 16:05:44 ] >>387 はjpgを含むサポートされている画像形式と画像のオブジェクトやストリームとの間のやり取りなので DATファイルと内部形式との相互変換は別途必要だけど
389 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 16:06:16 ] >>387 だよな
390 名前:デフォルトの名無しさん [2009/12/11(金) 16:22:59 ] bxbf
391 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 23:18:20 ] >>382 Swing のボタンとかラベルは HTML を表示できるので JRadioButton に表示させるテキストを HTML にしてみては
392 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 23:57:05 ] 最近、C++の勉強を開始したけど、javaよりも参考になるサイトが多い気がする しかし、javaよりも情報の品質が低い気がする
393 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 00:00:13 ] オブジェクトプールって使わないほうがいいんでしょうか? シューティングゲームで大量の敵弾オブジェクトを生成するのにプールを使おうと思ったんですが 使うと逆にパフォーマンスが低下するという記述も見たので。 www.nilab.info/zurazure2/000035.html [Java]手軽にオブジェクト・プーリング www.ibm.com/developerworks/jp/java/library/j-jtp01274/ Javaの理論と実践: ガベージコレクションとパフォーマンス タスクマネージャーを見ると メモリ使用量がどんどん増えていくのですが、これは自動的にメモリが開放されていないからなんでしょうか・・?
394 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 00:01:01 ] 世界は広いぞ
395 名前:デフォルトの名無しさん [2009/12/12(土) 00:13:17 ] 0〜最大値の間で重複なしにランダムに整数を取り出したいです。 加えて、時間が経っても処理が重くならない。最大値が大きくてもメモリ消費が変わらない。 というふうにしたいんですが、どうすればいいでしょうか。
396 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 00:16:21 ] 重複しないって事は過去に出たものを知っていなきゃいけないんだから 情報論的に言って貴方の言う条件は満たせないと思いますハイ できるならマクスウェルの悪魔が出るぞ
397 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 00:16:35 ] String s = "FFFFFFFF"; int i = Integer.parseInt(s, 16); でエラーが出ました。 APIを見ると符号付きで計算すると書いてあるのに何故? int i = Integer.parseInt(s.substring(0, 2), 16) * 0x1000000 + Integer.parseInt(s.substring(2, 8), 16); なら大丈夫でした。 もっとスマートなやり方ないでしょうか?
398 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 00:17:57 ] >>395 >最大値が大きくてもメモリ消費が変わらない は無理だが、配列確保して順に値を入れてからシャッフル(ここで乱数は使う)したら? 要するにトランプのシャッフルと同じ。
399 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 00:29:16 ] 文脈からするに以下のふたつは試したのか? ・Set<Integer>にランダム値を保存してcontainsがtrueなら再抽選 ・0〜最大値までのIntegerが詰まったリストをCollections.shuffle これでダメなら元々ランダムじゃなくてアトランダムなんだから、 ジェネレータでランダム関数を使わずに自作するしかないんじゃね?
400 名前:デフォルトの名無しさん [2009/12/12(土) 00:58:03 ] >>396 過去に出たものを知ってなくてもいい方法が、きっとあると思ってます。 >>398 >>399 リストやセットを使う方法は、メモリ消費が激しいのと、 状態をファイルに保存、ファイルから読込みするのに時間がかかるので避けたいです。 最大値2000万でファイルから読み込んだら、2分もかかってしまいました。 >ジェネレータでランダム関数を使わずに自作するしかないんじゃね? 何かいい方法があれば、教えて欲しいです。 Intのビットを固定パターンで入れ替えるくらいしか思いつきません。
401 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 00:58:46 ] >>397 Javadoc のサンプルを見ると分かりますが、「"符号付き整数の文字列"を構文解析する」のであって、 オーバーフローしたのを丸めるという意味ではないです。 サンプル(Javadoc より): parseInt("-FF", 16) returns -255 parseInt("2147483648", 10) throws a NumberFormatException 2 番目の例と同じく、"FFFFFFFF" は Integer の MAX_VALUE を超えているため、エラーに なっています。 "FFFFFFFF" を int の -1 にしたかったら、 int i = (int)Long.parseLong("FFFFFFFF", 16); が近道だと思います。
402 名前:デフォルトの名無しさん [2009/12/12(土) 01:01:26 ] 例えば、1〜10、11〜20、21〜30、31〜40、41〜50と、範囲に収まる数字の件数をカウントしたい場合、 iを対象となる数字、配列xを件数とすると、 var i = 27; var x = []; if(i>0 && i<=10) x[0]++; elseif(i>10 && i<=20) x[1]++; elseif(i>20 && i<=30) x[2]++; // ここでカウント elseif(i>30 && i<=40) x[3]++; elseif(i>40 && i<=50) x[4]++; と書くのはダメダメ。センス無い。 (forやwhile使って回しても大差無し。) var i = 27; var x = []; x[Math.floor(i/10)]++; // 配列x[2]でカウント と書けばスッキリ。 なんてな。
403 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 01:26:24 ] >>400 論文とか読めない人何で適切なアルゴリズムは提示できないが、 ビットシフトというか範囲値内でのローテートになるのかな。 ローテート量の他にループカウンタを導入してエントリ位置、カウンタ参照方向(++か--か)、 カウンタ参照方法(偶数→奇数走査)など思いつく限りの走査法をランダマイズするのがいいかと。
404 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 01:40:16 ] >>400 が理解できるならもうやってるだろ
405 名前:397 mailto:sage [2009/12/12(土) 02:15:21 ] 助かりました、どうもです。
406 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 07:50:14 ] 387-388 色々試してみる。しかし基本しか知らないのにペイントツール作って 描いた絵に動きを付けるってものを仕上げなきゃいけなかった。 ありがとうございます
407 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 08:08:43 ] >過去に出たものを知ってなくてもいい方法が、きっとあると思ってます。 言っても無駄なんだなってことは理解したよ もう止めないわ
408 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 08:18:34 ] >>393 自動的に開放されないようにプールしてるんだろ 使い終わったオブジェクトは再利用してるのか?
409 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 11:15:03 ] テンプレのサイト見ても解決できなかったのでお願いします buildするのにantを使おうとしているのですが >ant run Buildfile: build.xml init: compile: run: [exec] java.lang.NoClassDefFoundError: Files\Java\jre6\lib\ext\QTJava/zip [exec] Exception in thread "main" [exec] Result: 1 BUILD SUCCESSFUL Total time: 1 second という結果で一応ビルドできてる?みたいなのですがバッチファイルを起動しようとすると 同じエラーが出てしまいます。 関係ありそうな以下のパスを調べたりいじったりしてもダメでした。 ANT_HOME=C:\apache-ant-1.7.1 CLASSPATH=.;\C:\Program Files\Java\jre6\lib\ext\QTJava.zip JAVA_HOME=c:\program files\java\jdk1.5.0_08 Path=c:\program files\java\jdk1.5.0_08;C:\Program Files\QuickTime\QTSystem\;C:\apache-ant-1.7.1\bin(一部抜粋) よろしくお願いします。
410 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 12:00:16 ] >>400 Set<Integer> よりは BitSet の方が軽いので試してみそ 2000万もあると、どのみち無理かもしれないが
411 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 12:06:39 ] みそ、って久しぶりに見た 青春時代を思い出した 泣けてきた
412 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 13:31:22 ] >>402 それバグってね?
413 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 15:51:43 ] まさか2000万件をオンメモリでやるきなのか? それともHDD上でやってみたら2分かかったからもっといいのないって話? まあ要求からして無理なんだが。それこそマクスウェルの悪魔レスまで戻る。
414 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 15:58:16 ] クイズの問題をランダムで出したいだけだろ? ジェネレータを自作しろって結論がでてるからもういいよ。
415 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 16:02:02 ] ジェネレータって何?
416 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 16:24:05 ] 特定のオブジェクトを作る関数。生成機とも呼ばれる。乱数生成機、ID生成機とかね。
417 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 16:24:55 ] あと機じゃなくて器のほうで置換しといて
418 名前:デフォルトの名無しさん [2009/12/12(土) 16:43:53 ] マクスウェルの悪魔(笑)
419 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 16:45:00 ] なるほど。勉強になります
420 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 16:58:14 ] C言語で作られたライブラリ「〜.so」(Solaris)をJavaから呼ぶ方法を知りたいのですが、 どうすればよいのでしょうか? Javaからはdlopenを使って呼んでくださいとライブラリの説明書には書いているのですが、 Javaでdlopenメソッドが見当たらず困っています・・・。
421 名前:デフォルトの名無しさん [2009/12/12(土) 17:05:40 ] JRadioButtonのActionListenerに、 一方のボタンが押されたらテキストフィールドをenableに、他方であればdisableにする、という実装を行っています。 人が画面でラジオボタンを押した場合にはうまく動くのですが、 コード上でJRadioButton#setSelected(true)した場合にはイベントが発生しません。 setSelectedの場合も同様の動作をさせたい場合、一般的にはどういう実装を行えばよいでしょうか。 ChangeListenerだとsetSelectedでもイベントを受け取れますが、必要ない状態の変化でもイベントが 発生するので無駄な動作が多くなるな、と考えています。
422 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 17:16:07 ] >>420 JNIじゃない?
423 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 17:16:40 ] >>420 JNIを使え >>421 そのActionListenerを自分で呼ぶとか、setSelectedの場合にも同様の動作(disable/enable)を書けばいいと思うが・・・ doClickはどう
424 名前:421 mailto:sage [2009/12/12(土) 17:28:42 ] >>423 ありがとうございます。 現在はsetSelectedの後ActionListenerを直接呼んでいたのですが、 不恰好だと考えていました。 doClickを試してみまたところ、同じように動作させることができました。
425 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 17:34:20 ] >>420 そのライブラリをロードするようなライブラリをJNI使って自前で作れ、ということなのでは。
426 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 18:41:54 ] >>420 JNI
427 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 18:43:04 ] >>420 JNIを使えば?
428 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 18:54:58 ] >>420 つJNI
429 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 18:55:07 ] ネイティブを使うって、かなり抵抗あるよね〜 swtくらいなら、妥協してもいいけどさ
430 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 18:59:21 ] >>420 JNI知ってる?
431 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 19:22:31 ] 420が大漁すぎてワロタ
432 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 19:24:05 ] 同じ答えなら何人も安価してまで答えることじゃなくね?
433 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 20:00:42 ] さすが自称中級者の巣窟だな
434 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 20:18:50 ] swingのアプリをVBのようにグラフィカルに簡単に 作成できるような開発環境ってありますか? 代表的なものをおしえてください。
435 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 20:32:10 ] >>434 NetBeansはどうでしょうか?
436 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 20:42:04 ] >>434 swingといえばNetBeansです!
437 名前:デフォルトの名無しさん [2009/12/12(土) 21:00:42 ] >>433 そりゃJNIしかないでしょう
438 名前:デフォルトの名無しさん [2009/12/12(土) 21:56:40 ] Swingで作る意味がわからん Webで良いよ
439 名前:デフォルトの名無しさん [2009/12/12(土) 23:17:58 ] ↓と似たような処理がJava標準ライブラリかcommonsにありませんか? public static String[] breakString(String str) { ArrayList<String> list = new ArrayList<String>(); BufferedReader reader = new BufferedReader(new InputStreamReader(new ByteArrayInputStream(str.getBytes()))); String line = null; try { while ((line = reader.readLine()) != null) { list.add(line); } } catch (IOException ignored) {} return list.toArray(new String[list.size()]); } \nと\r\nでStringを分割したいだけなんです。
440 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:23:26 ] public static String[] breakString(String str) { return str.splilt("\n|\r\n"); }
441 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:24:42 ] ごめんスペルミスった × splilt ○ split
442 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:25:37 ] JavaでHTTPのリクエストをうまく処理できる方法はないでしょうか。 (リクエストから指定のヘッダ値を取り出したりしたいと思っています) java.net.URLみたいなラップ化クラスがあれば便利なんですが。
443 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:27:46 ] サーブレットにしてサーブレットコンテナ上で動かす
444 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:28:08 ] J2EE・APIにアクセスできなくなったんだけど、なくなったの?
445 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:31:51 ] >>443 どうもありがとう。 不勉強ゆえ、サーブレット方面はしっかりと探してなかったです。
446 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:56:13 ] >>>444 どうなんだろうね
447 名前:439 mailto:sage [2009/12/12(土) 23:58:23 ] >>440 どうもありがとうございます。 splitは試したんですが、正規表現を間違えてました。
448 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 23:59:20 ] >>431 なのにJNA使え、が一つも無い件について。 https://jna.dev.java.net/ まぁ、>>420 のスキルだとおすすめできないかもしれんが。
449 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 03:26:00 ] keyPress(KeyEvent.VK_SHIFT); delay(KEY_WAIT); keyPress(KeyEvent.VK_RIGHT); delay(KEY_WAIT); keyRelease(KeyEvent.VK_RIGHT); delay(KEY_WAIT); keyRelease(KeyEvent.VK_SHIFT); delay(KEY_WAIT); Shift+矢印キーを押す、という処理を上のように記述しているのですが、環境によって挙動が異なってしまい困っています いくつかのPCで試してみた所、ノートPCでは正常に動作するのですが、デスクトップではShiftキーが押されていないのと同じ挙動となってしまうようです Shift+EnterやShift+変換キーなどはどの環境でも正常に動作しているのですが・・・ テンキーの有無が関係しているような気がするのですが、分かる方はいますでしょうか? また多くの環境で実行可能となる記述方法はあるのでしょうか?
450 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 11:02:58 ] >>400 > 過去に出たものを知ってなくてもいい方法が、きっとあると思ってます。 それ、「記憶してはいけません。ただし、記憶しなさい」が実現可能だと言ってるのに等しいってわかってる?
451 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 12:24:58 ] >>450 乱数でなければ、例えば1、2、3、と小さい順に送り出せば、既出の数の記憶無しに重複しない。 彼は、かなりでたらめに見える順序で、全部の数を送り出すアルゴリズムが欲しいのではないだろうか。 いつも同じ順に出てくると思われないくらいに出方のオプションの通り数が必要だし、 もはやこれは擬似としても乱数ではないけれど。
452 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 12:42:25 ] だからアトランダムとランダムは違うって指摘も出てるわけで アルゴリズムの方向性も質問者は理解してる。 >>450 より質問者のが若干レベルが上だから、滑稽な絵になってるな。
453 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 13:05:08 ] ってことは板違いになるかな。 数学板の範疇だな。
454 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 13:30:02 ] 理解してりゃ求めてるのが無理だってわかるよ 理解してねーよ
455 名前:デフォルトの名無しさん [2009/12/13(日) 13:45:46 ] アトランダム(笑)
456 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 13:52:43 ] ipodでシャッフルして聴いてるとしょっちゅう同じ曲になるよな 何千曲も入ってるのにどうにかならんのか
457 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 14:00:13 ] int u = 母数; int r = 毎回違う数、ただしuと互いに素; for(int n = 0; n < u; n++){ System.out.println( (r*n) % u ); } とかこんな感じのが欲しいんじゃないの? まあコレだと r%u ずつ動いていくだけだし 互いに素とか求めるのすごく面倒くさいから実用的じゃないけど
458 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 14:07:51 ] さすが自称中級者スレだな
459 名前:デフォルトの名無しさん [2009/12/13(日) 14:10:31 ] 普通はNetBeansですけどね。
460 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 16:54:42 ] レベルが上とみるのはさすがに買いかぶりすぎだろw どんなエスパーだよ。
461 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 17:04:36 ] ランダムとアトランダムの違いってなに?
462 名前:デフォルトの名無しさん [2009/12/13(日) 17:18:13 ] >>460 日本語でおけー
463 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 17:21:14 ] 日本語だと思うぞ。 買い被る。
464 名前:デフォルトの名無しさん [2009/12/13(日) 17:29:11 ] >>460-463 www.m-nomura.com/st/images/spock.jpg
465 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 17:49:18 ] ランダムな数字(乱数) アトランダムに生成された数字(乱数) どっちも同じです。 形容詞と形容動詞(副詞)の違いであって、文法的な使われ方の違いしかない。
466 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 18:06:40 ] >>434 NetBeansのMatisse。 有償EclipseにもMatisseついてるやつあるけど。
467 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 18:09:25 ] >>461 俺も気になった。
468 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 18:44:25 ] アホの俺様用語なんてどうでもいいんだよ ひっぱりたいなら本題についてひっぱれ
469 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 19:06:33 ] Javaは何故死んだのか
470 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 19:14:26 ] 安物メモリか電源不良だろ。
471 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 19:18:04 ] Javaの人気は何故地に堕ちたのか
472 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 19:24:20 ] アプレットはフレッシュちゃんのせいだね
473 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 19:25:02 ] フラッシュだ フレッシュって誰だよww
474 名前:451 mailto:sage [2009/12/13(日) 19:43:11 ] ビットを交換するだけで、結構入れ替わるから、それと >>457 さんの方法を 組み合わせれば、なかなか規則性は見つけづらくなるのでは。 例えば ビット0〜2の3ビットから成る数の列 0, 1, 2, 3, 4, 5, 6, 7 の ビット0と2を入れ替えると、0, 4, 2, 6, 1, 5, 3, 7 となるが、これに 対してさらに、8と互いに素な5を使って >>457 さんの方法を使うと、 0, 5, 2, 7, 1, 4, 3, 6 になる。2000万なら、それ以下の素数は山ほどあるし、 交換するビットも 24〜25ビットもあるので、出し方のパターンの数はたっぷりだ。
475 名前:デフォルトの名無しさん [2009/12/13(日) 19:56:55 ] >>473 当然NetBeansですよね?
476 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 20:30:04 ] プログラムが苦手なのでここで質問させてください。 黒い円周上を回転する赤い円の周りを、青い円を回転させたいというプログラミングです。 下記のプログラムを訂正すれば出来るようですがどうすれば良いかわかりません。 どなたが教えてください。改行が多いと投稿エラーが出てしまうので、改行を省いてあるので見にくいかもしれまんせんがよろしくお願いします。 /*<APPLET CODE="cir1.class"WIDTH=200 HEIGHT=200> </APPLET>*/ import java.applet.Applet; import java.awt.*; public class cir1 extends Applet implements Runnable{ int d=20; double dt=0.01; double t=0.0; double a=90.0,T=2.0,x,y,o,p; double omega=2.0*Math.PI/T; double z=3.0*Math.PI/T; Thread th; public void start(){ th = new Thread(this); th.start();} public void run()} while(th !=null){ x=a*Math.cos(omega*t); y=a*Math.sin(omega*t); o=a*Math.cos(z*t); p=a*Math.sin(z*t); repaint(); t=t+dt; try{ Thread.sleep((int)(dt*2000.0));} catch(InterruptedException e)}}} public void paint(Graphics g){ g.setColor(Color.RED); g.fillOval((int)(100+(x-d*0.5)),(int)(100+(y-d*0.5)),d,d); g.setColor(Color.BLUE); g.fillOval((int)(120+(x-d*0.5)),(int)(120+(y-d*0.5)),d,d); g.setColor(Color.BLACK); g.drawOval(10,10,2*(int)a,2*(int)a);}}
477 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 21:16:47 ] 宿題スレは別にあるだろ。そっちで聞け。
478 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 21:18:56 ] 自称中級者スレはすぐに迷走するな ドカタ仕事ばっかりやってるからそうなる
479 名前:デフォルトの名無しさん [2009/12/13(日) 21:19:43 ] いやOSSに参加してるからだろう
480 名前:デフォルトの名無しさん [2009/12/13(日) 21:21:59 ] >>464
481 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 22:08:41 ] Javaは何故こんなに落ちぶれたのか
482 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 22:14:12 ] 先が見えないから
483 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 23:01:39 ] 別スレッドでバックグラウンドでデータの読み込み処理を行いながら、メインスレッドで アニメーションを表示するローディング画面を作ろうとしたのですが、 ロード処理開始→描画処理が止まり、画面がしばらく固まる→ロード終了 という風になって、描画処理のほうが完全に止まってしまいます。 そうではなく、描画処理とロード処理が並行して実行されるようにしたいのですが、 どう直せばいいでしょうか?ただ単にスレッドを使うだけではだめなようですが。
484 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 23:08:39 ] >474 初めが必ず0になる欠点があるから、やるなら適当に数足したほうがいいね
485 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 23:12:36 ] >>483 ・描画処理はちゃんとEDT上でやってる? ・EDT上でループしてないよな?
486 名前:483 mailto:sage [2009/12/13(日) 23:36:47 ] あ、Thread.startを呼び出すべきなのに Thread.run()を呼び出していただけでした・・。失礼しました。
487 名前:デフォルトの名無しさん [2009/12/14(月) 01:00:10 ] Javaにもネイティブコンパイラがあるみたいだけど、あまり使われていないの? 使われていないとしたら、何かデメリットがあるのかな。
488 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 01:32:37 ] べつにネイティブ化しても大してメリットないからでしょ。 ごく一部の用途では使われてると思うけど。
489 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 02:34:23 ] Javaってどうしてこんなに糞言語になっちゃったの
490 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 02:56:11 ] あなたが腐っただけですよ
491 名前:488 mailto:sage [2009/12/14(月) 03:21:55 ] >>488 ありがとう。 Javaは起動が遅い(&動作速度も遅いと誤認されている)から、 ネイティブ化するメリットは多少あると思うんだけどなぁ。 ま、そうしたい人がすればいいっていう話かな。
492 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 03:22:38 ] >>491 は>>487 でした。。
493 名前:デフォルトの名無しさん [2009/12/14(月) 06:53:34 ] BufferedReader[] in=new BufferedReader[3]; PrintWriter[] out=new PrintWriter[3]; ServerSocket[] s=new ServerSocket[3]; Socket[] socket=new Socket[3]; try{ for(int i=0;i<3;i++){ s[i]=new ServerSocket(8080+i); socket[i]=s[i].accept(); System.out.println("finish1"); in[i] = new BufferedReader(new InputStreamReader(socket[i].getInputStream())); out[i] =new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket[i].getOutputStream())), true); System.out.println("finish2"); } String[] str=new String[4]; int[] receive=new int[4]; for(int i=0;i<4;i++){ System.out.println("receiving"); str[i]=in[0].readLine(); receive[i]=Integer.parseInt(str[i]); System.out.println(receive[i]); out[0].println(receive[i]); }
494 名前:デフォルトの名無しさん [2009/12/14(月) 06:59:35 ] こんな感じでソケット、リーダー、ライターをいくつか配列で作って通信を させようと思っているんですが、実行できても通信ができません。 デバグプリントしたところ"finish1"までは表示されました。 また、おんなじプログラムで、配列でなくただの変数で宣言するとちゃんと通信できました。 どこがおかしいのでしょうか。
495 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 08:07:36 ] >>493 str[i]=in[0].readLine(); out[0].println(receive[i]); ここはなんで i[0] とか out[0] みたいに 0 を指定してるわけ? あと具体的にどういう動作を望んでるんだ?
496 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 08:43:45 ] >>493 ttp://journal.mycom.co.jp/column/java/049/index.html
497 名前:デフォルトの名無しさん [2009/12/14(月) 11:10:21 ] 質問です。 SwingのJFrameの上に、別のJDialogを表示する仕様なのですが、 JDialogがフォーカスを失っても、ずっと最前面に維持しておくためにはどうすればよいのでしょうか。
498 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 12:03:56 ] JDialog#setAlwaysOnTop 聞く前にjavadoc見るんだ!
499 名前:497 mailto:sage [2009/12/14(月) 13:00:02 ] >>498 ありがとうございます。 1.5から、文字通りのAPIが使えるようになってたんですね。勉強になりました。
500 名前:デフォルトの名無しさん [2009/12/14(月) 14:58:26 ] J2EE の話題(ロードマップ、使い方など)は、現在あるスレでは、 どのスレでするのが、最も適切でしょうか?
501 名前:デフォルトの名無しさん [2009/12/14(月) 15:42:42 ] まだプログラム途中なのですが以下のプログラムが 現段階でif文の中のresultをfountに出力できないのですがどこが悪いのかわかりません。 if文の中でresultを標準出力するとちゃんと出力されます。 public class asig2{ public static void main(String args[])throws IOException{ int i=0,j=0,length2=0,byteValue,a=0; String result; BufferedReader fin1 = new BufferedReader(new FileReader("BlackList")); PrintWriter fount = new PrintWriter(new BufferedWriter(new FileWriter("BlackList2",true))); HashMap<String, ArrayList>list = new HashMap<String, ArrayList>(); ArrayList p=new ArrayList(); ArrayList n =new ArrayList(); while(null!=(result=fin1.readLine())){ if(list.get(result)==null){ fount.println(result); n.add(j); list.put(result,n); a++; } else ; } } }
502 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 15:47:56 ] >>501 fountをちゃんとclose()してみたらどーでしょ。
503 名前:デフォルトの名無しさん [2009/12/14(月) 16:02:28 ] いわゆる波ダッシュ問題なんですが、原因と対処法がいまいちわかっていません。 環境はWindowsXPです。 "?"("\u301c")を含むStringを引数にFileインスタンスを生成しstreamに書き込むと、 想定したとおりのファイルがエクスプローラで見えるのですが、 そのStringをそのままprintlnすると、波ダッシュが?になってしまいます。 やりたいことは、このファイル名を引数にしてRuntime#execを実行したいのですが、 文字化けしているせいで実行先のプログラムでファイルが認識できません。 1.なぜこのようなことが起こるのでしょうか?(ファイル名はOKなのに引数ではNG) 2.一般的に、波ダッシュや全角ハイフンなどはどう対応すればよいのでしょうか? 現在はたまたまファイル名を変更することができるので、取り敢えず"〜"などに 置換していますが、ファイル名がこちらで指定できない(修正できない)ような場合は どうすれば良いのか...
504 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 16:02:48 ] >>502 サンクス ぼんミススマソ
505 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 17:32:40 ] >>503 出力したエンコードはなんなのさ?
506 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 17:43:51 ] Debian lennyでsun-java6(non-free)+tomcat6.0.20(testing)を入れて JSF2.0を使ったアプリを設置してtomcatを起動するとアプリの起動に 失敗してしまう。 JSP+strutsだと問題ないけど。 何がいけないんだろうか。
507 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 18:10:18 ] 相変わらずだなあ、まったく
508 名前:506 mailto:sage [2009/12/14(月) 18:22:47 ] JSF1.2でも駄目だった。 ・WindowsXPのnetbeans6.8で新規プロジェクト ・サーバにtomcat6.0.20を選択 ・Java EE バージョンにJava EE5.0を選択 ・フレームワークにJavaServer Facesを選択 ・登録されているライブラリJSF 1.22を選択 で新規作成したプロジェクトで作ったwarをそのままDebianの CATALINA_HOME\webappsにコピーしてtomcat6を再起動か けてるだけなのにな。
509 名前:デフォルトの名無しさん [2009/12/14(月) 18:31:53 ] >アプリの起動に失敗してしまう。 だけではわからない。 ログを晒しなされ
510 名前:506 mailto:sage [2009/12/14(月) 18:53:38 ] Testというアプリです。 2009/12/14 18:37:17 org.apache.coyote.http11.Http11Protocol init 情報: Coyote HTTP/1.1を http-8080 で初期化します 2009/12/14 18:37:17 org.apache.catalina.startup.Catalina load 情報: Initialization processed in 1454 ms 2009/12/14 18:37:17 org.apache.catalina.core.StandardService start 情報: サービス Catalina を起動します 2009/12/14 18:37:17 org.apache.catalina.core.StandardEngine start 情報: Starting Servlet Engine: Apache Tomcat/6.0.20 2009/12/14 18:37:17 org.apache.catalina.core.StandardContext resourcesStart 2009/12/14 18:37:19 com.sun.faces.config.ConfigureListener contextInitialized 情報: Initializing Sun's JavaServer Faces implementation (1.2_04-b20-p03) for context '/Test' 2009/12/14 18:37:20 org.apache.catalina.core.StandardContext start 致命的: Error listenerStart 2009/12/14 18:37:20 org.apache.catalina.core.StandardContext start 致命的: 以前のエラーのためにコンテキストの起動が失敗しました [/Test] 2009/12/14 18:37:20 org.apache.coyote.http11.Http11Protocol start 情報: Coyote HTTP/1.1を http-8080 で起動します 2009/12/14 18:37:20 org.apache.jk.common.ChannelSocket init 情報: JK: ajp13 listening on /0.0.0.0:8009 2009/12/14 18:37:20 org.apache.jk.server.JkMain start 情報: Jk running ID=0 time=0/93 config=null 2009/12/14 18:37:20 org.apache.catalina.startup.Catalina start 情報: Server startup in 3580 ms
511 名前:デフォルトの名無しさん [2009/12/14(月) 20:03:24 ] 自分でなんとかしなされ
512 名前:506 mailto:sage [2009/12/14(月) 20:07:43 ] なんだそれw。
513 名前:503 [2009/12/14(月) 20:15:41 ] >>505 WindowsXPなのでMS932だと思うのですが... ファイル名に使うエンコードと、JPanelに表示するのに使うエンコードが それぞれどうなっているのかもわからなくて。
514 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 20:15:49 ] >>509 最低だな
515 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 20:25:22 ] >>510 つうか、 >>511 は、私じゃない。 いちどコンテキストパスをクリアしてから tomcat を起動してみなされ。
516 名前:506 mailto:sage [2009/12/14(月) 21:13:07 ] コンテキストパスをクリアするとはどういうことですか?
517 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 21:53:32 ] >516 server.xmlに残ってるか確認
518 名前:506 mailto:sage [2009/12/14(月) 21:58:37 ] $CATALINA_HOME/conf/server.xmlには/Testというコンテキストパスは 見あたりません。
519 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 23:07:32 ] System.out.println((char) 126);
520 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 01:47:29 ] Java1.4のAPIリファレンスがほしいのですが、 ttp://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/ ここがどうも反応がないんです。 どこかほかにないでしょうか?
521 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 03:18:04 ] ttp://java.sun.com/products/archive/j2se/1.4.1_07/ja/index.html ここからダウンロードするとか?
522 名前:デフォルトの名無しさん [2009/12/15(火) 11:56:34 ] コンパイルは通るんですが、実行するとたまにエラーが出ます。 エラーの内容はnullPointとかなんですが、エラーの場所が「Unknown Source」になります。 この「Unknown Source」になるということを解決するにはどうすれば良いのでしょうか?
523 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 12:56:18 ] スタックトレースがずらーっと下の方まで出ないか? それを順に辿っていくんだ ずっと下の呼び出し元から渡された引数が正しくないために起きることもある
524 名前:520 mailto:sage [2009/12/15(火) 13:17:13 ] >>521 ありがとうございます。API入手できました >>522 行数とかだしたいなら、コンパイル時に-gオプションつければ良いと思われる。
525 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 13:48:15 ] 2ちゃんねるブラウザは、お気に入り/スレッド一覧/スレビューの3つにwindowを別けています 現在はJSplitPaneを2つ使って↑を実現しています どうにかして、JSplitPaneを1つにする方向はありませんか?
526 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 13:54:26 ] どれでも好きな答えを選びなさい (1) JSplitPaneのような動作をする自前のコンポーネントを作る (2) そもそも1つにまとめる必要があるのか考え直す (3) 解決方法はない。現実は非情である
527 名前:522 [2009/12/15(火) 14:30:55 ] >>524 ありがとうございます。行数はプログラム全部合わせて1000行ほどですが、 「Unknown Source」になってしまいます。OSはXPです。 「javac ファイル名.java -g」でおkですよね?
528 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 16:09:50 ] 私は銀の斧を選びました
529 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 17:03:17 ] 「Unknown Source」になるのは、 例外の発生元が標準ライブラリ内だからじゃないか?
530 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 17:39:46 ] >>522 例外トレースここに貼ってみて。
531 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 17:55:14 ] 「新これならわかるJava」という本を読み終えて、その範囲は身についたと思っていますが、 このスレに書かれていることはあまり理解できません。 ステップアップするために適した本は何かないでしょうか。 オススメのものがあれば、どうぞ教えてください!
532 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 19:08:54 ] 独習JAVA・・・は敷居が高いかもしれん 他はピアソンの本は俺はcでお世話になって以来好き
533 名前:522 [2009/12/15(火) 19:09:46 ] >>530 Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at javax.swing.JComponent._paintImmediately(Unknown Source) at javax.swing.JComponent.paintImmediately(Unknown Source) at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source) at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source) at javax.swing.RepaintManager.seqPaintDirtyRegions(Unknown Source) at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(Unknown Source) at java.awt.event.InvocationEvent.dispatch(Unknown Source) at java.awt.EventQueue.dispatchEvent(Unknown Source) at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source) at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.pumpEvents(Unknown Source) at java.awt.EventDispatchThread.run(Unknown Source) これです。
534 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 19:48:05 ] >>533 ごめん。俺にはわからない。
535 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 19:52:13 ] >>532 ありがとうございます。 Amazonのレビューにあまり良いことが書かれていませんが 「基礎の基礎を一冊終えたあたりに」とも書いてあってちょうど良さそうなので 一度立ち読みしてみます!
536 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 20:38:09 ] >>533 Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException でググったら一発で解答が得られた。 やっぱ、質問は小出しにしないと楽しめないね。
537 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 20:44:06 ] javaは基礎本1冊読んだら、あとは実践で何か作った方がいいよ。 文法をコツコツ暗記してる奴って何か作らせても全く作れない。 多少難しいと思っても挑戦するのが大事。 挫折したとしても、その経験を持ってもう一度基礎本を読み直すと理解が全然違う。 とにかく経験
538 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 20:51:19 ] >>533 コンポーネントの再描画でエラーが発生してるんじゃないか、 くらいしかわからんね
539 名前:522 [2009/12/15(火) 22:05:41 ] >>536 ttp://q.hatena.ne.jp/1101906592 このページに書いてあることが近い気がするんですが、ここでしょうか? >>538 コンポーネントの再描写って既存のクラスを拡張したりすることでしたっけ? 心当たりが出てきましたorz
540 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 22:18:23 ] >>539 多分別スレッドでSwingコンポーネント触ってるだろ。
541 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 22:20:30 ] 調べて出てこなかったので質問します。 配列で int [] atai = { 1, 1, 1, 1, 1, 1, 1, }; int [] x = { 5, 5, 5, 5, 5, 5, 5, }; と初期設定をするのですがこの連続する1と5を省略できる方法はありますか? あと出力するときに↓のようにずれてしまうのですがどうすればいいでしょうか? System.out.printfが使えなくてほかの方法を探しています atai 1 50 2 13 x 82 11 12 5 5 偉い人教えてくださいお願いします
542 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 22:25:55 ] >>541 java.util.Arrays.fill() java.lang.String.format()
543 名前:デフォルトの名無しさん mailto:sage [2009/12/15(火) 23:12:10 ] >>537 そうですね。 ネット上のゲーム講座を見つけたので、それを読みながら実際に作ってみようと思います。 ありがとうございました。
544 名前:522 [2009/12/16(水) 00:06:01 ] >>540 TimerTaskを使ってて、そこのせいかもしれないです。 TimerTaskと同じ動きのSwingのものを使ってみます
545 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 00:26:15 ] まあそれが原因だな。 描画に関係する処理をEventキュー以外から呼んだら駄目だ。
546 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 02:27:43 ] なんのためにSwing Timerがあるとおもってるんだー。 わざわざ汎用のTimerつかわんでも。
547 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 02:51:53 ] でもなー タイマーが描画に引っ張られるのはなー いや別に1秒間隔で0.5秒とか10秒遅れるのはまあいいですよ
548 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 03:41:13 ] >>547 色んな意味で何を言ってるのか分からない。
549 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 04:15:24 ] Java7はいつ? クロージャは?
550 名前:522 [2009/12/16(水) 10:09:09 ] >>546 import java.util.*; 今見たらこのインポートでTimerTask使ってるんですけど、これSwingのものじゃないですか?
551 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 10:37:38 ] Swing のタイマーといったら javax.swing.Timer
552 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 11:03:59 ] >>548 swingのタイマーってイベントディスパッチで呼ばれるじゃん? 遅延が大きいんでないか
553 名前:522 [2009/12/16(水) 11:22:04 ] できました!>>550 のがSwingではない方ですね。 Swingつかったらエラーなくなってスムーズにうごくようになりました。 ありがとうございます!
554 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 11:57:38 ] >>552 どのみちイベントディスパッチスレッドからしかSwingコンポーネント触れないんだから一緒じゃない?
555 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 13:18:00 ] >>552 java.util.Timerでも大きい遅延はするぞ。 問題はタスクで何を実行するか。 アニメ付けたいならSwingWorkerかtimingframeworkの方がいい。
556 名前:デフォルトの名無しさん [2009/12/16(水) 13:40:16 ] BufferedReaderで開いたファイルにをread()で読み込んだ場合、12345が4950515253とASCII変換 されてしまうのですが、これをそのまま12345と読み込みたい場合どのようにすればいいですか? ファイルの中身は数字だけとは限りません。
557 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 13:42:23 ] >>555 態度デカイぞ。 何様だ。
558 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 13:45:49 ] >>556 char型にキャストしなさい (char)49 == '1' (char)50 == '2' (char)51 == '3' (char)52 == '4' (char)53 == '5'
559 名前:デフォルトの名無しさん [2009/12/16(水) 13:58:47 ] >>558 なるほど。助かりました。ありがとです
560 名前:デフォルトの名無しさん [2009/12/16(水) 14:40:24 ] bufferedReaderで while(null !=(line2=fin2.readLine())){ while(null!=(line1=fin1.readLine())){ ----------------------------------------- } } 上記のような2重ループをつくると、1回目の内側のループまでおわり、2回目のループに入る時に fin1.readLine()のポインタがnullにきてしまってるので、2回目の内側のループに入らないのですが readLine()のポインタをリセットするにはどうすればいいでしょうか? 今はBufferedReader fin1 = new BufferedReader(new FileReader("NVlist")); fin1.mark(10000); で、内側のループの外でfin1.reset(100)してたんですが何回かループするとjava.io.IOException: Mark invalid というエラーが返ってきます。。。
561 名前:デフォルトの名無しさん [2009/12/16(水) 14:42:39 ] ↑ fin1.reset(100)→fin1.rest()の間違いです
562 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 15:08:04 ] もう一度開き直せばいいじゃん
563 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 15:23:43 ] 俺も開きなおす方が簡単だと思うが mark(10000)は、10000文字ぶんまで記憶するだけで、10001文字め読み込むと、もうmarkは失われてresetできなくなる
564 名前:デフォルトの名無しさん [2009/12/16(水) 15:55:36 ] >>562 .563 たしかに開き直せば楽ですね あと>>556 を質問したのも自分なんですが、(char)でキャストしたものを標準出力すると文字化け (MZ? ? ? ¡)していて正しい値になっていないようなのですが、なんでですかね? ちなみに読み込むファイルはバイナリでかかれています。
565 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 16:05:04 ] 暇つぶしに自分でアプリを作って居るのですが 26事中4個のクラスにsingletonパターンを使っています 多すぎですかね?
566 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 16:54:47 ] >>565 暇つぶしに全部に使ってみれば?
567 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 16:56:43 ] Singleton パターン - Wikipedia ttp://ja.wikipedia.org/wiki/Singleton_パターン
568 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 16:59:41 ] jtreeでノードが展開されているのか、閉じられているか調べたのですが 教えてエロイ人!!
569 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 17:18:33 ] 普通に質問しろよ
570 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 17:41:50 ] >>564 バイナリファイルをテキスト表示できるわけないでしょ テキストファイルじゃないからバイナリファイルって言うのです
571 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 17:46:01 ] >>568 javadoc調べた? isExpandedって見つからなかった?
572 名前:568 mailto:sage [2009/12/16(水) 18:59:53 ] >>571 javadocでgetXXXばかりを調べていました ありがとうございます
573 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 19:24:34 ] >>560 マジレスするとwhileのネストしなくても済むように考え直すべき
574 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 22:53:24 ] >>569 嫌
575 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 23:54:05 ] Javaでジョイスティックを扱えるライブラリにはいろいろあるみたいだけど どれ使ったらいいの?ffjoystickというのにしてみようかと思っているけど
576 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 03:40:38 ] >>575 じゃあそれで
577 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 03:41:50 ] >>575 各ライブラリごとの違いは分かる?
578 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 03:50:06 ] >>575 分かる?ん?
579 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:11:57 ] お世話になります。 class A { int a; A(int _a){ a = _a; } int x = new Z(a); //<- 0ではなく_aを渡したい } 上記のように書くと、xはnew Z(0)で初期化されてしまいます。 それより先にaを_aで初期化したいのですが、記述方法はあるのでしょうか?
580 名前:579 [2009/12/17(木) 15:14:52 ] よろしくお願いしますage
581 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:16:35 ] class A { int a; int x; A(int _a){ a = _a; x = new Z(a); } }
582 名前:579 mailto:sage [2009/12/17(木) 15:26:38 ] まじでそれしかない? パラメータ初期化子みたいなのないのでしょうか
583 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:33:39 ] 動けばいいんだよ動けば
584 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:33:48 ] わけわかんね
585 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:34:30 ] int x = new Z(a); ?
586 名前:579 mailto:sage [2009/12/17(木) 15:42:01 ] ごめんなさい Z x = new Zだとでも思ってくださ
587 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:45:10 ] JTreeではnodeをダブルクリックしないと展開してくれません この動作をダブルからシングルクリックにしたいと考えいます、何方か教えてください
588 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:45:50 ] コンストラクタの中に書けばいいだけじゃねーの? 意味ワカンネーよw
589 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:48:39 ] Javaはこの順番だからあきらめよう。 スーパークラスの初期化付きフィールド スーパークラスのインスタンスイニシャライザ スーパークラスのコンストラクタ サブクラスの初期化付きフィールド サブクラスのインスタンスイニシャライザ サブクラスのコンストラクタ この順番だからスーパークラスのコンストラクタで仮想関数を呼び出すとややこしくなるね。
590 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:50:41 ] 仮想関数だったんかw
591 名前:579 mailto:sage [2009/12/17(木) 15:51:45 ] まああきらめですね。 手動リファクタリング中で、記述の変更を抑えたかっただけなので。 皆さんどもでした
592 名前:579 mailto:sage [2009/12/17(木) 15:52:43 ] >コンストラクタで仮想関数 いやそこまでややこしい問題じゃないっす
593 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:54:21 ] 移植でもしてたんか
594 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 15:55:08 ] リファクタリング (refactoring) とはコンピュータプログラミングにおいて、プログラムの外部から見た動作を変えずにソースコードの内部構造を整理すること。 いくつかのリファクタリング手法の総称としても使われる。 Wikipediaより引用
595 名前:575 mailto:sage [2009/12/17(木) 16:52:12 ] 各ライブラリの違い・・? 「Java ジョイスティック」でググって一番最初に出てきたWikiを見たら JSR-80はWindows用の実装が進んでいない、libusb32はVistaでは使えないとかは書いてあった。 jUSBはよく分からないけど、2003年からずっと更新されて名一歩意。 FFJoyStickにしたのは一番新しそうで、しかもフォースフィードバックをサポートしてたからってだけだけど これで良かった?
596 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 17:14:46 ] ok
597 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 18:46:50 ] うん
598 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 19:32:56 ] web pg厨房の相手なんかするな。javaの品格が超下がるだろ。
599 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 20:00:59 ] web pg厨房って誰のこと?
600 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 20:08:32 ] うゆじゃね?
601 名前:デフォルトの名無しさん [2009/12/17(木) 21:31:36 ] 大容量ファイルの、先頭数バイトを削ったり、先頭に数バイト足したりしたいのですが、 数バイトデータを削った新しいファイルを作成すると、書き出しに時間がかかってしまいます。 元のファイルを利用して、もっと効率的にやる方法はないでしょうか?
602 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 21:33:37 ] ないかもしれません。
603 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 21:35:53 ] プラットフォームAPIの中にもそんな機能は見かけないからないんじゃね?
604 名前:601 mailto:sage [2009/12/17(木) 21:49:42 ] 絶望しました。
605 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 21:58:04 ] まあそれできないのはJavaのせいじゃないけどな。
606 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 22:21:03 ] 仕事中に眠くてしょうがないんですが、みなさんはどうですか?
607 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 22:24:38 ] 以下2点。について勉強したいのですが、勉強するに当たってお勧めのサイトや本をお教えください。 1.Tomcatによって?JSPから変換されたサーブレットの記述。initやその他のメソッドの意味 2.TomcatやEclipseの構造。起動ファイルの内容や各クラス間の係わり合い よろしくお願いします。
608 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 22:24:52 ] a) コーヒーを飲む。 b) 今すぐ布団に潜る。
609 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 22:28:20 ] >>606 仕事中にうちに帰った後の自分のためのタスクを作る(スイーツ)
610 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 23:36:06 ] 例えば例えば!?
611 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 23:52:57 ] 教えて下さい
612 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 23:56:57 ] >>606 覚醒剤もしくはリタリン。
613 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 23:59:58 ] 夜見かけて読みたいと思った技術系の文書(日本語じゃない論文とか特に)を 会社で熟読してたりはする。業務している態を装いながら。ごめんなさい。 眠いときは社内を散歩するといいぞ。
614 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 00:00:48 ] お塩先生キター
615 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 00:20:25 ] 一日中テストな時期があって超眠くて、 コーヒー、眠眠打破、顔洗う、眠気覚ましツボ、体操、手を針で刺すとか色々試したけど、 効いたのはリタリンだけだった。 やっぱ動物自力で眠気に勝つのは無理なんだよ。ヤバイ薬が嫌なら仮眠とるしかない。
616 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 00:22:32 ] ジャバコーヒーって美味いの? やっぱりアメリカンだからスタバみたいなうすい味?
617 名前:デフォルトの名無しさん [2009/12/18(金) 00:36:11 ] Javaコード上でMozillaJavaHTMLParserが上手く動かないんですが 質問して良いですか
618 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 00:40:00 ] まあ聞いてみようか。
619 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 00:55:56 ] 良いよ!
620 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 01:29:12 ] 構わん、続けたまえ。
621 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 01:45:48 ] そうだ!そうだ!
622 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 01:52:33 ] 【ネット】ニコ生で性器を公開する女子中学生たち [画像付き] 2ch.freefronthost.com/newsplus/1328115421/
623 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 02:00:47 ] あやしいアドレスじゃ
624 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 02:02:23 ] リンク踏んじゃったお・・・・大丈夫かお?
625 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 05:01:40 ] Java Communication APIのSerialPortEventListenerについての質問なのですが SerialPortEventListenerに記述したコードがすべて処理し終わる前にまた データ通信が行われ、SerialPortEventListenerの最初から処理されてしまいます。 SerialPortEventListenerに記述したコードをすべて処理し終えてから再度データ通信を 行い、SerialPortEventListenerに記述したコードを処理する方法はあるのでしょうか?
626 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 07:10:48 ] synchronized
627 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 07:17:34 ] オープンソースで決定木を構築するためのパッケージとかありませんか?
628 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 10:07:39 ] あったら幸せですね
629 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 14:21:00 ] JFrameを最大化したいのですが、setsizeとsetlocationを使ってもできません 何方か教えてください
630 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 14:40:44 ] >629 JFrame#setExtendedState ではダメかな?
631 名前:629 mailto:sage [2009/12/18(金) 15:22:43 ] >>630 最大化できました。ありがとうございます 実はソフトを起動した時にウィンドウのサイズを復元しようとしているのですが f.setExtendedState(JFrame.MAXIMIZED_BOTH)をするとウィンドウが強制的に最大化するので if(Toolkit#getScreenSize() = 前回のウィンドサイズ)として、最大化するか判断しています しかし、ウィンドウを最大化して終了したのにToolkit#getScreenSize()とズレが発生してしまいます ウィンドウのサイズはJFrame#getSize()で取得しています すいませんが、教えてください
632 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 15:44:36 ] >>630 はやく教えてあげてください
633 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 15:54:53 ] >>631 最大化したかは (f.getExtendedState() & Frame.MAXIMIZED_BOTH) != 0 で判定する。
634 名前:629 mailto:sage [2009/12/18(金) 15:55:40 ] f.getGraphisConfiguration().getBounds() をしたら同じ値になりました すいませんでした
635 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 16:21:16 ] >631 参考までに ttp://imodegwin19.blog114.fc2.com/blog-entry-6.html
636 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 18:50:45 ] >>627 Weka とか
637 名前:デフォルトの名無しさん [2009/12/18(金) 18:53:04 ] 617ですが 外部ライブラリの加え忘れでした 自己解決しましたので質問もなしでお願いします お騒がせしました
638 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 23:45:18 ] 質問です。 キャンバス上に直線を引き それに「やり直す/元に戻す」機能をつけようと思っています。 しかし、マウスをドラッグしたときの履歴の処理が上手くいきません。 以下が現在のプロジェクトとなっていますので お気づきの点がありましたら どうぞご指南のほどよろしくお願いします。 rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/862.zip
639 名前:デフォルトの名無しさん mailto:sage [2009/12/18(金) 23:59:28 ] Vector#cloneってディープコピーだっけ?
640 名前:639 mailto:sage [2009/12/19(土) 00:01:41 ] ごめんPointの配列か 関係ないねorz
641 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 00:17:07 ] >>640 レスの無駄使いになりますから少し考えてから行動するようにしましょう
642 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 00:59:48 ] javaクラスライブラリー#clone()した時に clone()がディープコピーなのかシャドーコピーなのか 調べる方法を教えてください
643 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 01:04:17 ] >>601 java.io.SequnceInputStreamとかjava.io.FilterInputStreamは調べた?
644 名前:639 mailto:sage [2009/12/19(土) 01:06:30 ] 何度も本当に申し訳ない >638 まず、startとstartPoint endとendPointがダブってるのでどっちかに統一 それから、CanvasLabelのfigureBoxに追加してる場所がない。 でも大前提としてVectorで持つのではなく、BufferedImage canvasを保持しておくべきなんじゃないのか? figureBoxを使って一回一回描画してないんだから、canvasを保存しておけばいいとおもう。 もしそうならmouseDraggedのところを ((CanvasLabel) figureBox.lastElement()).setEnd(end); → setEnd(endPoint); mouseReleasedを this.canvas.createGraphics(); ↓ BufferedImage image = new BufferedImage(this.getWidth(), this.getHeight(), BufferedImage.TYPE_4BYTE_ABGR); Graphics2D g2 = image.createGraphics(); g2.drawImage(canvas, 0, 0, null); canvas = image; history.add(figureBox.clone()); → history.add(canvas); にして、historyとかundo、redoをVectorからBuffredImage仕様に書き換える それから、paintComponentがおかしい。 switch文はwhileから出して、Iterator ・・・の行とwhile文は削除→canvasを使って描画すればいいから。 あとはCanvasLabelのコンストラクタなりでhistory.add(null)をしておかないと何もない初めの状態が記録されない。 これでたぶんうまくいくはず。疲れたおやすみ
645 名前:368 mailto:sage [2009/12/19(土) 02:16:13 ] どうもありがとうございます 早速やってみます
646 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 15:22:21 ] winでの開発環境はどのようなものが一般的でしょうか
647 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 15:25:34 ] eclipse
648 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 15:32:24 ] エクリプスは便利すぎてぬるま湯に浸かってるみたいだ…
649 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 15:34:41 ] 職業マならテキストエディタで書けよって定番レス↓
650 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 15:36:17 ] 職業マなら開発環境くらい自作しろよ
651 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 15:37:39 ] >>646 NetBeansですね 今やこれ以外の選択肢は無いでしょう
652 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 16:48:15 ] >>651 NetBeans の検索結果 約 5,540,000 件中 1 - 100 件目 (0.66 秒) Eclipse Java の検索結果 約 17,000,000 件中 1 - 100 件目 (0.63 秒) 検索件数が倍になったら教えてね。
653 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 16:51:41 ] NetBeans +開発 +Java -JavaScript -C -PHP -Ruby -SVN -CVS の検索結果 約 122,000 件中 1 - 10 件目 (0.28 秒) Eclipse +開発 +Java -JavaScript -C -PHP -Ruby -SVN -CVS の検索結果 約 903,000 件中 1 - 10 件目 (0.29 秒) ああ
654 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 16:59:48 ] NetBeansって名前がダメだよね 豆だもん、豆。
655 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 17:04:53 ] JavaBeansさんをdisってんの? disられてもしょうがないと思うけど
656 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 17:05:24 ] >>654 Javaェ...
657 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 17:08:39 ] ......
658 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 20:38:23 ] 日曜プログラマーはふつうにC#やれよ。 なんでこのスレに来るんだ?
659 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 21:21:55 ] クラスローダを明示的に呼び出している操作の事を、リフレクションと読んでいるのですか? リフレクションする時は、*.getClass();ってやっているじゃないですか
660 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 21:46:45 ] >>659 違います。getClasはクラスローダの呼び出しでもありません。
661 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 22:47:40 ] >>660 わかりました ありがとうございます
662 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 23:03:16 ] SwingUtilities#paintComponent(Graphics g, Component c, Container p, int x, int y, int w, int h) p - 中間 Container javadocを見てもパラメータpの意味がわかりません どなたか教えてください
663 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 05:24:26 ] >>662 教える人を呼んできますね。
664 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 10:03:33 ] pっていうのは、最終的なcの描画対象コンポーネントだと思っていいみたい。 pがCellRendererPaneならばそれがそのまま使われるし、そうじゃなかったら、CellRendererPaneを新たに作成して、それにpを乗せる感じ。
665 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 11:00:43 ] >>664 thx
666 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 11:47:08 ] JNIを多用し、システムに負荷をかけると性能があまり出なくなりました。 先輩にJNIでC言語のプログラムをよんだとき、C言語のプログラムが確保したメモリって Full GCでしか開放されないからだといわれたのですが、Full GCはあまりはしっていません。 JNIを使用すると、Full GCを意図的に誘発するようにしなければならないのでしょうか?
667 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 11:53:58 ] いや、単にJNIが遅いだけ 最近はJITコンパイルの性能も高いから、Javaだけで書ける処理ならJavaだけで書いた方が大抵の場合速い JNIは、どうしてもCでしか出来ない場合 (OSのAPI呼び出し等) や、 JNIのオーバーヘッドを無視できるような場合 (1回の呼び出しで大量のデータを処理する等) でないと、無意味 あと、Cで確保したメモリはGCは面倒見てくれないから自分で解放しなければならない
668 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 12:24:54 ] >>664 呼んでからどれだけ待たせるんだw
669 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 12:49:08 ] 「15歳からはじめるJavaオンラインゲームプログラミング教室」という本を書店で見つけて、 ステップアップのための本として読みやすそうだと思いましたが、その本について調べてみると 子ども向けということで一歩踏み込んだ説明が省かれてしまっているとのことでした。 ゲームプログラミングのようなとっつき易い内容で、もう少し詳しい説明が書かれた良書は 何かないでしょうか?ご存知の方、どうぞご教示ください。
670 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 12:53:58 ] >>667 出番だよ さっさと回答してやれ
671 名前:667 mailto:sage [2009/12/20(日) 12:57:53 ] 本の善し悪しはわからん 誰か回答してやってくれ
672 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:00:23 ] 本読まないで始めた奴の方が多いだろうしな
673 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:26:51 ] スレチしてしまったのでここで改めて質問します。 Canvas3Dをフレームの領域指定して貼り付けたいのですがどうすればいいでしょうか? 例えばフレームサイズが(500,400)として,Rect(10, 10, 390, 390)くらいの領域だけで3D描画を行わせたり等がしたいです。
674 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:33:42 ] オフスクリーンに描画して切り取ったのをコピーすればいいんじゃね?
675 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:39:29 ] >669 細かい説明なんて2冊目で読めばいいから、 1冊目は立ち読みしてみてわかりやすい本でいいと思う まさか1冊で終わるわけないし。
676 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:44:56 ] Java3Dやらんから的外れかもしれないけど、普通にコンポーネント化して フレームに貼り付けるんじゃね?
677 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:03:03 ] Javaの入門書について質問です。 多言語で実務経験があるものがJavaを学習するのにオススメの入門書ってありますか? 今のところ独習Javaの購入を検討しています。 実務経験はC:4年、VB5.0:1.5年、VB2005:1年、VC6.0:0.5年といったところです。
678 名前:673 mailto:sage [2009/12/20(日) 14:07:10 ] >>674 >>676 ありがとうございます。これから本・ネットで調べてその方法で出来るか試してみます。 ただ出来れば具体的な解決策を例示してくれるとありがたいです。
679 名前:669 mailto:sage [2009/12/20(日) 14:19:34 ] >>672 本を読まずに覚えた人は代わりにどうやって勉強したんでしょうか・・・? >>675 1冊目はもうすぐ読み終わりそうです。 実用的なスキルが身についていないので、ゲーム等を実際に作って覚えるための 2冊目の本を探してます。
680 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:23:05 ] >>678 おいおい、ヒントだけじゃ出来ませんってか? 例えば www7.plala.or.jp/keny01/java3d/java3d_pg_introduction.html とか。 これにしたって、AppletはPanelなんだからFrameとかに貼り付けられる立派なコンポーネントだぜ。
681 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:32:08 ] >>679 >本を読まずに覚えた人 JDKを読む。 sunのチュートリアルを読む。 samplesを読む。 src.zipを読む。 Jakartaなどオープンソースのコードを読む。
682 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:55:57 ] >JDKを読む。 | % od -h java_xx_sdk-x_xx-jdk-xuxx-xxxl.bin | | フムフム、なるほど・・・・ \  ̄ ̄ ̄|/ ̄ ̄ ̄ ̄ /つ_∧! ∧_∧ 〈(゚д゚ ) ( ・∀・) ヽ ⊂ニ) (つ/ ̄ ̄ ̄/ |  ̄\/___/ ̄ ̄ ̄
683 名前:デフォルトの名無しさん [2009/12/20(日) 15:37:11 ] Javaはサンプルソースがてんこ盛りだから本なんかいらない
684 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 15:50:49 ] Java 本 に一致する日本語のページ 約 2,610,000 件中 1 - 10 件目 (0.20 秒) C++ 本 に一致する日本語のページ 約 1,490,000 件中 1 - 10 件目 (0.26 秒) JavaScript 本 に一致する日本語のページ 約 12,600,000 件中 1 - 10 件目 (0.09 秒) PHP 本 に一致する日本語のページ 約 15,200,000 件中 1 - 10 件目 (0.37 秒) C 本 に一致する日本語のページ 約 35,100,000 件中 1 - 10 件目 (0.15 秒)
685 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 15:57:58 ] サンプルは基本がわかった上で参考にするものだろ
686 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:05:44 ] >>684 本だけとか、Cだけとか、JavaよりC!、みたいな検索結果も混じってるんでない?
687 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:11:47 ] >>683 てことは、このスレもいらないわけだね。
688 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:18:13 ] >>685 sunのサイトにあるSwingのチュートリアル読んで来い。 それにしかかいてない大事なことがいくつかある。
689 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:20:20 ] チュートリアル ≠ サンプル
690 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:31:12 ] >>688 これ? java.sun.com/docs/books/tutorial/uiswing/index.html
691 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:33:26 ] まあ、プログラミングの基本がある程度しっかりできてれば、 ソースだけみてもかなりのことがわかるだろう。 プログラミングの基本を知らない人間は、本かなんかで勉強しないと、 いきなりソースコードだけみてもわからんかもしれない。
692 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:41:35 ] Cヒープとは何をする領域なのでしょうか? こちらは開発上、意識する領域なのですか?
693 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 16:46:20 ] 誤爆やスレ違いでなかったら、javaのヒープと同じものと言えば分かるかな? newは無いからmallocなどで確保する。
694 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:05:56 ] ん?
695 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:34:35 ] Class.forNameでロードしたクラスはシステムクラスローダにロードされるのでしょうか? それともVM次第なのでしょうか?
696 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:36:43 ] javadocに書いてあるけど > Class.forName("Foo") > これは、次と同じです > Class.forName("Foo", true, this.getClass().getClassLoader())
697 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 17:37:43 ] >>695 java.sun.com/javase/ja/6/docs/ja/api/java/lang/Class.html#forName (java.lang.String) > 指定された文字列名を持つクラスまたはインタフェースに関連付けられた、 > Class オブジェクトを返します。このメソッドを呼び出すことは、次の記述に相当します。 > > Class.forName(className, true, currentLoader) > > ここで、currentLoader は、現在のクラスを定義するクラスローダを示します。
698 名前:669 mailto:sage [2009/12/20(日) 17:50:03 ] >>681 なるほど、他人のソースを読むということですね。 でも私はまだそのレベルに達してないと思いますし、 移動中に読みたいので、やはり本がいいと思っています。 どうぞよろしくお願いします。
699 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 18:08:13 ] オブジェクトをインスタンス化すると確保されるメモリ領域には変数以外何があるんですか? メソッドについては参照が保持されるのですか?
700 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 18:48:43 ] >>698 www.amazon.co.jp/gp/product/4797344512 ぶっちゃけ、Java(やC#)でゲーム作ってるひとって、C/C++でのゲーム作成経験者が大半じゃない?
701 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 19:10:24 ] ワタシイングリッシュヨメマセーン
702 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 19:47:45 ] >>699 まずは人に聞く前に質問できるくらいの勉強はしてこようね
703 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 20:25:29 ] 現在自作のクラスのclone()を実装しようと思って色々やっているのですが、 フィールドにjava.awt.Shape型の変数があり、これのclone()を呼び出したいのですが、 if( shape instanceof RectangularShape ){ ((RectangularShape)shape).clone(); }else if( shape instanceof 〜 ){ 〜 } て感じでif-elseをつなげていくしかないんでしょうか?リフレクション辺りで色々やってみたんですが コンパイルすら通りません。ちょっとお手上げです・・・
704 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 20:48:30 ] HashMapや自作のBeanを簡単にディープコピーする方法はあるのでしょうか? 新たにnewして、値を入れないとダメなのですか?
705 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 20:49:32 ] >>703 Cloneable だけテストすれば済むんじゃないの?
706 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 21:05:45 ] shape = new GeneralPath(shape); とか
707 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 21:09:42 ] >>703 いろいろあるけど直列化と逆直列化をしてコピーするとか?
708 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 21:17:29 ] >>700 ゲームが作りたいのではなくて、Javaが使えるようになるために とっつき易いゲームを選ぼうとしているだけです。 アマゾンでは >javaの本ではなくゲームプログラミングの本なのでこの本でjavaを勉強したいという人にはオススメできません とコメントされているようです・・・。 一度立ち読みでもしてみます。 ありがとうございました。
709 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:11:25 ] Javaのシステムってスレッドを多重化することでパフォーマンスがあがるといいますが、 CPUは数個しかないと思うので、100スレッド多重としてもあまり意味がないと思います。 何多重にすればよいのかは、どういう計算で求めるとよいのですか?
710 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:11:31 ] >>677 それは他言語で実務経験があるとはいわない。 VB.netに手が馴染まなかったのなら、java,c#ともやっても馴染まないだろう。 どの実務があるか知らないけど、最新PCを買ってlinux(virtualpcとかでも)のcでopenglやgtk+をやるといいと思うよ。 javaなら英語のチュートリアルだけど、もし読めないなら5年以上この業界にいるのに英語も読めないのだからもうあきらめた方がいい。
711 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:16:46 ] ベンチマークして求めればいい
712 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:25:17 ] >>709 何かの本にはCPUの数+1くらいと書いてあった
713 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:29:36 ] javaでゲームとか言い出しても実際はjoglだしね。 c#だとdirectxでこれも使う言語に関係ないし。
714 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:48:00 ] >>710 は何で偉そうなの?
715 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 22:59:27 ] >>703 JavaのCloneableは失敗作 コピーコンストラクタでおk 詳しくはEffective Javaを参照
716 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:04:06 ] 英語すら読めないならjavaなんぞ無理だな
717 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:07:57 ] 海外で暮らしてた俺ならJavaは余裕ってことか?
718 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:11:16 ] アフリカ辺りですか?
719 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:12:40 ] いや。韓国ですOrz
720 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:36:39 ] ・・・
721 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 23:59:27 ] 英語できるような賢い子がなんで底辺プログラマなんてやってんの?
722 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:02:59 ] でも辞書引きながらでも英語よまないと情報全然足りないじゃん
723 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:04:10 ] アメリカ行けば英語できるのに底辺の仕事やってる奴が掃いて捨てるほどいるぞ。
724 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:05:09 ] 今時、英語も読めないんなら底辺プログラマーすらやってられないのよ。
725 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:06:12 ] その前に日本語勉強して下さい^^;
726 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:07:10 ] >>718 イギリスです
727 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:14:26 ] >>724 で、英語も出来て月給はいくらもらえるんですか?
728 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:25:53 ] >>699 メソッドはクラスがロードされる時だろうね。
729 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:46:37 ] >>708 ゲームって(もちろんものによるけど)結構特殊なので、Javaを学ぶ目的には あまり適してないと思うんだけどね。 例えばゲームループって呼ばれる手法、WindowsSDKを生で使う場合には 普通にGUIのアプリを作るにも似たようなことするんだけど、 Javaで同じことする場合にはライブラリが隠蔽してくれてるので気にする必要なかったりとか。 で、入門書にはそういうゲームに特化したテクニックはあまり書いてないだろうし、 普通のJavaの使い方はそれとは別に覚える必要があると思うし。
730 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:54:40 ] >>704 CommonsのLangにそういうのあるみたいね。使った事ないけど。 commons.apache.org/lang/api-release/org/apache/commons/lang/SerializationUtils.html#clone (java.io.Serializable)
731 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:56:49 ] ゲームってのは、言語+英語+数学がある程度できないと無理。 javaとかc#とかライブラリ的なところはあまり重要でない。
732 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 00:58:29 ] 何故英語?
733 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:02:53 ] 英語英語言う奴とコミュ力コミュ力という奴の中身はだいたい同じ
734 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:02:56 ] ゲームのテクはほとんど英語で書いてある。 実際は、業務アプリの数十倍の努力が必要。
735 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:10:22 ] まあ、英語に比べれば Java なんて 1000倍易しいな。 で、Java に馴れるには、まずは List や Map をごちゃごちゃとこねくり回すような題材がいいな。
736 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:14:14 ] で、数十倍の努力してお幾ら稼いでるんですかね。
737 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:15:09 ] 海外のサイトから情報が汲み取れないバカのためにここがある
738 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:15:15 ] Javaはチュートリアル(英語)で挫折するかどうかだろ。 それで挫折するようなら見込みないし素直にC#(かVB)にしろ。
739 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:18:08 ] 英語英語言ってる奴が日本語読めない事はわかった
740 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:19:18 ] オブジェクト指向の本はJAVAの方が揃っているから JAVAのほうがいいと思う
741 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:20:58 ] 低学歴+底辺無能+日本人は、C#(マイクロソフト)を使ってIT土方として一生汗を流してればよろし。
742 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:22:36 ] 僻みっぽいスレだな
743 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:30:13 ] >>741 在日乙
744 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 01:37:11 ] >>741 みたいな奴って、どの板にもいるね ゴキブリみたいにいっぱい繁殖してるの?
745 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 02:08:16 ] >>705 すみません。よくわかりません。 Object型にキャストしたところでObject#cloneはprotectedだし、なんらかのcloneを呼べる型にしないとダメなのでは >>707 それも同等の問題でできあませんね >>706 Shapeならそれで済みますね。new Area(Shape型)で >>715 失敗作ですか・・・今回のディープコピーでの手こずりでJavaをちょっと嫌いになりました。好きだったのに・・・ 皆さんありがとうございました。 結局今回は、インスタンスの型がある程度絞られていたのでめんどかったけど、>>703 の方法で実装しました。
746 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 02:11:09 ] >>744 ゴキブリにはコンバットがよく効く コンバット置いてから俺の部屋でゴキブリを見たことがない
747 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 02:58:46 ] >>715 見てEffectiveJava読み直したんだけど、コンパイル時に型が決まってないと駄目だとか protectedだからリフレクションで云々とか、正に>>703 が直面してる問題がそのものだね。 ちなみにリフレクション使うんだったらやりたいことはこうかな? Method method = Object.class.getDeclaredMethod("clone", new Class[] {}); method.setAccessible(true); Shape cloned = (Shape) method.invoke(shape, new Object[]{});
748 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 03:45:21 ] PHPでは $className = "Foo"; $obj = new $className(); とするとFooインスタンスを作成することができるのですが Javaで同じようなことをしたい場合どうしたらいいのでしょう? String className = "Foo"; Foo obj = new className(); //これでは当然無理です
749 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 04:26:42 ] String className = "Foo"; でString型の"Foo"という文字列を持ったインスタンスが生成される んだけどPHP知らないからすごい別次元臭がする
750 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 05:38:41 ] >>748 Class.forName("Foo").newInstance();
751 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 06:14:37 ] www.klab.ai.kyutech.ac.jp/~yatti/sunspot/index.php?%E5%8A%A0%E9%80%9F%E5%BA%A6%E3%82%BB%E3%83%B3%E3%82%B5%E3%82%92%E4%BD%BF%E3%81%86 こっちのSunSpotの加速度センサのプログラムを少し変えたのですが、うまく動きません。 Stateクラス、 public class State { int state = 5; public void setState(int state){ this.state = state; } public void callState(){ //このstateが1と0になり続ける状態を作りたい… System.out.println("come :"+state); } } を作って、LEDが点灯している、していない状態を管理したいのです。 ↑のWikiのLEDFlash.javaの public void thresholdExceeded(IAccelerometer3D accel, int axis, double val, boolean relative) { //閾値より高い値ならばLEDを青色に点滅させる 以降のif文の前者がLEDを点灯させる、else以降がLEDを消灯させるプログラムです。 これは閾値を超えた時だけ呼び出されます。 このifの点灯させる所にst.setState(1);消灯させる所にst.setState(0);を書いても、超えてる時はちゃんと1と0になってるんですが、 放置したら(閾値を超えてない状態)デフォルトの数値のままになってしまいます。(つまり5) 確認はAccelerometerTest.javaクラスの加速度の測定をしているスレッドでst.callState();をして確認をしています。 AccelerometerTest.java、LEDFlash.java、どちらのクラスでもState st = new State(); と書いてるのがマズいんでしょうか…だとしたらどうしたら良いんでしょうか?
752 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 07:04:47 ] 2000年頃から英語やれって云う人はいた。 ttp://piza.2ch.net/test/read.cgi/tech/971960169/132 今は入門書もあり出版や校正する人以外はどうでもいいかな。 >>751 のような制御は知らん。
753 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 07:24:46 ] >>750 すげー
754 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 09:13:30 ] 基本の演算処理ですけど int a =5; int b =12が宣言されているのですが (a<=b),(a<b)&(a>b),(b%a),(a!=b),(++a)*bの実行結果を求めたいのです。
755 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 09:50:29 ] 勝手に求めてくださいよそのの程度
756 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 12:36:14 ] >>751 > 放置したら(閾値を超えてない状態)デフォルトの数値のままになってしまいます。(つまり5) つまり放置しなければいい もしくは放置したことを感知できればいい やりかたはしらない
757 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 12:45:10 ] >>751 わかったかな?
758 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 13:21:14 ] >>751 wikiじゃなくて発売元に聞いてサポート受けたら?
759 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 13:55:00 ] >>751 コンストラクタで現在の状態(0か1)を初期値として与える必要があるんじゃないの? 言葉通りしきい値超えないとコールバックされないんでしょ
760 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 14:02:55 ] >>751 もしも〜し
761 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 14:05:21 ] > thresholdExceededメソッド > 加速度センサが閾値を超えたときに呼ばれるメソッド. ってあるからStateの初期値は閾値を超えてない状態を与える必要があるのでは。 てか5って何か意味あるの?
762 名前:デフォルトの名無しさん [2009/12/21(月) 18:43:44 ] >>751 どうなの?
763 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 18:56:53 ] ここってサーブレットの話題とかでもおkですか?
764 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 19:01:57 ] ばっちこーい
765 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 19:03:59 ] ぬふぅ
766 名前:デフォルトの名無しさん [2009/12/21(月) 19:06:44 ] >>679 ほとんど英語のドキュメントとチュートリアルで覚えましたね
767 名前:デフォルトの名無しさん [2009/12/21(月) 19:07:46 ] >>763 OK 専門分野にしてる人多いです
768 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 19:09:29 ] EE6のCDIについて草案ではなく、リリース状態の仕様でチュートリアルを書いてるサイトはないですか?
769 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 00:15:43 ] 引数に「Hoge.class」とClassを渡す事がありますが 何に使っているんですかね? 型の比較?
770 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 00:32:00 ] >>769 ・インスタンス化を遅延。(newInstance/getConstructor) ・リフレクションで動的にメソッドを呼び出し/フィールドアクセス。(getMethod/getField) ・クラスオブジェクトをキーにしてファクトリを選択。(Mapで対応付け) ・クラス名やパッケージ名を文字列でげっと。 とかかな。割と頻繁に使ってる。
771 名前:デフォルトの名無しさん [2009/12/22(火) 01:58:09 ] >>746
772 名前:769 mailto:sage [2009/12/22(火) 09:59:47 ] >>770 thx
773 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 10:21:29 ] javax.accessibilityって何をやるクラスなんですかね? javadocを読んでもパッと来ないんですが
774 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 11:17:19 ] 目が見えない人用のスクリーンリ−ダーとか点字ディスプレイとか音声入力とかなんかそういう類の 詳しくは知らん
775 名前:172 mailto:sage [2009/12/22(火) 11:35:57 ] >>773 私も初めて見たのですが。 普通アクセシビリティっていうと、障害者の操作補助とかそういうイメージ。 目の見えない人のための音声読み上げ機能とか。 普段画面で行う入出力(テキストを読む、リンクをクリックする、みたいな)を 別の手段で提供するための標準化インタフェースだったりヘルパクラスだったりする、のかな? mediacast.sun.com/users/akihito/media/Java_Accessibility.pdf に日本語の資料ありますね。
776 名前:773 mailto:sage [2009/12/22(火) 12:04:26 ] AccessibleContextってクラスがあるんですが、このクラスが属しているパッケージなので気になりました JLabel#setText()を読んでいたらAccessibleContextが出てきたのですが、さっぱりわかりませんでした このインスタンスはJComponentのフィールドにprotectedで宣言されています
777 名前:デフォルトの名無しさん mailto:sage [2009/12/22(火) 14:18:10 ] 障害者用の補助装置をjavaから制御する場合の話だからそういう開発者以外関係ない。 AWTに口だけ公開しときますよって話だと思えばいい。
778 名前:デフォルトの名無しさん [2009/12/22(火) 15:37:36 ] >>746
779 名前:デフォルトの名無しさん [2009/12/23(水) 00:46:54 ] java.awt.DesktopでDesktop.getDesktop().browse(homePageUrl);を使いたいのですが、 java.netURIにおいて、String型のテキストをURL型もしくはURI型に 追加するには何を使えばいいのでしょうか? homepage.jp/ というURI型のものに、 abcd というString型の文字列を変換したものをくっつけて、 homepage.jp/abcd という表示をbrowse(homePageUrl)で行いたいのです。 そのString型→URI型の変換でつまづいています…。 よろしくお願いします。
780 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 00:58:26 ] 普通に new URL(filename+"abcd"); でムリ?
781 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 02:39:06 ] URI クラスの resolve(String) を使うのかな?多分
782 名前:デフォルトの名無しさん [2009/12/23(水) 09:36:34 ] terai.xrea.jp/Swing/MidiSystem.html 同じPCでこれが鳴る場合と鳴らない場合があるんですが...
783 名前:デフォルトの名無しさん [2009/12/23(水) 10:05:50 ] >>780 ムリみたいです…。 >>781
784 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 10:56:57 ] >>779 URI a = new URI("www.google.co.jp/ "); URI b = new URI(a + "search?q=java"); Desktop.getDesktop().browse(b); ふつうにいけないか?
785 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 11:11:14 ] >>779 URI uri = new URI("homepage.jp/ "); URI newuri = new URI(uri.getScheme(),uri.getHost(),"/abcd",uri.getFragment()); System.out.println(newuri.toString()); という意味?
786 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 12:12:14 ] ( ^ω^)大量
787 名前:デフォルトの名無しさん [2009/12/23(水) 16:38:55 ] >>779 ですが、 お答えくださってありがとうございました。 >>781 さんのヒントから色々探してみました。 URL型でURL取得するのでURL取得→.toURI→.resolve(string)で解決できました! resolveだけに…w どうもありがとうございました^^
788 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 23:20:55 ] いくつかの重い処理をするにあたって、割り込みするコードについて質問です。 現在では、Threadのrunメソッドで、 try{ 重い処理1 if(interrupted())throw new InterruptedException(); 重い処理2 if(interrupted())throw new InterruptedException(); 重い処理3 } catch (InterruptedException e){ } という感じにしているんですが、結局ジャンプ処理なので汚いコードだと感じています。 こういう場合にはどうするべきでしょうか? よろしくお願いします。
789 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 23:59:05 ] JComponent#setOpaque()のソース public void setOpaque(boolean isOpaque) { boolean oldValue = getFlag(IS_OPAQUE); setFlag(IS_OPAQUE, isOpaque); setFlag(OPAQUE_SET, true); firePropertyChange("opaque", oldValue, isOpaque); } なんで、firePropertyChange("opaque", oldValue, isOpaque);と書く必要があるのですか? firePropetyChange()でイベントを発生させなくても、普通にメソッドを呼び出した方が楽じゃないですか
790 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 00:14:04 ] うん? addPropertyChangeListenerで登録されたリスナ全員にプロパティの変化を伝えなきゃいけないからでは? 普通にって、何のメソッドを呼ぶの?
791 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 01:30:41 ] >>782 ローカルにjar保存してコマンドプロンプトから実行してみれば? 例外とか出てるの見れば理由わかるのでは。 >>788 自分だったらコマンドパターン適用するかも。 重い処理Xをそれぞれ別クラスにして、それらの共通スーパクラスで重い処理メソッド呼んでその後中断判定する。
792 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 02:27:31 ] アクセス修飾詞なんですけど、どういう状況で使い分けたらいいかわかりません 教えてください
793 名前:デフォルトの名無しさん [2009/12/24(木) 02:43:40 ] アプレットのプログラムについて質問です。 内容はボールを反射させて動かす(ピンボールのような)プログラムです。 g.setColor(Color.red); g.fillOval((int)(this.x2-3),(int)(this.y2-3),6,6); このようなプログラムが組まれており意味してるものは動かすボールの色と大きさを指定しているのは理解できるのですがこれでなぜ色と大きさが指定できているのか細かい部分がよくわかりません。 なぜこれで色と大きさを指定できるのでしょうか?
794 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 02:57:21 ] まさにそういう用途のメソッドだと思うのだけれど。 java.sun.com/javase/ja/6/docs/ja/api/java/awt/Graphics.html#setColor (java.awt.Color) java.sun.com/javase/ja/6/docs/ja/api/java/awt/Graphics.html#fillOval (int, int, int, int)
795 名前:デフォルトの名無しさん [2009/12/24(木) 03:08:15 ] このサイトに書いてあるアルゴリズムを教えていただけないでしょうか…? お願いします
796 名前:デフォルトの名無しさん [2009/12/24(木) 03:31:33 ] すいません、サイトを貼るの忘れてました oraclesqlpuzzle.hp.infoseek.co.jp/java/java-3-6.html お願いしますm(_ _)m
797 名前:デフォルトの名無しさん [2009/12/24(木) 03:48:41 ] >>793 gの色をセットします(赤色に) ってのは理解できるべ? g.fillOval(〜,〜,〜,〜) ってのは www.tohwa-u.ac.jp/~kodama/java/3_oval.html みてみよ。 というか、そういうものだ、ってここは思わないと進めないレベルだぞ。 とりあえず、.setColorで色決めて、.fillOvalで塗りつぶされた円を描くコマンドだと思いなさい。
798 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 04:30:27 ] >>795 ただの総当たりにみえますが。 2回目以降は前回の手数を 越えるものは総当たり条件から外してるみたいだけど これで最適手順が見つかる保証は 無いでしょうね。
799 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 04:35:20 ] あ、最適解云々は勘違いしてたので忘れて
800 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 06:09:34 ] >>788 ジャンプするためだけに例外を投げるのが邪道ってこと? try-catch の中身をメソッドとして独立させてみては /** * @return 中断されずに処理を終えたかどうか */ void process() { 重い処理1 if (interrupted()) return false; 重い処理2 if (interrupted()) return false; 重い処理3 return true; }
801 名前:800 mailto:sage [2009/12/24(木) 06:13:33 ] >>788 を読み返してみたら 質問の意図と違ってたかもしれん すまん
802 名前:782 mailto:sage [2009/12/24(木) 08:47:31 ] >>791 jarファイルをコマンドプロンプトから実行しても特に例外などは出ませんでした。 ちょっと>>782 の説明が足りませんでしたので補足しますと JREのインストールフォルダ内にある\lib\audioフォルダにsoundbank.gmがあると 音は鳴るんですが変な音質なんです。 逆にsoundbank.gmが無い場合は、正常な音質で鳴る場合と全く鳴らない場合がありますが、 確実に正常に鳴らす方法はありますでしょうか。
803 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 10:11:02 ] ありますとよいですね。
804 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 10:37:46 ] >>802 とりあえず MidiSystem#getMidiDeviceInfo() で取得できる 全 MidiDevice の名前を書いてくれ。 lib/sound.propertiesのコメントでない行も書いてくれ。 WindowsのJREなら少なくともシンセ2つが繋がっているはず。 (Java独自のシンセサイザとWindows内蔵のシンセサイザ) どっちが使われてるかは把握してる? 何度読んでもMIDI関係のAPIは納得いかんとこが多いな…
805 名前:782 mailto:sage [2009/12/24(木) 10:51:48 ] >>804 MidiDeviceの一覧は下記の通りです Microsoft MIDI ?}?b Windows MIDI_MAPPER false Microsoft GS Wavetable SW Synth Internal software synthesizer false Real Time Sequencer Software sequencer false Java Sound Synthesizer Software wavetable synthesizer and receiver true それぞれの3行目のtrue/falseは System.out.println(MidiSystem.getMidiDevice(i) instanceof Synthesizer) の実行結果で、一番最後の「Java Sound Synthesizer」がデフォルトと思います また、lib/sound.propertiesは全てコメント「#」で始まっています
806 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 11:21:42 ] >>792 可能な限り狭いものを使っていれば問題ない。 まずprivateで済ませること。どうしてもダメならprotectedに拡張、そ れでも足りないなら無指定、publicはfinal以外では使わない。
807 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 11:29:31 ] >>792 隠したいなら private 公開したいなら public 設計ミスの継ぎはぎには protected サンプルプログラム用に字数減らしたい場合は無指定で package private
808 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 11:32:05 ] >>806 デフォルトアクセスとprotectedだとデフォルトアクセスの方が制限きつい。
809 名前:804 mailto:sage [2009/12/24(木) 12:05:04 ] >>805 あー…、MicrosoftGS音源のSynthesizerって出てこないんだ… それどころか本物のMIDI音源実機(Roland)も出てこないよー。 Sequencer使わずに自前でReceiverにMIDI信号投げてたんで気づかなかった。すまん。 Sequencerの音色がSynthesizerに依存している以上、JavaSoundしか選べそうにないね。 soundbank.gmってのはJavaSoundのデフォルト音源だと思う。 消しちゃダメー。書き換えるのもたぶんダメー。 Synthesizer.loadAllInstruments()で別の音源と差し替えることは可能と思う。
810 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 12:23:31 ] javaで画像処理って定番は何になるのでしょうか? CだとOpenCVやImageMagicがありますが
811 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 12:48:52 ] >>809 あまり関係ないとおもうけど、確か公式で高音質盤のサウンドバンクが提供されてたよ デフォルトで含まれているの最低音質で、3段階くらいあったとおもう。
812 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 13:19:22 ] >>805 MidiSystem.getSequencer()で得られるシーケンサはデフォルトシーケンサだからデバイスの取得から自分でやってみれば? プラットフォーム側で無効化されてるデバイスも叩き起こせる仕様だから自分でデバイス拾って開けばいい。
813 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 14:19:45 ] >>810 普通ならそれをjni,jna
814 名前:782 mailto:sage [2009/12/24(木) 14:58:33 ] >>812 「Real Time Sequencer」にしましたが soundbank.gmがあっても音が全く鳴らなくなりました。 「Microsoft MIDI ?}?b」は認識されず 「Microsoft GS Wavetable SW Synth」 はClassCastExceptionが発生しました。
815 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 15:41:08 ] >>806 >publicはfinal以外では使わない そういうものなんですか? これって割と常識として知られてること?
816 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 15:42:22 ] メソッドの話?
817 名前:782 mailto:sage [2009/12/24(木) 15:52:15 ] 別バージョンのJREを何回か再インストールしているうちに いつの間にか正常に音が鳴るようになりました。 音が鳴らなかった真の原因は未だに分かりません...。
818 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 15:54:51 ] >>815 >>806 はでたらめなので心配御無用
819 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 16:22:17 ] java.util.prefs.Preferencesで、userNodeには問題なくキーとデータを登録できるのに、 systemNodeには登録できず警告が出る。OSはWin。 という症状が、特定マシン上だけで起きるのだけど、どんな原因が考えられますかね? 自分や知り合いのマシンでは問題無いのに、知らない人のマシンでは起きているのです。 それからJREを再インストールしてもこの問題は解決しない。
820 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 16:25:11 ] アクセス指定子はクラスの場合、メソッドの場合、フィールドの場合で ずいぶん事情が違う。 >>806 はフィールドの場合に見える。
821 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 16:54:40 ] public fieldが許されるのは小学生までだよねー(AA略
822 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 16:59:27 ] >>810 JREにもれなく付いてくるJava2Dでは不足?
823 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 17:06:04 ] >>819 その方、レジストリの管理権限はあるのかしら。 HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Prefs に読み書き可能なのか、レジストリエディタかなんかで確認した方が
824 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 18:23:37 ] >>823 嫌です
825 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 18:36:28 ] >>817 シーケンサに命令溜めた後ちゃんとシンセサイザに送ってる?
826 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 19:30:07 ] >>823 アカウントの権限を確認してもらったけど、Adminとのことでした。
827 名前:782 mailto:sage [2009/12/24(木) 19:40:09 ] >>825 Javaのmidiに関しては殆ど詳しくないので ソースを挙げて頂ければ有り難いです
828 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 19:50:38 ] >802 そもそも「変な音質」とか「正常な音質」ってどういう話なんだ。 たとえば拾い物のYAMAHA用MIDIファイルを別音源で聞いて、それが変か正常かは主観レベルの話なんだが。
829 名前:782 mailto:sage [2009/12/24(木) 20:50:05 ] >>828 「変な音質」というのは誤解を招く書き方でしたね、訂正いたします 他のプレイヤーで聞いた場合と同じかどうかということです
830 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 21:14:10 ] 情報小出しウザイ そろそろ失せろ
831 名前:デフォルトの名無しさん [2009/12/24(木) 22:52:35 ] >>830 イブで女の子と一緒に過ごせないからってカッカすんなよwww
832 名前:デフォルトの名無しさん [2009/12/25(金) 00:04:14 ] イブで女の子と一緒? 外国の宗教とはいえ神様に失礼すぎw
833 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 01:38:21 ] 今年のクリスマスは中止になったって聞いてたけど MIDIってのは環境とかプレイヤーによって音が変わるものじゃないのか。
834 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 01:39:53 ] 変わるよ
835 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 01:50:19 ] 昔のwin95の音源はひどかった なつかしい
836 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 02:01:38 ] むしろFM音源のほうが好きだった
837 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 11:05:40 ] だな
838 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 13:34:19 ] MIDIはWindows98あたりから Windows標準でサポートされたが Windowsのがあまりに低音質だったので 避けられるようになったのは有名 それ以前からあったWinGrooveとかのほうがマシだった
839 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 14:03:48 ] 打楽器やベースは結構使える音だと思うけどなー
840 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 14:28:42 ] あの楽器?
841 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 15:44:12 ] FM音源が好きなんだが
842 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 17:10:01 ] YAMAHA万歳
843 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 17:13:14 ] FM音源とかファミコン音源とかが好きなんだが
844 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 17:19:21 ] スーパーファンファジーゾーンは神
845 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 17:21:18 ] FM音源の楽器音声の再現度はほぼ無いから、再現という使い方は出来ないんだろうけど FM音源の音が俺は好きだ
846 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 20:00:39 ] FM音源は確かに好きだけど、FM音源を流用したおざなりなMIDI再生はいただけない。 PC9801-86とSoundBlaster16の両方ともドライバの出来は良くなかったな。 ドライバでどうこうなる話でもないのかも知れないが。
847 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 20:05:01 ] javadocの特殊な文字化けについての質問です。 マルチバイト文字を値に持つ定数のjavadocに{@value}を使用したところ、 作成したjavadocのvalue部分がutfのコード表記に化けてしまいます。 -encoding -charsetの指定は効果なしでした。 解決策を御存じの方がいらっしゃいましたらご教示ください。 例 [ソース] /** 定数 {@value} */ public static final String HOGE = "ほげ"; [javadocの表示例] 定数 ("/uaafd/u7ca2/u42ce") [期待する出力] 定数 ("ほげ")
848 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 00:51:25 ] OpenTypeFontを読みたいのですが、うまくいかないので教えていただければ幸いです。 OpenTypeはTrueTypeの一部ということで次のようにしましたが例外がでます。 Font.createFont(Font.TRUETYPE_FONT, new File("***.otf")); 当然といえば当然なんですが。どうやって読み込めばいいんでしょう。
849 名前:デフォルトの名無しさん [2009/12/26(土) 05:06:51 ] JAR内の /a/b/SapmleClass.class から 同じJAR内の /resources/image.gif にアクセスしたいのですが、 SapmleClass.class.getResource("../../resources/image.gif") だとnullが返ってきます。 取り方が間違っているでしょうか?
850 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 06:00:41 ] java soundもあるしアクセスは用意されてるよね。 それならOSSでプロジェクト組んで新音源を開発してもいいんじゃない? いくらソフト音源だとしても、実装はsse,gpuとか使うからJavaにはあまり関係ないけど。 コーディック開発とはまた違った意味で面白いんじゃないか。
851 名前:デフォルトの名無しさん [2009/12/26(土) 10:14:17 ] JARのルートからのパスでアクセスできました。 SapmleClass.class.getResource("/resources/image.gif")
852 名前:デフォルトの名無しさん [2009/12/26(土) 12:32:11 ] いくつかのWindowsアプリケーションに、「右クリックメニュー」というものが 実装されていますが、あれはSwingでは(JMenuなどと違い)サポートされていないのでしょうか。
853 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 12:35:27 ] JComponent#setComponentPopupMenu
854 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 12:45:49 ] Adobeの次はJava。GENOウイルスの第二波が来るぞー(^o^)ノ tsushima.2ch.net/test/read.cgi/news/1261786925/
855 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 13:03:38 ] >>853 ありがとうございます。
856 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 13:05:17 ] >>855 俺へのお礼レスはいらない
857 名前:デフォルトの名無しさん [2009/12/26(土) 13:14:49 ] >>842
858 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 13:30:09 ] >>851 よそ様のパッケージも使うつもりがあるなら/resourcesは使わない方がいいぞー。 /a/b/resourcesじゃだめ?
859 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 14:49:22 ] struts2のconventionプラグインって import com.opensymphony.xwork2.ActionSupport; ってやらなくても命名規約さえ○○Actionになって○○actionsっていうパッケージにはいってれば 見つけてくれるんだと認識してたけど実際はしてくれない xwork2.ActionSupportをインポートしないと認識してくれない conventionプラグインは結局これインポートしないといけないの?
860 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 15:18:26 ] >>859 △△もっとStruts2の良さを教えてくださいSsssion6 pc12.2ch.net/test/read.cgi/tech/1217536023/
861 名前:849 mailto:sage [2009/12/26(土) 20:55:35 ] >>858 アドバイスありがとうございます。 使ってる他のJARにも/resourcesがあると、どっちか特定できないということでしょうか? /a/resourcesに変えることにします。
862 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 11:34:32 ] 同名のリソースが複数あると最初に見つかったURLが返ってくるので、かぶりらないような名称にした方がいいよ
863 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 12:48:45 ] >>856 ケッ
864 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 14:39:01 ] 以上、暇人でしたっ
865 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 15:17:50 ] まじなんかすごい時代だよな 色々と 天才達の手によってここまできたが すごい話だぜ
866 名前:デフォルトの名無しさん [2009/12/27(日) 16:14:17 ] >>865 まあ僕たち天才が行うべき使命ですので凄いとかはあまり意識していないのですが
867 名前:デフォルトの名無しさん [2009/12/27(日) 16:15:46 ] 何が凄くて何が時代の? で、何の天才で例えば誰のこと?
868 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:30:28 ] そういう疲れる話し方やめてくれる?
869 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:33:07 ] >>865-868 年末だしとりあえず金くれ
870 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 16:34:43 ] 俺にもおくれ
871 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 23:41:16 ] 質問させてください。 JavaSE6のjavax.xml.bind.SchemaOutputResolverクラスの Javadoc(下記URL参照)を読んでいたら、こんな記述を見つけました。 「互換性を損なうことなく将来のバージョンを発展させることができるようにするため、 これはインタフェースではなくクラスになっています。」 java.sun.com/javase/ja/6/docs/ja/api/javax/xml/bind/SchemaOutputResolver.html 「互換性を(〜中略〜)にするため」とありますが、インターフェースを定義し、 将来のバージョンでも同インターフェースを必ず実装することにより 互換性が維持できると個人的に思い込んでいるため、納得できません。 クラスでなければならなかった理由をご教授ください。 よろしくお願いします。
872 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 23:43:42 ] 将来的なバージョンでインターフェースにメソッドが増えた場合の事じゃない? インターフェースだったら、自分で実装してるクラス全部書き換えるけど、 継承元がクラスだったら、自分で実装してるクラスは書き換えなくてもすむかもしれない。
873 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 23:45:58 ] 最初のバージョンで次のようなインタフェースを定義しました interface A { void foo(); } そこでとあるアプリケーションがこのインタフェースを実装して使うことにしました class B implements A { public void foo() { ほにゃらら } } 新しいバージョンでインタフェースが拡張されメソッドが増えました interface A { void foo(); void bar(); } 先ほどのアプリケーションを新しいバージョンで実行すると bar() が定義されていないので NoSuchMethodError
874 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:11:56 ] wait と Thread.sleep ってどう違うの?
875 名前:871 mailto:sage [2009/12/28(月) 00:14:34 ] >>872-873 回答ありがとうございます。 将来のバージョンで新しい(非抽象)メソッドが追加された場合は、 追加実装が不要なため、インターフェースよりクラスの方がたしかに有利ですね。 以下、チラ裏 ただ、多重実装ができなくなるなど、 クラスで設計したことによるデメリットと比較すると微妙な気がします。 となると、どちらを選択するかはケースバイケースになるのでしょうか? そうなると、今回の「ケース」は何と表現(説明)すればいいのでしょうか?
876 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:20:52 ] まだ完成度が低いなと思ったらクラス 既存のクラスに付け加える可能性が高いなと思ったらインターフェース どっちもと思ったら、天秤にかけるしかないんじゃないかなあ
877 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:25:05 ] いや、使うときに、 TypeABC hoge; この左側を、Interfaceで使う場合がおおいか、 実装クラス名で使う場合がおおいか、 じゃねーか?
878 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:25:42 ] 本当は実装したいことがあるのでinterfaceじゃないんだけど、 時間がなくて実装できてません。 今の姿を見ればinterfaceで良いように見えるんだけど、真の姿はこんなんじゃないんです。 ということが言いたいんじゃ。
879 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:26:35 ] interface A { } class A001 implements A { } class B { } class B001 extends B { } A MyA として使うなら、Interface B001 MyB として使うなら、クラス じゃん
880 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:27:38 ] >>878 おお、それだ! だから、本質はクラスなんだよって事だね。
881 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:28:11 ] リファクタリングしていって interface になる、ってことは結構あるけど、 リファクタリングしていくと interface がなくなるなんてことはあるんかしらん。
882 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:29:29 ] >>874 waitはnotifyで起こせる sleepはnotifyで起こせない interruptを使えばどちらも起こせるが、起こしたい対象のwait/sleep以外でも ところ構わず起こしてしまうので使い方が難しい ところ構わず起こしたい場合には便利 あとwaitはspurious wakeup してしまうことがある
883 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:44:15 ] >>874 Thread.sleepは、目覚まし時計を用意して、自分で寝て、自分で起きる。 基本的に自スレッドが時刻と同期するために使用する。 waitは、モーニングコールを依頼して、自分が寝て、他人(別スレッド)に起こしてもらう (誰にも起こしてもらえなかった場合に、タイマーで自力で起きることも可能)。 基本的に自スレッドが別スレッドと同期するために使用する。
884 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 00:56:12 ] >>883 モーニングコールって、普通は時刻を指定して依頼するから、 目覚ましをセットするのと変わらないんじゃ。 「そっちの仕事が終わったら起こしてね」と伝えてから寝る、 といったたとえのほうが正確かも。 重箱の隅みたいですまんね。
885 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 01:32:28 ] >882-884 なるほど。 notifyを使う場合はwait Timerみたいな場合はThread.sleepって感じなんだな ありがとう
886 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 01:58:58 ] >>885 俺へのお礼レスはいらないって…
887 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 02:05:38 ] ?
888 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 03:38:25 ] 使われ方を想定せずにインタフェースの粒度なんて決められるわけない。 ライブラリのインタフェースはエスパーと妥協の産物
889 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 07:55:07 ] >>873 というよりも、abstract class とか使ったことないでしょ。
890 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 08:01:30 ] >>883 You should wake up from your deely sleeping.
891 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 14:35:34 ] ?
892 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 16:09:46 ] You have to shave up you are sheep or theaf
893 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 22:34:22 ] 何語だ?米語?deely? theaf? deeplyかなぁ?
894 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 07:39:51 ] >>893 それ、指摘するまでまったく気にしてないで読んでたw
895 名前:デフォルトの名無しさん [2009/12/29(火) 08:33:31 ] $ appletveiwereer HalloJava & そんなコマンドはありませんorz
896 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 08:55:35 ] なにそのイェェェェァァァ系コマンドw
897 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 09:00:00 ] 根っからの江戸人ならやりそうw
898 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 10:11:23 ] explorereとかkonquaroroとかbashだとコマンドしにくいよね。
899 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 12:48:05 ] しにくいですね。
900 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 13:33:06 ] 最近Javaの Domain Driven Designってどのフレームワークが流行りなの?
901 名前:デフォルトの名無しさん [2009/12/29(火) 15:02:45 ] ................. どのフレームワークが流行りなの!?
902 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 15:27:09 ] 俺はドメインモデル懐疑論者だからシラネ
903 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 15:29:03 ] ドメインモデル VS トランザクションスクリプト pc11.2ch.net/test/read.cgi/php/1241341332/ こっちへどうぞ。
904 名前:デフォルトの名無しさん [2009/12/29(火) 16:30:21 ] 【言語比較】2chではCとC++>>JAVAって人が多い。しかし本当にそうか?ちなみに2chはperlが使われてる tsushima.2ch.net/test/read.cgi/news/1262071701/ ニュース速報に立った
905 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 17:09:45 ] ん?昔はread.cだったと思ったが?
906 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 17:38:16 ] CとC++を別にしてデータとったらどうなんだろうな
907 名前:デフォルトの名無しさん [2009/12/29(火) 21:11:30 ] >>746
908 名前:デフォルトの名無しさん [2009/12/30(水) 00:11:17 ] 【言語比較】2chではCとC++>>JAVAって人が多い。しかし本当にそうか?ちなみに2chはperlが使われてる tsushima.2ch.net/test/read.cgi/news/1262071701/ ニュース速報板です
909 名前:デフォルトの名無しさん [2009/12/30(水) 01:00:00 ] アイちゃんは大丈夫か!? 【生物】ニホンザル謎の死、京大霊長研で相次ぎ15頭 gimpo.2ch.net/test/read.cgi/scienceplus/1262001115/
910 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 01:36:23 ] ┌─┐ ┌─┐ │●│ │●│ └─┤ └─┤ ∧∧ ∩ ∧∧ ∩ Java! ( =゚-゚)彡 ( =゚-゚)彡 Java! ┌─┬⊂彡┌─┬⊂彡 |●| |●| └─┘ └─┘
911 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 13:26:22 ] 整数値を読み込んで5で割れるか判定するコードなんですが いろいろグダグダなんですが bの代入のところでエラーになる理由がわからないです。 後半のifが変なのは無視してください。 // 整数値を読み込み5で割り切れるか判定する。正以外の数値にはコメントをだす。 import java.util.Scanner; class En35 { public static void main(String[] args) { Scanner stdin = new Scanner(System.in); System.out.print("正の整数値:"); int a = stdin.nextInt(); int b = a % 5; if (b == 0) System.out.println("その値は5で割り切れます"); else if(b != 0) System.out.println("その値は5で割り切れません"); else System.out.println("正でない値が入力されました"); } }
912 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 13:32:18 ] >>911 事故解決しました。 >>1 にある全角スペース〜 でした。
913 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 16:22:03 ] 結局、JDK7ではクロージャーが導入されるみたいですが クロージャーとラムダ式って何が違うんですかね?
914 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 18:01:55 ] >>913 俺も理解が乏しいんで一応書いてみたが、間違ってたら訂正してください クロージャもラムダも関数を変数の値にできることを前提とした機能だけど クロージャーは関数内で定義、生成するもので、定義、生成された関数内のローカル変数を参照できるって機能が強調されるイメージ この参照できるっていうのは関数から抜けた後にもローカル変数のメモリが開放されないまま残り、実行時に参照できるってこと ラムダ式は関数を値のように扱えて、例えば 関数の引数に関数を渡す 関数の引数を決めたものを変数の値にする 関数を合成したものを変数の値にする(関数a.bを合成すると実行時b(a())と実行したことになる) みたいな機能があることが強調される
915 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 18:08:50 ] きもい
916 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 18:17:22 ] わからないからですね^^; わかります^^;
917 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 18:22:51 ] 違いは知っていましたが、面白そうだから質問してみました。 それでは皆様、また逢いましょう
918 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 20:21:11 ] もう来なくていいよ^^
919 名前:デフォルトの名無しさん [2009/12/30(水) 20:22:14 ] >>910 >>909
920 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 22:38:51 ] クロージャはエンクロージングな関数で ラムダは変数置換と関数定義をそれぞれ一つのみ持つ関数。ただし自分を含む関数を定義できない。 つまり両方あればY(F) = F(Y(F))が表現できる。 が、不完全性定理があるのでequals(lamda, lamda)は表せない。
921 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 22:40:21 ] CでできることはJAVAでもできるのですか。 友人が言うには、「劣化Cだからやんないほうがいい。ジャバでできる特徴的なことは風呂釜掃除くらい」 というのですが。 ポインタが参照になってる メモリの開放と確保は言語レベルでよろしゅうやってくれる Cに比べて実行速度が遅い というのは ググッて分かりました しかしメモリいじりをしなければならないので、最低でもCのようにメモリをいじる必要があります
922 名前:デフォルトの名無しさん [2009/12/30(水) 22:47:20 ] すなおにdotnet(C#)やれ
923 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 22:59:58 ] >>921 > しかしメモリいじりをしなければならないので、最低でもCのようにメモリをいじる必要があります それなら C をやるしかない。
924 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:01:55 ] 前半部分が大昔にあった改変コピペだぞ
925 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:04:22 ] アセンブラコードを別に用意してJavaから呼び出すことできなかったっけ?
926 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:07:28 ] Javaは情報工学やってた人へのプレゼントだな こんなに手っ取り早く完璧な実装のライブラリを呼び出せる言語はない
927 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:17:07 ] >>925 JNIですね。C言語とJava に精通していないと使いこなすのは難しいです。 Microsoft の JavaVM はその点は簡単ですけどね。
928 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:18:33 ] >>927 JNA使えばいいじゃんPosix遵守だから 大抵動くぞ
929 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:19:18 ] JNAもJNIもよくわからんが一緒だろ
930 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:43:09 ] JNAはJNI使ってるっていうだけで一緒じゃないよ。 JNAだととてつもなく簡単にネイティブライブラリにアクセスできる。 型の変換もある程度してくれるし、結構事足りるよ
931 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:45:53 ] 安全なスレッディング メモリ操作 これが好きな奴が使う
932 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 23:50:08 ] ほとんどは、OSのAPI呼びたいとき使うんじゃないの?
933 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 00:36:04 ] え?
934 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 10:53:29 ] システムコール?
935 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 12:49:17 ] Java本体から呼んでないやつはJavaのスレッド管理外、メモリ管理外なので 自分でケアしないと痛い目を見る ので、そういうことが好きな奴でないと扱えないと
936 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 13:00:31 ] 禁忌事項も多いもんなぁ。 www.ibm.com/developerworks/jp/java/library/j-jni/index.html
937 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 13:08:54 ] >>935 そうでもないんじゃね??
938 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 13:20:11 ] >>935 そうでもないそうですよ
939 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 13:32:56 ] >>937-938 嘘つきはよくないなぁ
940 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 13:34:12 ] 俺は全然ケアなんて考えずに使ってるぜ 裏でどうなってるか知らんが
941 名前:デフォルトの名無しさん [2009/12/31(木) 14:00:35 ] jni,jnaを使うならjavaじゃなくてdotnet(VB)にしろ。 そもそもそのアプリは、PCしか考えてないんだろうからdotnetで十分。
942 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 14:29:34 ] なんで、javaはC++を敵視してるんだろ? しかも、速度的な面で
943 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 14:36:02 ] それはお前の脳内設定。
944 名前:デフォルトの名無しさん [2009/12/31(木) 15:11:26 ] linux使ってると分かるけど、monoがある程度実用的になってきたからdotnetでもある程度はいける。 MSとノベルはそれで提携したし。 ただPCだけじゃなくて携帯(グーグル)もいれるならjavaやっとくのをお奨めするが。
945 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 15:44:16 ] MSのOS依存の形態じゃやっぱ使い物になりませんよね
946 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 16:03:35 ] GoogleはGoogle依存の形態で全てやろうとしているからなあ。 オープンで囲い込みですが何か?って感じ。
947 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 17:29:34 ] >>946 gglは共産主義者だし 今EUとアメリカでほぼ黒確定の 独禁法違反になるから無視しておけ
948 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 17:58:30 ] Google 依存が強いところは、気をつけておいたほうがいいだろうな。
949 名前:デフォルトの名無しさん [2009/12/31(木) 18:23:34 ] ニュースサイトにロボット埋め込んで、街は許可なく勝手に撮影、本は勝手にスキャン、コードは盗み放題。 それもただの商業利用でしょ。 国民から徴収してアンテナ立てたりコンテンツ作ってるのに、それを2次販売して商業的な利益を上げてるNTTやNHKみたいなもんじゃないの?
950 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 18:27:42 ] googleは検索以外だとgmail(hotmail)ぐらいしか思い浮かばないし依存になることもないと思うんだが、googleは依存になりそうなサービスを提供してたか?
951 名前:デフォルトの名無しさん [2009/12/31(木) 18:32:18 ] アンドロイドは思ったほどでもないですしね
952 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 18:39:18 ] グーグルの、サンタクロース追跡に便乗した商売にはかなり引いた。 日本、中国(アジア)としてはそういう宗教的(伝説的)なところは理解できない。
953 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 20:37:46 ] enumってなんでfinalないの?設計ミスじゃね?
954 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 20:45:13 ] ミスかもね
955 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 20:45:53 ] >>953 enum のどの部分の事言ってるのかわからんが暗黙で final 扱いになってね?
956 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 20:57:04 ] ほんとだ・・・extendsって書いたときのコンパイルエラーが変だから継承できるかと思ってたすまぬ
957 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 21:25:41 ] 謝ったから許してやる
958 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 21:27:10 ] ああもう年末だ・・・ いいから金くれ
959 名前:デフォルトの名無しさん mailto:sage [2009/12/31(木) 23:26:41 ] enum enum 人間って enum
960 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 00:10:53 ] おっイーナムってよんでんのかー
961 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 00:12:20 ] なぜJDKドキュメントにはEnum#values()が載っていないのだ?
962 名前:デフォルトの名無しさん [2010/01/01(金) 00:26:01 ] おっ新年だ お年玉くれ てかおみくじどうやるんだっけ?
963 名前:デフォルトの名無しさん mailto:sage [2010/01/01(金) 00:28:16 ] >>961 ソース読んでご覧。valuesってメソッドないから。 自動生成されるんかねぇ
964 名前: 【898円】 【大吉】 [2010/01/01(金) 00:34:32 ] ナムナム 金くれ
965 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 19:05:37 ] 高校の宿題で、サーバー役とクライアント役に分けて、プログラム作って、簡易チャットを作っているのですが、分からない点があります。 client1 とclient2が接続されてるとして、server側でclient1が発言したのを、client2側の画面に反映する方法がわからない。(client2の出力ストリームに流し込む方法が・・・分かりません) よろしけれあ、ご教授願えないでしょうか?
966 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 19:13:18 ] 何処の高校?
967 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 19:47:03 ] サーバプッシュでぐぐりなさい 最悪client2からのポーリングでもできるが
968 名前:デフォルトの名無しさん mailto:sage [2010/01/02(土) 20:20:52 ] >>966 勘弁してくださいorz >>967 軽く調べてみましたが、どちらも難しそうですね。。。 しかし、ポーリングのほうがそれでも簡単な気がするので、掘り進めてみます。
969 名前:デフォルトの名無しさん [2010/01/02(土) 20:38:45 ] PHPの、PEAR::Net_UserAgent_Mobileに相当するライブラリなどはありますでしょうか? まぁ、「大体振り分けられればOK」ならそれほど難しくもなくできるとは解っているのですが、もしメジャーなライブラリなどがあるのならそちらを使った方がいいかと思いまして・・・。 何かご存知の方がいらっしゃれば、情報をいただければ幸いです。よろしくお願いします。
970 名前:965 mailto:sage [2010/01/03(日) 10:24:24 ] なにやら、宿題関係の質問はスレ違だったことに気付いたので、java宿題スレに移動します。申し訳ありません。
971 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 15:27:15 ] hello,worldの次に何作れば良いですか? ステップアップ式にお題出してるサイトとか無い?
972 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 15:37:45 ] 1.とりあえず一冊買う 2.とほほのjava 3.javaの道
973 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 16:03:02 ] 画像について質問です。 巨大なBufferedImageに図形などを描画してそれをImageIOでファイルに書き出したいんですが 画像サイズがデスクトップサイズを超え始めたぐらいからOutOfMemoryが出て生成に失敗してしまいます。 大きい画像を使いたい場合何か方法はありますか? jdkは1.6です。 //そういえばImageIOでjpgを保存すると色にセピアみたいになる変換掛かりますよね?どうすれば治るんでしょうか・・・
974 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 16:14:43 ] >>973 VM引数に -Xmx512m とかつけて最大ヒープサイズを大きく取るとか。
975 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 16:36:56 ] デスクトップサイズって巨大かなぁ? 1920x1200x3[byte]として6,912,000[byte]。7MB弱だし。 どっかメモリリークしてないか?
976 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 17:01:27 ] public static void main(String[] args) throws Exception { BufferedImage im = new BufferedImage(1920*2,1200*2, BufferedImage.TYPE_INT_RGB); Graphics2D g = im.createGraphics(); for (int x=0; x<im.getWidth(); x+=10) { for (int y=0; y<im.getHeight(); y+=10) { Color c = new Color((int)(Math.random()*256) ,(int)(Math.random()*256) ,(int)(Math.random()*256)); g.setColor(c); g.drawLine(0, 0, x, y); } } g.dispose(); OutputStream out = new FileOutputStream("test.jpg"); ImageOutputStream ios = ImageIO.createImageOutputStream(out); ImageWriter iw = (ImageWriter)ImageIO .getImageWritersByFormatName("jpeg").next(); iw.setOutput(ios); iw.write(im); out.close(); } これとか問題出る?
977 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 17:20:08 ] >>976 大丈夫でした! どうやら、画像以外にもいろいろやってるからそれらがメモリを圧迫しているようです。 ちなみに出力部分のところはImageIO.write(im,"jpeg","test.jpeg");と何か違うんでしょうか?
978 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 20:17:28 ] >>977 ImageIO.java見ると分かるけど、実はほぼ同じ。 ImageIO.getImageWritersByFormatName("jpeg") がサービスプロバイダの イテレータなので複数の実装があったときに使い分けられる程度。
979 名前: ◆QZaw55cn4c mailto:sage [2010/01/03(日) 21:42:10 ] java.text.SimpleDateFormat の質問です。 codepad.org/n24uZLFz のようなエラーが発生するのですが、何が悪いのでしょうか?
980 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 21:52:15 ] そのエラーメッセージが理解できないという事は、 Javaの言語仕様をきちんと読んでいないだろ。
981 名前: ◆QZaw55cn4c mailto:sage [2010/01/03(日) 21:56:33 ] >>980 なにぶん初学者で、テキストの範囲をちょっと逸脱するとこうなってしまいます。 もうちょっと我慢して教科書を読んでいきます。
982 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:12:21 ] 「スローするにはキャッチまたは、スロー宣言をしなければなりません。」 と丁寧に教えてくれてるもんな。頑張ってこの意味を理解しようね。 俺は面倒がってExceptionでスロー宣言しまくりだけどなー。(小言は聞こえない)
983 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:20:58 ] >俺は面倒がってExceptionでスロー宣言しまくりだけどなー。(小言は聞こえない) catch して捨てるよりはまし。 >>979 みたいな、サンプルプログラムでは、 throw Exception しちゃうのが 結局、一番合理的な解じゃないかな。 catch しても printStackTrac()ぐらいしかできることないっしょ。 コードが読みにくくなるだけで、実用上のメリットがさしてない、 ただ、初心者が、「どこでも throw Exception すればいい」 と思い込んだらちょっとまずいってだけで、
984 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:30:44 ] 一番正しいのは契約プログラミング的な考え方で、前提条件は全て事前チェック しておいて、それに引っかからないモノはそれこそ例外として扱うことじゃないかと 思ってるんだがどうかな?
985 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:35:06 ] 最初は、throw Exceptionされているメソッドを呼び出すときは、呼び出し元もthrow Exception定義しましょうでもかまわないと思う だんだん勉強して、例外についての理解も進めば、throwかcatchかどっちがいいか分かるようになるでしょ ところでそろそろ次スレたてるね
986 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:38:55 ] 次 ★★Java質問・相談スレッド135★★ pc12.2ch.net/test/read.cgi/tech/1262525781/
987 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 22:47:54 ] でも例外に関するエラーメッセージは解りづらい気がする 例外って常用的な日本語だから、慣れないうちはスペルミスでもあるのかと思ってしまう。 さらにExceptionがソースをいくら検索してもみつからないって混乱したり
988 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 23:03:13 ] JAVAをはじめてまだ1週間程の初心者なんですが、 kitten.ace.nitech.ac.jp/ichilab/mech/software/gate/ ここで公開されているアプリと似たものを作りたいと思っています。 それでこのアプリのソースコードが見てみたいんですが、 ソースコードが公開されていないアプリのソースコードを見る方法ってありますか? 馬鹿な質問かもしれませんが教えていただきたいです。 よろしくお願いします。
989 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 23:19:06 ] >>988 >>91 これで一応見ることができる
990 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 23:36:33 ] >>989 ありがとうございます! やってみます。
991 名前:デフォルトの名無しさん mailto:sage [2010/01/04(月) 10:31:42 ] C/C++での「配列のある要素のポインタを関数に渡す」みたいな処理はどうやるのでしょうか? void func(int n, int a[]); int main(void){ int a[] = {1,2,3,4,5}; func(3, a+2); //これの「a+2」 }