1 名前:デフォルトの名無しさん [2009/01/19(月) 11:06:38 ] プログラミング言語Javaに関する質問スレです。 JavaScript, Ajaxの質問は、ここでは受け付けていません。 Web製作管理 pc11.2ch.net/hp/ Webプログラミング pc11.2ch.net/php/ をご利用下さい。 よくある質問 ・「コマンドまたはファイル名が違います」 「'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 「Exception in thread "main" java.lang.NoClassDefFoundError: 」 www.wikiroom.com/java/?path,classpath ・String に == は使うな。equals() を使え。 ・「\12288 は不正な文字です。」 文字リテラル以外で全角スペースは使えません。半角スペースに。 ・その他の質問→「APIのjavadoc見ろ」 前スレッド 【初心者】Java質問・相談スレッド122【歓迎】 pc11.2ch.net/test/read.cgi/tech/1229255937/ 次スレは>>990 あたりで。 過去ログ、関連スレッド、よくある質問とその回答など、 質問をする前に、貴方が見なければならないサイトについての情報は、 下のwikiのページにまとめてあります。 www.wikiroom.com/java/
2 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 12:29:32 ] 2 名前:デフォルトの名無しさん[sage] 投稿日:2008/12/14(日) 20:59:33 **** 関連スレッド案内 **** ■ AWT と Swing は -- Java低速GUI Swing 8 ttp://pc11.2ch.net/test/read.cgi/tech/1227234261/l50 ■ SWT は -- Java 高速GUI SWT 3 ttp://pc11.2ch.net/test/read.cgi/tech/1164877399/l50 ■ NTT DoCoMo の iモード携帯電話用 Java (iアプリ) は -- iモード携帯電話用Java(iアプリ) Part18 ttp://pc11.2ch.net/test/read.cgi/tech/1214192372/l50 ■ DoCoMo 以外は -- CLDC+MIDP+携帯電話用Javaスレッド part 8 ttp://pc11.2ch.net/test/read.cgi/tech/1206017034/l50 ■ 課題・宿題は -- ★★ Java の宿題ここで答えます Part 66 ★★ ttp://pc11.2ch.net/test/read.cgi/tech/1221652206/l50 **** 開発環境が必要の場合は **** ■ J2SE 1.4.0 ttp://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/index.html ■ J2SE 5.0 (1.5.0) ttp://java.sun.com/j2se/1.5.0/ja/ ■ Java SE 6 ttp://java.sun.com/javase/ja/6/ **** 実行環境だけが必要の場合は **** ■ Java ソフトウェアのダウンロード ttp://www.java.com/ja/
3 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 13:33:41 ] // / / パカッ //⌒)∩__∩ /.| .| ノ ヽ / | | ● ● | / | 彡 ( _●_) ミ まピョーん☆ / | ヽ |∪| /_ // │ ヽノ \/ " ̄ ̄ ̄ ̄ ̄ ̄ ̄(..ノ
4 名前:デフォルトの名無しさん [2009/01/19(月) 22:21:44 ] Collection から 任意のオブジェクトの配列に変換する際、 以下のようなプログラムを書くと思いますが、 List<String> list = new ArrayList<String>(); list.add("aaa"); list.add("bbb"); list.add("ccc"); : String[] array = list.toArray(new String[0]); ←(1) System.out.println(array.length); このとき(1)で Collection#toArray() に渡すのは、 以下のどっちが正しいのですか? ・new String[0] ・new String[list.size()] d.hatena.ne.jp/rf0444/20081128/1227863468 というページを見つけたが、コメントで以下のようにあるが、 > // もはやtoArrayの引数にサイズ0の配列を渡すのはお約束 > String[] strs = strList.toArray(new String[0]); > ですよね〜 「お約束」「ですよね〜」となるのが理解できない。 new String[list.size()] とやらずに new String[0] とやるのは常識(お約束)なんですか?
5 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 22:39:17 ] >>4 >> T[] result = new T[size]; > とか出来ないのか。 なんて言ってる人たちだから。
6 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 22:42:42 ] >a - リストの要素の格納先の配列。 > 配列のサイズが十分でない場合は、 > 同じ実行時の型で新しい配列が格納用として割り当てられる どう見ても new String[list.size()] の方が効率いいと思うが。
7 名前:デフォルトの名無しさん [2009/01/19(月) 22:50:58 ] 質問です。アドバイスをお願いします! 現在JTabbedPaneでタブを作っているんですが、その中身を別のクラスから呼び出そうとすると、 「シンボルを見つけられません」とエラーが出てしまいます。 部分的にソースを書くと、 //タブに貼り付けるパネル設定 JPanel tabPanel2 = new JPanel(); //テキストエリアのクラス JTextAreaTest sc ; sc = new JTextAreaTest(); //タブの設定 tabPanel1.add(sc); ←ここでエラー tabPanel2.add(new JLabel("ラベル")); JTextAreaTestクラスのインスタンス化したものを設定しているのが問題なのでしょうか? それともインスタンス化自体間違っているのかどなたか助言をお願いします!
8 名前:デフォルトの名無しさん [2009/01/19(月) 22:51:56 ] jnlpで 外部ライブラリにいちいち署名しない方法教えて。 grant allpermissionは抜きで。 GoogleAPIのJARを解凍して一個のJARにまとめて 署名したけど、なんか動かんかった。MANIFESTの情報を 引き継がなきゃなんないのか? つか、いちいちサードパーティの信頼性を プログラマが保障しなきゃいけないモデルってあり? せっかくのJavaFXもこんなめんどくさい サンドボックスのせいで普及しなそう。
9 名前:7 mailto:sage [2009/01/19(月) 22:53:21 ] >>7 すいません、パネルの設定が一行抜けてましたorz 正しくは下です //タブに貼り付けるパネル設定 JPanel tabPanel1 = new JPanel(); JPanel tabPanel2 = new JPanel();
10 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 23:05:22 ] >>9 オマエが抜書きしている時点で全て怪しいいよ。 全部どっかにアップしろ
11 名前:4 mailto:sage [2009/01/19(月) 23:13:28 ] >>5-6 レスどうもありがとうございます。 いくら Collection.toArray() 内で、適切に拡張してくれるとはいえ、 new String[list.size()] の方が効率がよいということなので、 自分はそうするようにします。 List list = new ArrayList() とか StringBuilder sb = new StringBuilder() でも、今までは気にしていなかったけど、その時点でサイズを決めることができる場合は、 コンストラクタに初期サイズを指定した方が効率がいいのかな。 (明確な差は現れないような気もするけど)
12 名前:7 mailto:sage [2009/01/19(月) 23:19:40 ] >>10 ソース上げました ttp://uproda.2ch-library.com/src/lib093498.java.shtml
13 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 23:24:17 ] WinXP SP-3に、jre-6u11-windows-i586-p.exeをインストールしていました。 Revo Uninstallerというフリーソフトでアンインストールを行い、ウイルスソフトを 停止して、再インストールしようとすると、 「この操作は現在インストールされてている製品に対してのみ有効です。」 となり、インストールできません。 セーフモードで起動し、インストールしようとすると 「システム管理者によって、ポリシーはこのインストールを実行できないように設定されています」 となってしまいます、administratorでインストールしようとしても、同様の結果です。 プログラムの追加と削除には、既にjavaの項目はありません、完全削除か、再インストールしいたいのですが、できなくて困っていますどうしたらいいでしょうか? Sunに聞いたほうがいいのでしょうか?
14 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 23:26:23 ] >>12 JPanle#addはComponentしか受け付けないから
15 名前:デフォルトの名無しさん mailto:sage [2009/01/19(月) 23:27:02 ] >>14 ×JPanle ○JPanel
16 名前:7 mailto:sage [2009/01/19(月) 23:38:08 ] >>14 なるほど!だからエラーが出るんですね ということは、直接設定せずに間接的に設定すればおk? ちょっとやってみます
17 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 00:00:51 ] >>16 目標がなんだかわからないが、 普通にやりたいなら、 JTextAreaTestのコンストラクタでやっていることは全部Sampleのコンストラクタに出して、 JTextAreaTest自体やめちゃえば?
18 名前:7 mailto:sage [2009/01/20(火) 00:23:02 ] >>17 確かにそれだと表示されるんですが、 最終的にこれに他にもJMenuとかいろいろ足していきたかったので、 Sampleの中に全部入れていくと見難いかと思ってクラスに分けたかったんです もう少しやってみてだめだったら、このままSample内に入れてしまおうと思います
19 名前:デフォルトの名無しさん [2009/01/20(火) 00:41:44 ] クラスに分けるときは、もうちょっとオブジェクト指向を 勉強したほうがよいかと。 JTextAreaTestをインスタンス化(new)して そこからJTextAreaTestがもってるスクロールペーンの 参照を取得して、Sampleのほうのタブペーンにaddする。 難しい方法はJTextAreaTest extends JPanel とかして、JTextAreaTest自体をタブペーンにaddする。 がんばれー。
20 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 00:43:15 ] >>18 タブに入れるパネルか、 パネルに入れるスクロールペインをサブクラス化した方が良いのでは?
21 名前:デフォルトの名無しさん [2009/01/20(火) 01:54:41 ] >>11 >コンストラクタに初期サイズを指定した方が効率がいいのかな。 インスタンス生成時に、予めサイズが分かってるなら、その方が良いよ。 気になるなら、ソース読んでみると良い。 それに、パフォーマンスを気にするなら、まずは自分の手を動かして実測してみるのが一番。
22 名前:デフォルトの名無しさん [2009/01/20(火) 01:59:57 ] JAVAでパフォーマンスを気にする奴はどんな髪型してるんだ?
23 名前:7 mailto:sage [2009/01/20(火) 02:15:59 ] >>19-20 助言ありがとうございます まだまだオブジェクト指向は理解しきれていないですが、二人の言葉を参考に なんとかクラスを分けたままでタブに表示することができました! ttp://www.dotup.org/uploda/www.dotup.org19740.java.html テキストエリアのサイズの設定がおかしいことになってますが、 今日はここまで出来たので寝ようと思います ここに来てよかったです。ありがとうございました
24 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 02:55:21 ] >>22 大量にデータを扱うようなプログラムを作る場合、 パフォーマンスは気にすべきだと思うが。 あなたは、Java で書こうと C で書こうと、いま自分が書いているプログラムが どれくらい無駄なことをやっているか、どれくらい効率的になっているか、意識していないんですか?
25 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 03:26:18 ] 大量って具体的にどれほどバイト?
26 名前:デフォルトの名無しさん [2009/01/20(火) 03:28:13 ] >>24 青二才はオナニーしてはよ寝ろw
27 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 04:12:27 ] Cで書くのが面倒でJavaしてる時点でパフォーマンスは考えてないな。 perlとかスクリプト書けばすぐ済むのをいちいちCでやるのかと同じ。
28 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 04:25:00 ] JAVA的にはperlじゃなくてRUBYだと思うが・・・
29 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 08:54:20 ] なんでrubyがでてくるんだ?
30 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 09:26:18 ] 指示ファイルを読み込んで動作するプログラムがあります。 classファイルで動いている時には、自身のclassファイルがあるフォルダから、 jarで動いている時には、自身のjarから抽出して、 それぞれ動かしたいと思います。 自身のパスと、classなのかjarなのか、はどうやったら得られるんでしょうか。 ご教示願います。
31 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 13:32:42 ] 相対パスで指定すれば関係ないんじゃない?
32 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 17:36:21 ] >>27 なんでperlなの?
33 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 17:37:24 ] >>24 大量って具体的にどれほどバイト?
34 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 17:52:04 ] どれほどバイト
35 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 18:08:12 ] >>30 クラスファイルと同じ場所に指示ファイルがあるのなら getClass().getResourceAsStream(指示ファイル名); で指示ファイルから読み込むためのInputStreamが返される 指示ファイルの位置が知りたいのならClass#getResourceメソッドを使えばそのURLが得られる クラスメソッドならクラス名.classでClassインスタンスが得られる
36 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 19:20:17 ] 質問です。 main.exec()を実行する際に以下のように値をセットするようにしました。 Class name1 = new Class(); Class name2 = new Class(); ... Class name10 = new Class(); name1.setA("a"); name2.setA("b"); ...[引数が微妙に違う]... name10.setA("j"); name1.setB("default"); name2.setB("default"); ...[引数が同じ]... name10.setB("default"); 以下setC(すべて同じ引数), setD(name1〜5が同じ引数、name6〜10が同じ引数)と続く main.put("METHOD1", name1); main.put("METHOD2", name2); ... main.put("METHOD10", name10); main.exec(); 似たような処理を記述しているので冗長に感じます。 もう少しスッキリとさせることはできないでしょうか?
37 名前:36 mailto:sage [2009/01/20(火) 19:22:17 ] 具体的には数字ではなくて nameItigo nameRingo nameSuika のような意味のある名前になっています(引数もそれに関連するものです)
38 名前:sage [2009/01/20(火) 21:48:32 ] サーブレットはサーバで動くアプリケーションというのは分かったですが、 普通のjavaアプリケーションは何て言うんですか?
39 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 22:01:00 ] javaアプリケーション
40 名前:デフォルトの名無しさん mailto:sage [2009/01/20(火) 22:33:45 ] >>36 Classクラスは標準で存在するクラスだから仮の名前に使うのは良くない。 nameなんたらという名前がその場だけのものなら配列なりコレクションなりに置き換えた方がいい。 セットするリソースもそれに合わせてまとめておく。そうすれば繰り返し構文が使える。 名前の変更ができないのなら配列等にname〜の参照を保持してそれを使うようにするとか。 Hoge nameFoo = new Hoge(); ... Hoge[] names = {nameFoo, ...}; String[] valueA = {"a", ...}; ... for (int i = 0; i < names.length; i++) { names[i].setA(valueA[i]); ... みたいな感じ。
41 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 04:38:30 ] 動作効率(速度面・資源面など)について質問です。 class Sub extends Super { } class Sub2 extends Sub { } class Sub3 extends Sub2 { } ここでSub3をインスタンス化して継承したSuperのメソッドを使うのと、 Superをインスタンス化してメソッドを使うのでは、 動作効率は変わってきますか? 継承すればするだけ継承した下位のクラスを利用するとき動作効率が劣るのでしょうか?
42 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 08:16:03 ] >>41 JVMの実装による。お使いのJVMでベンチマークしてください。
43 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 08:34:02 ] その程度最適化で吸収される
44 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 11:29:19 ] 一般的には、気にするだけ無駄だな。
45 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 11:45:21 ] >>41 どっち使ってもinvokevirtualになるだろうし大して変わらんと思うが。 まぁJVMの実装次第だけど。
46 名前:41 mailto:sage [2009/01/21(水) 12:00:17 ] みなさんレスどうもありがとうございます。 自分の中のイメージとしては、 小物の入った小さい箱にそれよりも大きな箱を重ねていく感じで、 小物をとりだすときに箱を1つずつ取り払う分作業速度が遅くなり、 大きな箱を用意する分資源(メモリ等)を多く使うのではと思い質問しました。 大してかわらなそうとのことなので気にしないことにします。
47 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 12:35:45 ] >>35 ありがとう。 提示されたキーワードで調べてみます。
48 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 13:16:26 ] サーブレットからアプリケーションを実行する時って どうすればいいんでしょうか。
49 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 16:33:13 ] もうすぐ現場に出るのですが 覚えといたほうがいいものを教えてください。
50 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 16:42:51 ] >>49 ハンカチとティッシュを忘れない
51 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 17:03:50 ] 行為の前に敷いてあげて行為の後で拭いてあげるんですね
52 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 17:20:26 ] >>48 アプリケーションをコンテンツとして用意して、ブラウザに送る。
53 名前:36 mailto:sage [2009/01/21(水) 21:56:48 ] >>40 ありがとうございます。 配列にしたことでスッキリできました。
54 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 21:58:12 ] ご存知でしたら教えてください。 servletのフレームワークで、プロパティー形式以外の入力を処理するようなものってありますでしょうか? 普通、リクエストボディには キー=値 という形式でデータが納められているとおもうのですが、 これがCSVだったり kamoku,tensuu kokugo,81 rika,69 suugaku,77 XMLだったり <data> <name> <sei>foo</sei> <mei>bar</mei> </name> <age>26</age> </data> するリクエストが飛んできた場合、適切にBeanのフィールドに値を詰めてくれるようなフレームワークです。 以上、よろしくお願いします。
55 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 22:21:15 ] よく分からんがO/Rマッピングのこと?
56 名前:54 mailto:sage [2009/01/21(水) 23:08:13 ] O/Rマッピングと言っていいのかわからないのですが、 つまりクライアントから POST /TestServlet HTTP/1.1 Host: localhost Content-Length: 17 Content-Type: text/xml <data> <foo>bar</foo> </data> こんなリクエストが投げられてきた時にO/Rマッピングみたいな事をしてくれるフレームワークです。 そういうのありますでしょうか?
57 名前:デフォルトの名無しさん mailto:sage [2009/01/21(水) 23:52:19 ] JAXBとか
58 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 00:23:25 ] JTableについて質問があります. JTableのテーブルモデルをAbstractTableModelを拡張した自作(TableModelEx)の物にしています. TableModelExにAbstractTableModel#getValueAt(int row, int column)をオーバロードしてgetValuAtの返り値がセルのデータになるはずですが どうもうまくいきません.行内の全ての項目の値が同じものになってしまいます. そこでオーバーロードしたgetValueAtの引数rowとcolumnを調べてみるとcolumnの値が変化してません. 例えばSystem.out.println(row + ":" + column)で調べると 0:0 0:0 0:0 1:0 1:0 1:0 といった具合になります.同じ列をアクセスしているようです.本来ならば 0:0 0:1 0:2 1:0 1:1 1:2 となっているはずです. どうすればよいでしょうか?
59 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 00:51:10 ] >>58 それを言うならオーバーロードでなくオーバーライドじゃね? まあTableModelインタフェースで定義されてるだけだからオーバーライドというよりインプリメントかもしれんが。 TableModelEx自身やそれがどう使われているか分からないことには何ともいいようがない。たとえば、 class Model extends AbstractTableModel { public int getRowCount() { return 10; } public int getColumnCount() { return 5; } public Object getValueAt(int row, int column) { System.out.println(row+","+column); return new String(row+","+column); } } みたいに簡単なのをそのコードで使ってるJTableのモデルに与えてみてもうまくいかない?
60 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 00:53:27 ] AbstractTableModel自体は抽象クラスだからインプリメントでなくオーバーライドでいいのか…
61 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 03:51:12 ] >59 それと同等のプログラム組んでみたらうまくいった. それでいろいろ試してみたらハードコーティングで作った列はAbstractTableModel#getValueAt(int row, int column)の 引数columnでちゃんとアクセス(column = 0,1,2,3...)してくれるみたいなんだけど 実行中に動的に追加した列に関してはAbstractTableModel#getValueAt(int row, int column)の引数columnが常に0だった. つまり動的に追加した列は0列目とまったく同じ値になった. で,今作ってるプログラムは動的に列を追加するもの(列の定義があるファイルにあってそれをロードする)なので 思うように行きません.
62 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 04:45:47 ] >>61 たぶんTableModelExでデータを追加する機能がきちんと組めていないんだと思う。 動的に追加するのならAbstractTableModelでなくDefaultTableModelを継承したほうが楽。 class Model extends DefaultTableModel { public Model() {super(10, 5);} public Object getValueAt(int row, int column) {return new String(row+","+column);} } で JFrame f = new JFrame(); final Model m = new Model(); JTable t = new JTable(m); f.add(new JScrollPane(t), BorderLayout.CENTER); JButton b = new JButton("add row"); b.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { m.addRow(new Object[m.getColumnCount()]); }}); f.add(b, BorderLayout.SOUTH); JButton b2 = new JButton("add column"); b2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { m.addColumn(String.valueOf((char)('A' + m.getColumnCount()))); }}); f.add(b2, BorderLayout.EAST); みたいなのはちゃんと機能する。
63 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 11:39:42 ] 列を追加するときにfireTableStructureChanged()を追加した動的に列を追加してももうまくいった. とにかくありがとう
64 名前:デフォルトの名無しさん [2009/01/22(木) 14:24:42 ] ボタンをクリックする度に新しいJTextPaneを、JInternalFrameを使って 表示させています。 クリックされる度にJTextPane textPane = new JTextPane(); として生成しているのですが、一度目のクリックではtextPane1、二度目のクリックでは textPane2...というふうに、違う名前にしたいのです どのようにしたらいいでしょうか
65 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 14:32:06 ] >>64 名前といわれても、なにの名前だか
66 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 14:48:02 ] ていうかSwingはSwingスレ行ってやれよ。超過疎ってるんだから。
67 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 14:53:26 ] 質問です。 現在、↓のようなプログラムを作りました。 ttp://www3.uploda.org/uporg1954205.java.html システムトレイにアイコンを常駐させ、フレームを閉じてもアイコンから表示でき、 時間設定することでシステムトレイに常駐させたアイコンからお知らせできる、というプログラムです。 普通にフレームを閉じてアイコンから開いても普通に表示されるんですが、 時間設定をしてからもう一度フレームを開くと、上下にパネルを並べていた レイアウトが並べて表示されてしまいます。 レイアウトが崩れてしまう原因はなんでしょうか? アドバイスをお願いします!
68 名前:67 mailto:sage [2009/01/22(木) 15:04:50 ] すいません、上のプログラムですが、余計なコメント類を消してすっきりさせて みたらレイアウトが崩れなくなりました。 お騒がせしてすいませんorz
69 名前:デフォルトの名無しさん [2009/01/22(木) 19:28:09 ] 質問なのですが apacheとtomcatの連携させて、 javaのサンプルプログラムをdosでコンパイルして動かして連携を確認しました。 ところがエクリプスで同じプログラム造るとtomcatで動いてもapacheで動きません。 どなたか原因ご存じですか??
70 名前:デフォルトの名無しさん [2009/01/22(木) 20:04:50 ] 質問させてください 二次元配列でfor文を使って、各行の最小値を求めてから、 その最小値の要素の要素番号を表示するにはどうすればいいのですか? 下のように表示させたいのですが…よろしくお願いします。 10, 1, 9, 7, 8 30, 10, 9, 6, 4 -1, -2, -9, -5, -6 0行目の最小値 = 1 0行目の最小値の要素番号 = 1 1行目の最小値 = 4 1行目の最小値の要素番号 = 4 2行目の最小値 = -9 2行目の最小値の要素番号 = 2
71 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 20:06:23 ] >>70 宿題スレの方がいいんじゃね? ここってアルゴリズムスレじゃないと思うんだ
72 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 20:38:24 ] アルゴリズム体操はじまるよぉ〜〜☆☆☆
73 名前:デフォルトの名無しさん mailto:sage [2009/01/22(木) 20:39:10 ] >>71 失礼しました、改めて宿題スレで聞いてみます ありがとうございました
74 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 21:59:06 ] 最近Javaを勉強し始めましたが、コンストラクタを使用するメリットが イマイチよく分かりません。 どういった場面で利用し、どのように役に立つのでしょうか?
75 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 22:13:30 ] 多分あなたが書いた「コンストラクタが不要なクラス」のサンプルを 貼ってもらえると説明出来ると思う。 どういう理由でコンストラクタ不要と考えたか分からないので。
76 名前:デフォルトの名無しさん mailto:sage [2009/01/23(金) 23:11:16 ] インスタンスを作った時点で必ずメンバ変数が初期化されてるってハッピーじゃね? メンバ変数が初期化されてなかったらどうしようとかビクビクしなくて済むわけで。
77 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 08:46:10 ] オブジェクト指向プログラミングでは オブジェクトを構成単位としてプログラムを構築するが そのオブジェクトの内外部の境界の決定は そのオブジェクトにどのように整合性(不変条件)を持たせるかが 一つのキーポイントとなっている。 ところが、単にオブジェクトを生成しただけでは、 Javaの既定のフィールドの値では 生成直後の状態がその整合性を満たせない場合がある。 このような場合に、コンストラクタなどを使って 正しい状態のオブジェクトが生成できるように細工をする。 なお、コンストラクタが終わる前に、直接的にも間接的にも その構築中のオブジェクトの参照を漏洩するのは 整合性がない状態でオブジェクトを晒すことになるので、やってはいけない。
78 名前:デフォルトの名無しさん [2009/01/24(土) 09:55:14 ] アプレットです。init()を実行した時点で一旦処理を止めて、マウスのeventで paint()に進むようにしたいのですが、制御の方法が分かりません。 今は最後まで処理してからマウスeventを待っています。 宜しくお願いします。
79 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 11:52:04 ] プログラム晒せないなら宿題スレに逝けば? ★★ Java の宿題ここで答えます Part 67 ★★ pc11.2ch.net/test/read.cgi/tech/1232627790/l50 宗教的な儀式は別にして、コンストラクタって使うの面倒だよな。 クラスのインスタンス実行した時点で初期化しとけよ。
80 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 12:11:32 ] コンストラクタ使うのが面倒って、お前 インスタンスを一個しか作らないようなプログラムしか 書いてないんじゃないか?
81 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 12:36:50 ] つうか、コンストラクタへの引数ってメソッドの引数と同じようなもんだろ コンストラクタはいらねーってのはメソッドの引数はいらねーっていってるようなもんだな ていうか、コンストラクタがどうのとか言ってる奴って、 JavaAPIをまともに使ったことねーんじゃねーの? あれらにコンストラクタがなかったら悲惨なことになると思うが
82 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 12:53:43 ] コンストラクタは気になる ClassA a = new ClassA(); a.setFile(file); a.setDir(dir); a.exec(); ClassA a = new ClassA(file, dir); a.exec() どちらがいいんだろう?判断する根拠を持っていない・・・
83 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 13:20:05 ] >>82 後者だと、引数が不正だった場合にインスタンスの生成そのものを行わないという設計・実装が可能。 同じ理由でDIコンテナでもコンストラクタインジェクションを好む人は多い。
84 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 13:55:58 ] ちょっと教えてくれ telnetクライアントを作りたいんだが、 いろいろ調べてみるとApache Commonsのnet というコンポーネントを使用する例が出てくる。 やっぱこれを使った方がやりやすいのかな? あと、公式サイトはリンク切ればかりなんだけど、 ちゃんとここから落とせるのかな?
85 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 14:12:34 ] java入門のswing関係で 「getContentPane().add(button1);」というコードをを発見しました getContentPane()の戻り値のインスタンスを使って、add()にアクセスしているって解釈したんですが 間違っていませんか?
86 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 14:20:23 ] >>83 というよりむしろ引数が無ければコンパイルエラーにしてくれる点が重要では >>85 そのたうり
87 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 14:24:29 ] >>83 コンストラクタの中で、戻り値をコントロールできる? ってか、引数のチェックをした結果を、コンストラクタの呼び元でインスタンスが出来ているかどうかで判断するのか?
88 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 14:26:21 ] >>86 わかりました ありがとうございます
89 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 14:56:58 ] スレッドって手数を増やすんじゃなくてひとつの領域を効率よく使うためのアプローチなんですかね
90 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 16:16:23 ] キャストについての質問なのですけれど、 class Parent{} class Child extends Parent{} class cast{ public static void main(String[] args){ Parent p; p = new Child(); Child c; c = (Child) new Parent(); } } 実行時にclasscastexceptionの例外が発生します。 c = (Child) new Parent(); ここのキャストがまずいらしいんですけど、 どうすればエラーが出ないのでしょうか?よろしくお願します。
91 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 16:48:20 ] >>90 バナナはおやつですが、 おやつはバナナではありません
92 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 16:54:49 ] >>82 前者だと、オブジェクト指向的には setFileやsetDirを使わなかったときにexecを呼び出した場合の処理 (たぶん、IllegalStateExceptionでも投げる?) を書かなければならないという手間がかかる反面、 aを生成後に処理を挟んでこれらのsetterを呼び出せるという 柔軟性を持たせることができる。 手間と柔軟性のトレードオフだが、アジャイル的には 最初は後者で作っておいて、必要になったら後者にリファクタリングする のがよさげと思われ
93 名前:92 mailto:sage [2009/01/24(土) 16:56:53 ] typoった >最初は後者で作っておいて、必要になったら後者にリファクタリングする 後者→前者 状態数は削れるだけ削るのが基本
94 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 17:02:12 ] >>93 いっぱいの「い」を「お」に変えると?
95 名前:92 mailto:sage [2009/01/24(土) 17:06:56 ] おっぱお! 後者で作っておいて、必要になったら前者、ね
96 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 17:45:37 ] >>91 なんとなくわかりました.。ありがとうごさいます。
97 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 21:35:12 ] ファイルフィルターについて質問です ファイルチョーザで任意の一つのディレクトリを選択させるダイアログを作ろうとしています String型のopenBtnNameに格納された名前が付けられたボタンを押すとアクションリスナーが アクションパフォームドにイベントeを引き渡し、String型のcmdにeのアクションコマンドを引き渡した後、 下記のプログラムに入るようにしました else if(cmd.equals(openBtnName)){ JFileChooser openDirFC = new JFileChooser("."); openDirFC.setAcceptAllFileFilterUsed(false); FileFilter dirFilter = new FileFilter(){ public boolean accept(File f){ return f.isDirectory(); } public String getDescription(){ return "directorie"; } }; openDirFC.setFileFilter(dirFilter); openDirFC.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY); int res = openDirFC.showOpenDialog(this); if(res == JFileChooser.APPROVE_OPTION){ File inputFile = openDirFC.getSelectedFile(); DataHandler dataHandl = new DataHandler(); allData = new TableHandler(dataHandl.load501parameters(inputFile)); } } ここで、ファイルフィルターを設定していますが、eclipse3.3の画面上で openDirFC.setFileFilter(dirFilter);の行のsetFileFilterの部分に赤波線が引いてあって 「型 JFileChooser のメソッド setFileFilter(FileFilter) は引数 (FileFilter) に適用できません」 と言われます。setFileFilter(FileFilter)の引数は(FileFilter)で合っているかと思いますが、 どうして適用できないのでしょうか?原因に見当がつきません。よろしくお願いします。
98 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 21:49:14 ] >>97 java.io.FileFilter javax.swing.filechooser.FileFilter
99 名前:デフォルトの名無しさん mailto:sage [2009/01/24(土) 21:58:33 ] >>98 ありがとうございました import java.io*; import.javax.swing.*; は記述していたのですが import.javax.swing.filechooser.FileFilter; を追加したらできました。
100 名前:デフォルトの名無しさん [2009/01/25(日) 03:01:44 ] javaゲームプログラミング アルゴリズムとフレームワークとかいう表紙に二次キャラの絵が描いてある本 やったことある人いませんか? そこの2章スプライト作成のsprite.java で最後の記述にDraw draw=null;ってありますけど Drawは標準的クラスでないからもちろんエラーでます この本なんなんですか?
101 名前:デフォルトの名無しさん mailto:sage [2009/01/25(日) 03:25:29 ] あれってオリジナルキャラだと思ってたんだけど元ネタがあったのか 最初から100回嫁
102 名前:デフォルトの名無しさん mailto:sage [2009/01/25(日) 03:44:19 ] >>100 添付のCDにクラスを定義したソースファイルがある。
103 名前:デフォルトの名無しさん [2009/01/25(日) 04:12:46 ] >>102 トン
104 名前:デフォルトの名無しさん mailto:sage [2009/01/25(日) 19:29:52 ] >>100 (^ω^;)
105 名前:デフォルトの名無しさん [2009/01/25(日) 23:48:15 ] 100ですが第6章のBlock.javaで 必要なクラスをすべておいてもBlockクラスが見つからないってエラーが出ます 付属CDのソースを使っても同じエラーが出ました 何が悪いんでしょうか?この本Game2Dクラスの説明がはしょってあるのでまったくわかりません この本なんなんですか?
106 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 00:04:35 ] ソフトバンクパブリッシングに文句言え
107 名前:デフォルトの名無しさん [2009/01/26(月) 00:05:36 ] >>106 文句いいたいのはヤマヤマなんだけど これでもし俺がなんか単純なミスで動作してなかっただけなら恥ずかしいし・・・ だからお前らに聞いてるの!!
108 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 00:08:26 ] ここで晒す恥のほうが恐ろしい結果を招くことを知らぬ勇者め。
109 名前:デフォルトの名無しさん [2009/01/26(月) 00:12:38 ] >>107 おまえ巨大ウンコだろ?
110 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 00:13:03 ] エスパーするとBlock.javaの内容をここに貼りつけるかロダにあげろってことか そのためにはその本を買うか立ち読みしてこないといけないんだけど、 それを見ず知らずのおまえのために誰かがやってくれるといいね
111 名前:デフォルトの名無しさん [2009/01/26(月) 00:16:58 ] >>110 いや著名な本だから誰かもってるだろ 俺もここで進められた本だし 何より俺はお前らを信じてるよ
112 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 00:30:06 ] まあ、二版が出てるくらいだから売れたんだろうけど、 タイトルにゲームと付いているような入門書を選ぶやつは、 大概脱落してここにいないだろ。
113 名前:デフォルトの名無しさん [2009/01/26(月) 00:33:10 ] >>112 そうか?結構面白いぞこれ 初心者のおれにはちょっと説明足らずな点をどうにかしてほしいんだけどな
114 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 01:34:23 ] そもそも初心者が応用から始めるな。まず基礎からだろ。
115 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 01:44:23 ] >>105 第6章にBlock.javaなんて無い、5章だろ だいたい、Block.javaは、Blockを定義しているんだからBlockが見つからないとかあり得ないだろw なんかタイプミスしてるはず
116 名前:デフォルトの名無しさん [2009/01/26(月) 01:54:06 ] 手っとり早く絵がうまくなる方法ないすか?
117 名前:デフォルトの名無しさん [2009/01/26(月) 02:12:50 ] >>115 そうだ5章です、すまぬ しかしBlock.javaもCD内のソスコードを使ったけどダメなんすよ Block.java Draw.java DrawRect.java Game2D.java InputEventTiny.java Queue.java ScrollSpace.java SoundPalette.java Sprite.java これらすべてCD内のものをそのまま持ってきました んで結果 Error : I can not create Game2D or newGame2D(). ありえないだろw
118 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 02:16:30 ] エラーメッセージもっと貼れ
119 名前:デフォルトの名無しさん [2009/01/26(月) 03:05:30 ] >>118 Error : I can not create Game2D or newGame2D(). java.version : 1.6.0_11 java.vendor : Sun Microsystems Inc. java.lang.ClassNotFoundException: Block at java.net.URLClassLoader$1.run(URLClassLoader.java:200) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:188) at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:252) at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:169) at info.Game2D.startGame(Game2D.java:140) at info.Block.main(Block.java:14) これで全部です 何度もぐぐったけど解決できません お願いします
120 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 03:25:10 ] 画像とかのリソースファイルがないんじゃね?
121 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 03:45:24 ] >>119 > java.lang.ClassNotFoundException: Block > at java.net.URLClassLoader$1.run(URLClassLoader.java:200) Block クラスがクラスローダーで見つからない、と。 > at java.lang.Class.forName(Class.java:169) > at info.Game2D.startGame(Game2D.java:140) Game2D.java の140行目で Class.forName を呼び出しているようだが、 引数は恐らく "Block" なのだろう。 "info.Block" なのに "Block" とは之如何。
122 名前:デフォルトの名無しさん [2009/01/26(月) 04:54:48 ] >>121 Block.javaの14行目です public static void main(String args[]){ startGame("Block"); } Game2D.javaの140行目です Game2DMain newGame2DMain() { try { Class argClass[] = {getClass()}; Constructor g2dmCon = Class.forName(GAME_MAIN_NAME).getConstructor(argClass); Object initArgs[] = {this}; return (Game2DMain)(g2dmCon.newInstance(initArgs)); } catch(Exception e) { infomation("Error : I can not create Game2DMain.", e); } return null; } 引数はきちんとBlockになってるようですがわかりません
123 名前:デフォルトの名無しさん [2009/01/26(月) 04:57:09 ] 訂正 136 static void startGame(String game2dClassName) { 137 GAME_NAME = game2dClassName; 138 try { 139 Game2D game2D = (Game2D)(Class 140 .forName(game2dClassName).newInstance()); 141 game2D.newGame2D(); 142 } catch (Exception e) { 143 infomation("Error : I can not create Game2D or newGame2D().", e); 144 } 145 }
124 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 10:55:42 ] 各ファイルを置くフォルダの構成が間違ってるんだろ もっかい本の該当箇所を読み返せば?
125 名前:デフォルトの名無しさん [2009/01/26(月) 16:44:51 ] import java.applet.Applet; import java.awt.Graphics; /*<applet code="App2.class" width="500" height="500"></applet>*/ public class App2 extends Applet { public static void main(String args[]){ int []a= {1,2,3,4,5}; paint(,a[0],a[1],a[2],a[3]); } public void paint(int i, int j, int k, int l) { Graphics.drawLine(i,j,k,l); } } こういう風にmainメソッドで引数を作って、下でアプレットで線を引くようなプログラムを作りたいんだが、 どこをどう直せばいいんですか?(Graphics g)を引数に追加してg.drawLineってやると、mainメソッドでどうそれを代入すればいいかわからないんだが・・・
126 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 17:08:31 ] ImageIO.write で、既存のファイルに書き込みをすると、PCごと落ちてしまいます。 皆さんもお試し下さい。
127 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 18:40:55 ] >>126 import java.awt.image.BufferedImage; import java.io.*; import javax.imageio.ImageIO; public class Hoge { public static void main(String[] args) throws IOException { InputStream in = new FileInputStream("moge.jpg"); BufferedImage im = ImageIO.read(in); in.close(); OutputStream out = new FileOutputStream("moge.jpg"); ImageIO.write(im, "jpg", out); out.close(); } } 落ちたりしないよ? この場合、画質の劣化や圧縮率の違いでファイルサイズが変わるけど、 writeによる上書きでPCが落ちるなんてことはない。
128 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 19:11:00 ] >>125 つっこみどころが多すぎる きちんと初心者向けのjavaの参考書を買って頭から読んで理解することから始めた方がいい 買うときは内容を見てグラフィックス関連やアプレット関連の記述がそれなりにあるものを
129 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 19:29:35 ] >>125 すまん、マジで基本からやりなおしたほうがいいと思う
130 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 19:47:30 ] >>127 OutputStreamではなく直接Fileを指定する。 上書きの場合、100%リセットする。 おそろしいことです・・・・。
131 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 20:24:25 ] >>125 (1) まずアプレットとして正常に動くものを作成する。 通常paint(Graphics g)はアプレット作成者が描かせるために直接呼び出すものではなく、 アプレット画面が描かれる時にこういう風に描いてねという作成者の要求を書いておくメソッド。 呼び出しはアプレット実行環境が必要な時に呼び出してくれる。 そして、paintではなくinitやstartメソッドで描画のためのパラメータを設定して、 それをpaintで読んで描くようにする。 パラメータの授受にはアプレットクラスに必要なだけインスタンス変数を定義すれば十分。 (2) そのアプレットをアプリケーションとして動かす。 Appletクラスもグラフィックコンポーネントの一種なので、 Frame等のトップレベルウインドウを作成してそれにaddすれば表示できる。 ただ、アプレットの場合、init、start、stop、destroyの四つのメソッドが アプレット実行環境から呼ばれることが前提になっているので、 アプリケーションから動かす場合は、開始時にinitやstartを呼び出し、 終了時にstopやdestoryを呼び出すようにする。 ただ、オーバーライドしていないメソッドは呼び出さなくてもいい。 そしてmainからアプレットへのパラメータの引渡しは、 paint用に定義したインスタンス変数を使えばいい。 initやstartでgetParameterで設定するパラメータを読み取る形にしているのなら、 アプリケーション側では、AppletStubのgetParameterをオーバーライドして、 mainで決めた値から得たパラメータ値を返すようにしたものをAppletに設定するといい。 あまりまじめに作ると自作アプレットビュアとかになるのでやりすぎは禁物。 なんにせよjavaのグラフィックフレームワークの使い方を初歩から勉強した方がいいと思う。
132 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 20:34:16 ] >>130 import java.io.*; import javax.imageio.ImageIO; public class Hoge { public static void main(String[] args) throws IOException { ImageIO.write(ImageIO.read(new File("moge.jpg")), "jpg", new File("moge.jpg")); } } 全然問題なく実行できるんだが? JavaのバージョンとかOSは何?
133 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 20:42:31 ] 自分で作成したjarファイルの中に外部ライブラリjarを埋め込むにはどうすればよいのでしょうか? 複数のjavaファイルをコンパイルしMyApp.jarにまとめました。 外部ライブラリ(log4, commons-io, commons-*等)をMyApp.jarと同じディレクトリに配置しclasspathに記述することで動作確認できました。 MyApp.jarにライブラリファイルを単に追加しただけだと 実行時に「ミツカラネーヨ」と怒られてしまいます。
134 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 20:50:48 ] Fat JarとかOne-JARとかでぐぐってみる
135 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 21:20:15 ] >>132 なんですって!?自分の環境がおかしいだけなのか!? OSはXP,Javaは1.6.0_11 いや、もう忘れてください。deleteしてからwriteしたら何事も無く動いたんで・・・ 夢でも見ていたんでしょう・・・
136 名前:デフォルトの名無しさん [2009/01/26(月) 22:11:30 ] おい結局何のアドバイスもないの? 何、お前らの実力ってその程度だったの?拍子ぬけだわ〜
137 名前:133 mailto:sage [2009/01/26(月) 22:24:32 ] >>134 キーワードでぐぐったら有益な情報が見つかりました。 ありがとうございます。
138 名前:デフォルトの名無しさん mailto:sage [2009/01/26(月) 23:53:03 ] >>136 いろいろアドバイスもらってるじゃん。それもわからないようじゃどうしようもない。 このスレは初心者は歓迎するがバカは歓迎しない。
139 名前:デフォルトの名無しさん [2009/01/27(火) 00:11:53 ] >>138 何と勘違いしてるんだ?このアホ
140 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 00:18:54 ] IDでないから誰が誰やら せめて自分の番号ぐらい書け糞野郎
141 名前:デフォルトの名無しさん [2009/01/27(火) 01:15:22 ] >>139 水の中に入れると、どうして乾いたウンコは砕け散るんですか?
142 名前:デフォルトの名無しさん [2009/01/27(火) 01:46:05 ] いろいろアドバイスもらってるじゃん。それもわからないようじゃどうしようもない。 このスレは初心者は歓迎するがバカは歓迎しない。 ↑って、答えられないときのここの常連の常套句だよなwwうける。
143 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 03:03:56 ] 馬鹿は初心者を免罪符にするから嫌われるんだよね。 初心者だろうが、玄人だろうが、ちゃんとまず自分で勉強して、何が理解できなかったのか具体的に書いて、アドバイス受けろよ。 上達する香具師は(初心者や玄人に限らず)、質問の仕方もウマい。
144 名前:デフォルトの名無しさん [2009/01/27(火) 05:28:35 ] 980 Mr.名無しさん New! 2009/01/27(火) 05:28:00 >>975 pc11.2ch.net/test/read.cgi/tech/1232330798/ ここ この138と143を徹底的に痛めつけてほしい
145 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 05:29:11 ] 痛めつけにきたけど?
146 名前:デフォルトの名無しさん [2009/01/27(火) 05:29:34 ] おうおう!毒雑舐めてる奴どいつよ?
147 名前:デフォルトの名無しさん [2009/01/27(火) 05:31:31 ] ウッサンに絡んでる奴どいつだよ?
148 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 06:28:59 ] >>144-147 ところで鼻糞って食えるんですか?
149 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 13:16:06 ] ネットから有用な情報を引き出したいなら、 ネットに混乱を持ち込んじゃいけない。
150 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 14:57:20 ] 伸びてると思ったら馬鹿が現れたのか
151 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 18:03:59 ] コレクションについてよくわかんないんだけど これって、オブジェクト版の配列なのか? しかも、めちゃくちゃ使いやすいように改良したやつ
152 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 18:12:51 ] まあそんなもん
153 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 18:17:38 ] わかった、どうも なんか、難しそうな名前付けてたからやる気が失せたが 実際は超簡単だった
154 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 18:19:08 ] オブジェクト版の配列と聞いてArrayListを思い出した
155 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 18:19:29 ] Enumの初期化について質問です。ネイティブライブラリを読み込んで、 そこから得られる値をJavaの定数にマッピングするクラスなのですが、 初めはこんな感じで実装していました。 public class TestConst { static { System.loadLibrary("libNativeHoge");} public static final int A = NativeHoge.getA(); public static final int B = NativeHoge.getB(); ... 次にオシャレにEnumで実装しようとすると、static{}句をEnumの定義に 含めることが出来ないために怒られます。 public enum TestEnum { static { System.loadLibrary("libNativeHoge");} // 文法エラー A(NativeHoge.getA()), B(NativeHoge.getB()), ... private final int nativeVal; TestEnum(int nativeVal) {this.nativeVal = nativeVal;} ... さらに、このEnumクラスをユーティリティクラスで包んで、そちらに static{}句を移すとコンパイルは通るもののTestEnumの初期化前 にstatic{}句が呼ばれません。 public class TestUtil{ static { System.loadLibrary("libNativeHoge");} // 切ないことに、呼ばれない public static enum TestEnum {... Enumの初期化前に確実にある処理(上記例ではSystem.loadLibrary) を実行する方法は何か無いでしょうか?
156 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 19:13:45 ] >>155 TestEnumを使用する前にTestUtilクラスをロードする。 説明コードを短くするためにgetAとかをちょっと変えるけど、 public class TestUtil { static { System.out.println("TestUtil static initializer"); } public enum TestEnum { A(NativeHoge.get("A")), B(NativeHoge.get("B")), C(NativeHoge.get("C")); TestEnum(String v) { System.out.println("TestEnum constructor " + name() + ", val=" + v); } } } class NativeHoge { public static String get(String s) { System.out.println("NativeHoge " + s); return s; }//本当はnativeメソッド } class Main { public static void main(String[] args) throws ClassNotFoundException { Class.forName("TestUtil");///// System.out.println(TestUtil.TestEnum.A); } } /////の行が無ければA,B,Cを先に初期化しようとするが、 TestUtilが先にロードされればその静的初期化子の方がA,B,Cの初期化より先に呼ばれる。 別にforNameでなくてもTestUtilクラスがロードされるような処理を TestEnumが使われるより先に行うことをTestEnumの使用規約ということにしてしまう。 例えば、TestUtilにpublic static void init() {}のようなダミーのメソッドを作って、 TestUtil.init()をまず呼んでねってことにすれば使う側も少し楽に。
157 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 19:16:07 ] >>155 public enum TestEnum { A(NativeHoge.getA()), B(NativeHoge.getB()), ... ; static { System.loadLibrary("libNativeHoge");}
158 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 19:30:59 ] >>157 それはloadLibraryより先にNativeHoge.getA()が呼ばれる。 enumではAやBの初期化をコンパイラが生成した静的初期化子の中で行うから、 その静的初期化子の処理はTestEnumの静的初期化子の中で最後に実行される。
159 名前:157 mailto:sage [2009/01/27(火) 19:33:35 ] すまん、適当なことを言った。順番が問題だなあ public enum TestEnum { A(NativeHoge.getA()), B(NativeHoge.getB()), ... ; } class NativeHoge { static { System.loadLibrary("libNativeHoge"); }
160 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 19:38:49 ] >>159 あー、そうか。難しく考えすぎた。 nativeメソッドがNativeHogeクラスに抽出されているからその方法でいいんだね。 TestEnum自身がnativeメソッドを持っていて、 それをTestEnumのコンストラクタで呼び出す場合と混同してた。失礼した。
161 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 20:09:12 ] >>156 初めは確かにそういう実装だったのですが、たかが定数を読み出す ためにinit()なんかやってられるか〜というクレームが(笑)。 >>157 う〜ん、なるほど。Enum要素の列挙のあとであればstatic{}句は書ける のですね。勉強になりました。でもやはり呼ばれるのは各要素が初期化 された後でした・・・ >>159 はい。確かにその解決策が確実なんです。ただNativeHogeはSWIGで 自動生成されたクラスで、出来ればあまり弄りたく無かったのです。 ただ調べてみるとSWIG側の工夫でNativeHogeにstatic{}句を埋め込む 事も出来そうなので、>>159 の方向で調べてみます。 色々ありがとうございました。
162 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 21:07:39 ] >>161 public enum TestEnum { A(TestConst.A), B(TestConst.B), ... ; private static class TestConst { static { System.loadLibrary("libNativeHoge");} static final int A = NativeHoge.getA(); static final int B = NativeHoge.getB(); ... むずいな。
163 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 22:39:51 ] javaを独習してるのですが メンバークラス(またはインナークラス)の存在価値が分かりません。 クラスの外にあるクラスも中にあるクラスも使うときはnewするんだから同じじゃないんですかね? やっぱり大きいプログラム組むような経験が無いとピンと来ないものでしょうか?
164 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 22:48:21 ] >>163 staticが仕えないので身内だけで仕事できる=保守性最強 嘘だお^^
165 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 22:53:59 ] >>161 SWIGで生成されるNativeHogeのJavaバインディングは loadLibraryしないと使えないこと前提なのに その処理自体は自動生成されるソースにはデフォルトで入ってないの? NativeHogeを使うためには使用前に別の場所でloadLibraryせよっていうのは init()なんかやってられるかというのと同じ文句が出そうなんだけど もしSWIG側をいじりたくないなら NativeHogeにgetAなどの処理を委譲するクラスを作って そのクラスのstaticイニシャライザでloadLibraryするとかは? class NativeHogeDelegator { static { System.loadLibrary("libNativeHoge"); } public static int getA() { return NativeHoge.getA(); } ... 使うときはNativeHogeDelegator.getA()の方を使う ただ自動生成ということなのでgetAとかのメソッド名は頻繁に変わることはないという前提で TestEnumで直接getAとかの呼び出しを書いているので頻度は高くないとは思うけど
166 名前:163 mailto:sage [2009/01/27(火) 22:59:58 ] >>164 ありがとうございます。 全く理解できませんがwなんかすごく意味があるのは分かりました。 勉強する気湧いてきたぁああ
167 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 23:04:54 ] >>163 最近メンテされてないけど ttp://javafaq.jp/S016.html#S016-09
168 名前:デフォルトの名無しさん mailto:sage [2009/01/27(火) 23:10:47 ] >>165 調べてみたら、ネィティブメソッドをラップするクラスの定義に Javaコードを流し込む指示をSWIGの定義ファイル(iファイル)に 書けることが分かりました。実際サンプルは次のようなもので、 %pragma(java) jniclasscode=%{ static { try { System.loadLibrary("exampler"); } catch (UnsatisfiedLinkError e) { System.err.println("Native code library failed to load. \n" + e); System.exit(1); } } %} これを少し弄ることでNativeHogeに相当するクラスの定義に必要な static{}句を流し込むことが出来て万事解決しました。というわけで、 >SWIGで生成されるNativeHogeのJavaバインディングは >loadLibraryしないと使えないこと前提なのに >その処理自体は自動生成されるソースにはデフォルトで入ってないの? デフォルトでは入っていないけど手動の解決策は用意済みなので ちゃんとドキュメントのサンプルは隅から隅まで読みましょう、という 教訓でしたw
169 名前:デフォルトの名無しさん [2009/01/28(水) 00:17:49 ] お前らメモリどんくらい積んでる?
170 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 00:22:39 ] 16G
171 名前:デフォルトの名無しさん [2009/01/28(水) 01:17:25 ] offspringというArreyListにGeneというクラスを足してって、Listの中にいくつクラスが存在するかを知るためにはどう書けばいいの? List.size(offspring)を使うと、GeneというクラスにはList.sizeは使えないって表示されるんだが
172 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 01:25:26 ] >>171 >クラスを足して これは、何をすること? っていうか、クドクド説明するより、 ソースをアップローダに上げた方が早いのでは?
173 名前:デフォルトの名無しさん [2009/01/28(水) 02:05:10 ] インナークラスにすれば、メソッド内の変数がインナークラス内も範囲内になるから便利だよ。コードもまとまってめんどくさくないし。
174 名前:デフォルトの名無しさん [2009/01/28(水) 14:57:08 ] P12.java:45: シンボルを見つけられません。 シンボル: メソッド getParameter(java.lang.String) 場所 : P12 の クラス num=Integer.parseInt(getParameter("number")); ^ このエラーの意味を教えてください。 お願いします。
175 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 15:02:24 ] >>174 ムリ、情報少なすぎ
176 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 16:21:50 ] numって変数がないぞってエラー
177 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 16:24:37 ] いや、getParameterってメソッドがないぞってエラーかもしれん
178 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 22:42:58 ] いまからJavaを勉強しようと考えています。 したい事は、フラットファイルを読み込んで中の文字列を処理し、 別ファイルに吐き出すことです。 こんな感じの事がしたい人が読むといい実用的な参考書があれば、教えてください。 # perlを少しかじったことがある程度の無謀な新参レベルです
179 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:14:50 ] 実用的な参考書か ■読んでないけど参考になりそうだ Eclipse 3.4で超簡単Javaプログラミング基礎入門 (1/5) - @IT www.atmarkit.co.jp/fjava/rensai4/java5eclipse01/java5eclipse01_1.html 後は、下のキーワードでぐぐればサンプルがいくらでも出てくるぜ 「java テキストファイル 読み込み」 「java テキストファイル 書き込み」
180 名前:デフォルトの名無しさん mailto:sage [2009/01/28(水) 23:43:49 ] しかし、ほんといい時代だ インターネッツに繋げてれば、参考資料読み放題だぜ
181 名前:デフォルトの名無しさん [2009/01/28(水) 23:54:52 ] 誰かが作ったフレームワークを使ってそこからクラスを作って組み込むことは出来るんですが 自分でフレームワークを作りたいときオススメの参考書ないすか?
182 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 00:08:44 ] >>179 紙媒体を探してたりしてたわけですが ありがとうございます。
183 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 00:32:42 ] 紙はわかんないんだな グーグル先生に聞いてれば勉強できちゃうって思うようになっちまったもんで。 PCから離れて勉強する機会があるとやっぱ紙媒体も必要だよね
184 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 08:11:00 ] >>181 「Java言語で学ぶデザインパターン入門」 ttp://www.amazon.co.jp/dp/4797327030/ これ読んでも、フレームワークが作れるかどうかは経験次第だが。
185 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 10:52:51 ] >>174 ファイル P12.java の 45行目に書かれている、 引数にStringを持つメソッド getParameter の定義を 見つけることが出来ませんでした。の意。 大抵はスペルミス。static の付け忘れとかも。 行数の表示されるエディタを使うとヨロシ。
186 名前:デフォルトの名無しさん [2009/01/29(木) 12:22:36 ] COBOLしかやったことがないのですが、 Javaを覚えるのは大変ですか? 家のPCでJavaを用いたオリジナルアプリケーションを作成することは可能でしょうか。
187 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 12:25:44 ] 家のPCでCOBOLを用いたオリジナルアプリケーションを作成していたのなら難しくはない。
188 名前:デフォルトの名無しさん [2009/01/29(木) 12:38:40 ] >>187 ありがとうございます。 COBOLは出先の金融機関でしか触ったことがないです。 PCでもCOBOLプログラミングができるとは聞きましたが・・・。 例えば・・・小遣い帳や住所録などの管理システムも作れるでしょうか。
189 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 12:41:48 ] COBOLは潰しが利かないから、何を覚えるのも大変だと思う。
190 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 13:02:21 ] >>189 まあ、他の言語に移ると、扱える整数が小さかったりして驚くよね。 構造体の定義や初期化も面倒くさいし、 表示フォーマットも不便だし・・・
191 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 13:32:03 ] 他のスレでは.NET使いたいって言ってるし釣りっぽいな
192 名前:デフォルトの名無しさん [2009/01/29(木) 13:42:08 ] >>191 なんで分かるの?
193 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 14:52:01 ] 質問です。 サーバーサイドJavaをレンタルサーバーでやりたい場合、 サーバーには何を入れたらいいんですか? サーブレットとかは何に格納すればいいんでしょうか?
194 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 15:13:37 ] COBOLだろうが何だろうが基本はアルゴリズムだから同じでしょ 昔の知識で言うとCOBOLは出来るけどBASICは出来ないってありえないだろ
195 名前:デフォルトの名無しさん [2009/01/29(木) 15:20:04 ] Netbeans6.5で初期ページになってる水色のページのタイトル部分だけ 文字化けするんだけど、同じ症状の人いますか? ネットで調べたら、公式サイトで症状は確認されているが原因は不明とのこと。
196 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 15:56:04 ] Netbeans6.5スレにいけ。 専用スレがあるならそこで聞け
197 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 16:23:09 ] >>191 COBOLの.Netって富士通が出してるやつしか無いんじゃね? 海外では使ってないのかな?
198 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 18:30:03 ] .net使いたいって言ってるだけでcobolを使いたいって言ってるとは限らないんじゃね? >>191 が言うそれと>>186 が同一人物だとして>>186 はjavaに興味を示してるわけだし .netでc#やりたいってその別のスレでは言ってるのかもしれん そんなことより.net版のcobolなんてあるのならjvm上で動作する言語はいっぱいあるからjcobolとかもありそうだな
199 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 20:49:19 ] 何故インスタンスを作らなくても、大丈夫なのかよくわかりません どなたか回答お願いします public class SampleApp extends JFrame{ public SampleApp(){ this.setSize(new Dimension(300,200)); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setLayout(null); 略
200 名前:デフォルトの名無しさん [2009/01/29(木) 20:49:34 ] .NETってプログラミング言語ですか?
201 名前:デフォルトの名無しさん [2009/01/29(木) 20:53:26 ] >>199 このクラスのインスタンスを別のクラスからつくるんだろ
202 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 21:05:57 ] >>201 ありがとうございます
203 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 21:08:23 ] >>199 簡単に言うとthisは自分を参照するから。 実行時は実行中のコンテキストを指す・・・というと誤解があるか。
204 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 21:19:13 ] >>203 public SampleApp()がどこかでインスタンス化されるから インスタンス名を省略できるってわけですね?
205 名前:デフォルトの名無しさん [2009/01/29(木) 21:29:27 ] よそに投稿しようと思ったけどやめた。削除されるから。 馴染み深いここにする。すれ違いだけど、聞いてくれ。 昨日、大発見したんだ。 ハルマゲドンっていうじゃん。あれって、素の言語の意味だと、「ギルドの丘」っていう意味なんだって。 で、聖書の3:16章にハルマゲドン(ギルドの丘)で最終戦争が起こるっていう予言があるんだと。 で、聖書とマヤの予言には大昔のつながりがあるんだと。マヤの暦は2012年12月21日を最後に消えてるでしょう。 だから、なにかあるんじゃないかと思うんだ。。 やっぱ、最終戦争(第3次世界大戦)じゃないかって本とかでいわれてるけど、一番問題なのは、ハルマゲドンの本当の意味のギルドの丘の場所なんだけど、イスラエルのガザの近くなんだって。 まじで、やばくね? ハルマゲドンっていうじゃん。あれって、素の言語の意味だと、「ギルドの丘」っていう意味なんだって。 で、聖書の3:16章にハルマゲドンで最終戦争が起こるっていう予言があるんだと。 で、聖書とマヤの予言には大昔のつながりがあるんだと。マヤの暦は2012年12月21日を最後に消えてるでしょう。 やっぱ、最終戦争(第3次世界大戦)じゃないかとかいわれてるけど、一番問題なのは、ハルマゲドンの意味のギルドの丘の場所なんだけど、 これってば、イスラエルのガザの近くなんだって。 まじで、やばくね?昨日、深夜ブックオフで買ってきたオカルト本を組み合わせるとこういう結果になるんだけど。
206 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 21:35:33 ] メギドの丘な
207 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 21:44:41 ] >>207 そうそれ!わかってくれたか。やっぱやばいよ。まじで。
208 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 22:21:20 ] メギドの丘は宅地開発でもう無いよ
209 名前:デフォルトの名無しさん mailto:sage [2009/01/29(木) 22:38:16 ] ぱっと見エロゲの話かと思った
210 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 00:09:17 ] 自演乙w
211 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 02:45:51 ] 家のwindowsのパソコンにeclipseをダウンロードしてつかっているんですが、 マウスイベントのソースを書くときだけエラーがでます。 授業でもらったソース通りにまるまる書いてもだめです。 ちなみに授業でもecipseを使ってまして学校のPCだったら上手くいくんです。 スペルミスもさんざん確かめました。ダメです。 他のイベントは試したことないですが・・・ テストも近かったりするんで誰かお願いします
212 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 03:01:52 ] import java.applet.Applet; import java.awt.*; import java.awt.event.*; →public class App24 extends Applet implements MouseMotionListener { int x = -5 , y = -5; public void init() { → addMouseMotionListener(this); setBackground(Color.white); } public void mouseDragged( MouseEvent e ) { x = e.getX(); y = e.getY(); repaint(); } public void mouseMoved( MouseEvent e ) { } public void update(Graphics g) { paint(g); } public void paint(Graphics g) { g.fillOval(x , y , 3 , 3 ); } } >>211 です。 例えばこのようなソースを書いたとします。 すると、4,8行がおかしいようです。
213 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 03:05:39 ] addMouseMotionListener((MouseMotionListener)this)
214 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 03:15:01 ] 返信ありがとうございます。 試しましたが同じ所にエラーが出たままみたいです。 他に問題点はないでしょうか。 よく分かりませんがソースを書く以前に設定とかも適当に やってるんでその辺におかしいと思う点あればそっちも 考えてくれたらです。こうゆう設定にしないとイベントは 使えないんだみたいな・・・
215 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 03:16:25 ] >>212 矢印入ってるからじゃねーの?
216 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 03:18:37 ] JDKのバージョンが違うとか?
217 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 03:23:15 ] >>215 矢印はエラーがでる場所をわかるようにいれました。 実際は入れてないです。 >>216 何のことかさっぱりわからないいんです。 とりあえずソースに問題がないならもう無理っぽいですね・・・
218 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 03:24:47 ] >>217 エラーメッセージくらい貼れよ、カス
219 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 03:49:23 ] まず学校の環境と自宅の環境が違うんだろ。 学校の先生に相談してみたら? テストの点数悪くてもやる気で成績くれるかもよwww 具体的な環境設定はこっち。 Eclipse統合M26【Java/C/PHP/Ruby/Python/Perl】 pc11.2ch.net/test/read.cgi/tech/1224536200/l50 第三次世界大戦でも起きたら世界不況脱出するかもな。不謹慎だが。 第二次世界大戦の前にも大恐慌起きて、世界大戦で緊急財政支出行って持ち直したよね。 COBOLは出来るけどBASICは出来ないじゃなくて、BASICじゃやってられないって方が大きいだろう。 器用貧乏であれこれ出来るなら、プロジェクト毎に適当に言語決められてもなんとか成るが、 普通は、新しい言語覚えるのは非常にコスト掛かる物だろ。 基本はコミュニケーションでも、日本語使いが、英語覚えるのは大変だぜ。日本語をそのまま使えたほうが遥かに便利。
220 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 05:17:43 ] >>219 鼻糞は黙っとれ
221 名前:デフォルトの名無しさん [2009/01/30(金) 05:35:08 ] エクリプスでコントロールきー+シフトきー+Oでインポート調べてくれる機能あるけど あれGUIでやるにはどこ押せばいいの?
222 名前:foo mailto:sage [2009/01/30(金) 08:36:08 ] Velocity で、テンプレートから利用できる変数の一覧を出力する方法ってあるかな?グローバル変数のダンプでもいいけど…
223 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 10:54:41 ] >>212 は基本的なオブジェクト指向の概念もわかってないくせに GUIやらアプレットやらやろうとしてるのが間違い 入門からやり直せ
224 名前:デフォルトの名無しさん [2009/01/30(金) 14:28:53 ] 質問です。 機種依存文字を扱う必要があって、EUC_JPではなく EUC_JP_Solaris という文字コードに変換してファイルに出力しようとしているのですが、「avの文字だけ上手く変換できません。 他の文字「@」などは正常に出力されてます。 OSはウィンドウズです。 理由や対処法をご存知な方はいらっしゃいませんか? 「〜」の変換だけでも頭が痛かったのに……orz
225 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 15:19:27 ] EUC_JP_Solarisっていうcnarsetにbチていう文字がないんじゃない? どうみても拡張文字だし。
226 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 15:19:50 ] charsetね
227 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 16:54:53 ] ソラリスが動作する開発環境が必要では?
228 名前:デフォルトの名無しさん [2009/01/30(金) 18:58:33 ] エクリプスでコントロールきー+シフトきー+Oでインポート調べてくれる機能あるけど あれGUIでやるにはどこ押せばいいの?
229 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 20:33:38 ] >>225-226 普通に考えたらそうなんだけど確証と、bノ対する対処法が欲しかった >>227 ほかの文字はXPで動いてます。 ただのEUC_JPだったら@だって変換できないですよ。 そもそも拡張文字なんてどうせウィンドウズ以外じゃ表示できないんだから諦めてくれればいいのにorz ウィンドウズ以外じゃ使わないシステムだからそんな言い訳が通用するはずも無く……
230 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 20:41:30 ] ウィンドウズ以外で使わないんなら EUC 使わないで SJIS系の windows-31j つかっときゃいいんでは?
231 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 21:13:25 ] >>230 EUC_JPで他システムに送るからeuc系以外不可です。 けどwindows-31j から直接(うにを介さず)EUCに変換できれば上手くいくかもしれないですね。 そんなことできるか知らないですけど。
232 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 21:24:04 ] >>231 変換先がないって言ってんだから、送られた側のシステムでb使うことはないんじゃねーの?
233 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 22:10:13 ] >>232 試してもらえば分かると思いますが、 サクラエディタや秀丸エディタで「avをEUC_JPで保存できますし開けます。 あと事の発端はシステムから送りかえされてきたファイルに@などがあったことなんで使わないとはいいきれないんです。 ここに居る人のレベルでは対処不可ですか? とちょっと煽ってみる。 現象自体は「avを含む文字列を文字コードにEUC_JP_Solarisを指定してファイル出力するだけで再現すると思います。 (再現しなかったらバージョンの問題など、別の理由になるので再現しないならそのほうがありがたいのですが……) 「avをEUC_JPで出力したい、ただそれだけなんです。 よろしくお願いします。
234 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 22:16:49 ] 冗談でもそんな煽り入れられたら死ねといいたくなるね
235 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 22:27:44 ] そもそもEUC_JP_Solarisで@やら対応しているのか? EUC_JP_MSなんて物が存在してるようで、秀丸で保存できるのはEUC_JP_MSだから?か?
236 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 22:39:24 ] >>235 javaで使う方法がありますか? その文字コード。 Javaが内部でうにに勝手に変換するのが問題なんです。 うにには本来拡張文字が無いので。
237 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 22:47:13 ] >>236 サポートされているエンコーディング java.sun.com/j2se/1.5.0/ja/docs/ja/guide/intl/encoding.doc.html javaの5.0かせサポートされてるくさい 文字コード表 ash.jp/code/codetbl2.htm そしてJISX0208にNo.はある。 しかしjavaはうにとの相互変換でアボーンしちゃうんだよなどうしたものか
238 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:01:03 ] > うにには本来拡張文字が無いので。 件のbヘU+2116。ちゃんと存在する。
239 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:09:12 ] >>237 EUC_JP_MSで検索したらヒットしなかったんですけど、EUC_JP_Solarisの話ですか? 0208にあるならEUC_JP_LINUX 使えば上手くいく可能性はありますね。 上手くいくなら EUC_JP_LINUXとEUC_JP_Solarisでそれぞれエンコしてバイト単位で比較して補完するってこともできなくは無いか。一からエンコードプログラム書くよりはましだろうけど… >>238 そうなんですか? JAVAでバイト吐かせて確認してたのでその値であることは知ってましたが、 どこかの文字コード対応表では未対応扱いになってたので正式なものではないのかと思ってました。 存在するかどうかはあまり問題じゃなくて、変換できないのが問題なんですけどね。
240 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:09:34 ] >そしてJISX0208にNo.はある。 ないよ。その表はフォントが対応してると勝手に表示しちゃうだけ。 JIS X 0208 では13区は使われてない。 だから独自拡張する人達に13区勝手に使われちゃってるんだけど。
241 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:17:20 ] >>240 なんというカオス eucJP-ms www2d.biglobe.ne.jp/~msyk/charcode/cp932/eucJP-ms.html ここの表だと0208にはない事になってるね つまり、0208に存在しないbェEUC_JP_Solarisでバケルのは正常な動作なのか
242 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:20:21 ] >>240 NEC拡張外字って書いてますね。 NEC死ねばいいのに。
243 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:24:10 ] >灰色のコードポイントは、IBM特殊文字でも定義されています。 こっちに変換されている悪寒
244 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:31:15 ] >>243 テラパッドでEUCで保存したら0xADE2で保存された。 だが、0208にはbヘ存在しないんだから、 EUC_JP_MS→うにに→EUC_JP_Solarisで破壊されるのは正常くさい。 ※EUC_JP_MS→うにに→EUC_JP_MSでも破壊されるかもしれんけどw そして、最大の問題はEUC_JP_Solarisに存在しない筈のbェ、 >>231 のシステムで使われているかどうか。 windowsで使えるんだから使えないのはおかしいとか電波な事を客が言うかどうか。
245 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:43:56 ] >>244 EUC_JP_Solarisに存在するかどうかより使えるかどうかが問題だから 残念ながら多分使えませんは通用しないです…… というか機種依存文字だから使えませんは通用しなかった。
246 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:48:01 ] >>245 やっぱそうなるか〜そっちのシステムの実装によっちまうんだな。 しかし、対策考えると頭から湯気がでそうだな
247 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:48:48 ] とりあえず、EUC_JP_Solarisのシステムでb使ってるか、使えているかを調べんとあかんね
248 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:50:38 ] >>246 正直この仕事で文字が嫌いになりました。
249 名前:デフォルトの名無しさん mailto:sage [2009/01/30(金) 23:58:55 ] 長い間ありがとうございました。 結論は「正攻法はなし」って感じですねorz 独自で文字セット作成がんばります……
250 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 00:09:14 ] >>249 オマエが勘違いしているだけ。 バカってそんなもん。
251 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 00:11:47 ] >>250 の意味がよく分からないんだけど、EUC_JP_Solarisでbェファイルに出力できましたよ、って意味?
252 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 00:15:27 ] 最初のbェでないって悩みがバカなのか、 正攻法はなしという判断がバカなのか。 どっちだろね?
253 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 00:16:23 ] 0x8FA2F1 に変換できて喜んでる人なんでしょう
254 名前:デフォルトの名無しさん [2009/01/31(土) 00:28:13 ] public List method(){ try { return new ArrayList(); } catch (Exception e) { //ここで非チェック例外を投げないと //このメゾットは型list を返す必要があるというエラーになる } } なぜコレクションを返すときに非チェック例外を投げないとエラーになるのでしょうか
255 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 00:30:57 ] >>254 public List method(){ try { return new ArrayList(); } catch (Exception e) { } return null; //←これはないの? }
256 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 00:36:34 ] >>254 エラーというのは、コンパイル・エラーのことですか。 例外が発生した場合の流れに、メソッドを抜ける方法が書かれていないから。 非チェック例外は、メソッドを抜ける方法の一つ。
257 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 01:41:54 ] メゾット言う奴はたいてい釣り
258 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 02:56:42 ] 0xADE2をファイルから入力 EUC_JP_Solaris: (0x2116) EUC_JP_LINUX: ?(0xFFFD) EUC_JP: ?(0xFFFD) ''をファイルに出力 EUC_JP_Solaris: 0x8FA2F1 EUC_JP_LINUX: 0x3F EUC_JP: 0x8FA2F1 0x8FA2F1をファイルから入力 EUC_JP_Solaris: (0x2116) EUC_JP_LINUX: ?(0xFFFD) EUC_JP: (0x2116) うちの環境だとこうなったけど、どこら辺が悪いの?
259 名前:デフォルトの名無しさん [2009/01/31(土) 07:12:11 ] ここのやつって結構間違い教えるよな
260 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 10:43:43 ] >>258 ''をファイルに出力 EUC_JP_Solaris: 0x8FA2F1 EUC_JP_LINUX: 0x3F EUC_JP: 0x8FA2F1 ↑これをEUCを扱えるエディタで開いてみて。 3バイトの方になると多分化けるから。
261 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 11:21:56 ] >>260 たとえばFireFoxなら?
262 名前:デフォルトの名無しさん [2009/01/31(土) 12:45:43 ] >>256 ご説明ありがとうございました
263 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 13:11:25 ] >>260 EUC_JP_MSだと0xADE2だが、EUC_JP_Solarisだと0x8FA2F1で正解ってことか? だとすると、winのエディタはEUC_JP_MSで動いてるからEUC_JP_Solarisのb表示できないのは正常ってことになる。 確認するならEUC_JP_Solarisをまともに扱えるエディタでないとあかんと。
264 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 13:20:25 ] 0x8FA2F1ってJIS X 0212のbゥよ。 EUC_JP_SolarisはJIS X 0212も含んでるから、つまり正解。 >>259 バカは何人集まってもバカって事だな。
265 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 14:11:42 ] >>263 8FA2F1 読む場合は補助漢字さえサポートしてれば読める。 EUC_JP_MS は出力時は ADE2 だが、 ちゃんと実装してあれば読み込み時は ADE2 8FA2F1 8FF4AC 全部読めるはず。 Windows API の MultiByteToWideChar WideChatToMultiByte とかに 引数 CodePage として 51932 を渡した場合は補助漢字サポートしないから ADE2 しか読み書きできない。 自前でやらずに Windows API に丸投げしてると 8FA2F1 は読めない、って事になる。
266 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 17:18:56 ] 結局、変換したデータを持っていく先がどう扱っているか分からなければ、なあ。
267 名前:デフォルトの名無しさん [2009/01/31(土) 17:30:27 ] JavaでWebサービスというのがやってみたいので、初心者でも分かる本を教えてください><; JavaEE5っていう分厚い本は難しそうです><;
268 名前:デフォルトの名無しさん [2009/01/31(土) 18:02:02 ] >>267 Java のWebサービスは難しいかもな。
269 名前:267 mailto:sage [2009/01/31(土) 19:49:07 ] 教えてくださってありがとうございます><; お礼に↓これを教えてあげます><;私も昨年夏買いましたが、重宝しました><; www.rakuten.co.jp/fujix/514143/443175/717147/
270 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 20:48:06 ] パッケージにjava.*とjavax.*があるけれど、違いは何
271 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 20:51:44 ] 文字列の変換はpure javaで自前で書くのが一番安心。 Java MEの話だが実機で扱える文字コードがばらばらなのでShift-JISとUTF-8とUTF-16の相互変換を自前で書いたよ。
272 名前:デフォルトの名無しさん mailto:sage [2009/01/31(土) 22:22:48 ] まったくの初心者なんだけど、 未経験者として就職するにはどのくらい覚えたらいいか目安的なのない? 今、入門書で抽象クラスやらインターフェースやら覚えたんだけど・・・
273 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 01:32:08 ] 他システムがソラリスなんだろ。 で、あっちはあっちでソラリスしか使ってないんだから他で使うのは諦めろよって仕様なんだろ。 黙ってソラリス使っとけ。理由は他システムとの連携のためだ。 javaって実行環境依存な所があるから、システム連携で嵌まりたく無ければ統一しとけ。
274 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 01:40:16 ] >>"'#
275 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 01:42:31 ] >>273 EUC_JP_Solarisはソラリス限定の文字コードじゃない。 あとEUC_JP_Solarisが問題というよりはbェEUCで出力できないのを問題にしてる。
276 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 01:44:50 ] >>267 Webサービス使うだけならeclipseでウィザード起動一発だったような。RADだったかもしれんけど。
277 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 01:52:34 ] その環境に対応したクラスを作れば万事解決
278 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 03:02:58 ] "東京都 渋谷区 渋谷 1-1-1 キャベツ太郎 03-0000-1111" みたいな文字列を "東京都 渋谷区 渋谷 1-1-1" "キャベツ太郎" "03-0000-1111" のように分割したいのですが "東京都 渋谷区 渋谷 1-1-1" の所にスペースが使われてるのでスペースを区切り文字として扱うことが出来ません なんかいい方法ないでしょうか
279 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 03:16:20 ] >>278 なんか規則性がないと無理だな。 電話番号と氏名は間に空白が絶対に入らないというルールがあるなら、 後ろから空白区切りで電話番号と氏名を切り出して、その前方は全部住所とかそんな感じだ。
280 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 03:58:31 ] >>278 氏名と電話番号にスペースが入らないと断言できるなら後ろから取り出すとか。 >>279 も言ってるように、なんらかの規則性がないと>>278 はただの文字列だし無理。
281 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 04:22:56 ] >>278 何かしらデータを区切ってくれたり(規則性を持たせたり)しないと無理
282 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 06:33:46 ] 無理っぽいね。 "東京都 渋谷区 渋谷 1-1-1 キャベツ 太郎 03-0000-1111" とか "東京都 渋谷区 渋谷 1-1-1 ハイツ渋谷 101 キャベツ太郎 03-0000-1111" とか "東京都 渋谷区 渋谷 1-1-1 ハイツ 渋谷 101 キャベツ 太郎 03-0000-1111" とか "東京都 渋谷区 渋谷 1-1-1 トマト 様方 キャベツ 太郎 03-0000-1111" とか いくらでも考えられるし。
283 名前:Javaで [2009/02/01(日) 10:24:10 ] 現在日本では1万円、5千円、2千円、1千円、500円、100円、50円、10円、5円、1円がある。 金額をあたえると最小の紙幣数、硬貨数で支払うための金種別の枚数・個数を求めるメソッドを作成 37521 1万が3 5000が1 2000が1 500が1 10が2 1が1 ってどうやってつくるんでしょうか? 教えて頂けるとうれしいです。
284 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 11:15:15 ] 宿題スレ池
285 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 12:39:52 ] >>275 もう1つの問題はEUC_JP_Solarisで出力されるbニ、 EUC_JP_MSで出力されるbフコードが違い、 winのエディタで見えなくて、あれあれ?となっている事。 件のシステムがEUC_JP_Solarisといいつつ、 EUC_JP_MSのbカゃないと受け付けないなんてギャグもありえるのが怖いね。
286 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 13:40:20 ] >>283 割り算も出来ねーのかよw
287 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 13:54:37 ] >>285 EUC_JP_Solarisじゃないと駄目とは言ってなくね? ウィンドウズで文字コードEUCのbェ表示できるコードで出力したいって話でしょ?
288 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:01:03 ] >>287 最初の質問者はEUCは理解していない様子だ。
289 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:04:26 ] >>287 暗黙裡の要求は、秀丸やサクラエディタと同じように変換したいと言うことだったらしい。 持って言った先のシステムについて調べたがらなかったのも、そんなものは無かったからなのかも。
290 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:12:35 ] >>289 だね。 表面上の目的は「EUC_JP_Solarisでb出力できない」 確認方法は「秀丸でb表示できない」だったか しかし、秀丸でb表示できてもそれはEUC_JP_Solarisのbナはない、 むしろ、秀丸らで表示できないのが正しい姿。 本当にEUC_JP_Solarisのbナ出力できればいいのか、 秀丸で表示できるbナいいのかは、彼でなければわからない。
291 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:38:05 ] まだやってくれてたんか。 >>290 特殊記号がうにからEUC_JPへの変換で化ける(サクラなどで確認) ↓ EUC_JP_Solarisでやってみたら概ね変換できたけどbヘ駄目だね(サクラなどで確認) ↓ さぁどうしようか ←いまここ 別にEUC_JP_Solarisでないといけないわけではないです。 意図的には >秀丸で表示できるbナいい どちらかというとこっちが正しい。 ただこう言うとShift-JISでいいじゃんとかいいだす人がまた出るでしょ……あくまでEUC_JPファミリー、とでも言えばいいのかな。 やりたいことは、「水色の部分も含めこの表の通りに出力したい」と思ってください。 始めからこの表見つけて張ればここの人たちも混乱しなかったよな…… charset.7jp.net/euc.html 今までのレスから理想はEUC_JP_MSを指定する、なんだろうけどJAVAのライブラリにないよね……
292 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:40:06 ] >>291 表示するのは表示するソフト次第だって、理解できないのか?
293 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:42:01 ] >>291 EUC_JP_Solarisで変換したbセって、秀丸では表示できないけど、FireFoxでは表示されるよね?
294 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:42:41 ] >>291 >始めからこの表見つけて張ればここの人たちも混乱しなかったよな…… 混乱してるのはオマエで、未だに
295 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:45:53 ] >>291 おぃぃぃw >>224 見るとEUC_JP_Solarisじゃないとあかんようにしか見えんぞ。 ならEUC_JPで出力してみるかEUC_JP_MSでやってみたらいいんじゃね?
296 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:47:47 ] >>292-293 ソフト次第って片付けられるならそれで片付けてるよ。 charset.7jp.net/euc.html ↑基準はこれでお願いします。 EUC_JP_Solarisだと概ねこの表に沿ったエンコードになるけど、bヘこの表から外れた文字コードになりますよね?
297 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:47:48 ] その表ださずに >ここに居る人のレベルでは対処不可ですか? とちょっと煽ってみる。 なんてあおってたのか? マジで首吊って死んどけやwww
298 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:48:05 ] >>291 その表のとおりだと拡張漢字ないから EUC_JP_MS じゃなくて通称 cp51932 の方だね。 EUC_JP っつったら普通は SS3 の第三第四水準までサポートするし。
299 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:54:00 ] >>297 224以降でEUC_JP_Solaris以外の話を俺はしてるし、エディタで表示できるかどうかを問題にしてることも話してるから このスレの聡明な方々なら理解してもらえてると思ってたし、実際一部の人は理解してくれてたようですが。 始めからこの表見つけて張っておけばここまで混乱しなかったと反省はしている。
300 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 14:58:39 ] >>299 エディタで表示できないのはエディタ表示できないだけで、EUCとしては正しくでてる。 エディタで見れないとは言ってても、エディタで見れないのはダメとは名言してないしね。
301 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:04:37 ] >>299 ところでさ、エディタで確認したってのは聞いたけど、 >>231 で言うところの他システムで EUC_JP_Soralis の (0x8FA2F1) 扱えないか確認したの?
302 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:10:12 ] >>296 オマエが何をみているか知らないが、例えばWindows上でも、Apple Safariなら13区が表示されないのは分かってるよな?
303 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:11:01 ] >>300 「〜」が問題になったと言えば経験者は分かるよ…… 俺の質問が分かりづらかった旨を指摘する不毛なレスをいつまでも続けても 誰にも有益ではないと思うのですがその辺りはそろそろ空気読んでいただけませんか? >>301 あっちから返ってきたものがこっちでファイルに出力できないのが最大の問題なので、 それは(今は)あまり重要ではないです。 こちらの都合で申し訳ないですが、あくまで「うにのb>>296 表(cp51932?)でファイルに出力したい」を解決したいと考えてはいただけませんか?
304 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:13:16 ] >>303 経験者だけどわかんなかった(テヘっ 空気はお前が読めよ
305 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:14:26 ] 不毛な質問の仕方しといてそれはないわ〜
306 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:15:59 ] >>303 質問が分かりづらいとかじゃなくて、オマエは今でも勘違いしたまま迷走しているだけだよ。 オマエがしたいのは「EUCに変換する」じゃなくて、「秀丸みたいに変換する」だよ。
307 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:17:38 ] >>306 しかも、本当に変換したデータを持っていく先があるとすれば、 本当の要件は「秀丸みたいに変換する」ではない可能性が大きい。
308 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:18:13 ] >>302 だから具体的なエディタ名だしてるだろう?相当偏った環境でもない限りあなたのところでも再現すると思いますよ? 文字コードも>>296 表ならcp51932という文字コードという情報もでてるしね。 それでいて>>302 に俺がレスしてもレスしなくても俺の周りからの心象が下がる絶妙な文章。 あなたからは質問者を困らせようとしてるとしか思えない雰囲気がでてるよ。
309 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:20:33 ] バイナリで扱った方が楽な気がしてきたw 文字列として扱うから「秀丸なEUC→うにに→秀丸じゃないEUC」に変身しちゃうんだしね。 javaの中で文字列じゃないと不都合な場面がいっぱいありそうだから無理だろうなぁ。
310 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:22:32 ] >>308 もう他人の指摘はやめといた方がいいよ。 周りがどんなに熱くなっても、それに付き合ったらだめ。 それこそあなたが空気読めてないし、質問者が煽ったら空気読む以前の問題。
311 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:22:44 ] >>308 オマエが「この表のように」って言っていても、 その表にbェ表示されてると思っているのは、お前のブラウザの都合だって言ってんだよ。
312 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:26:10 ] ここに居る人のレベルでは対処不可ですか(笑)
313 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:26:15 ] >>303 WAVE DASH問題とは別だよ。 あれはユニコードの方に複数のコードポイントあるだけだから、 例えば読み込み時に Shift_JIS 使っておいて出力時に Windows-31J 使うと化けるけど 要はシステム内で解決できる可能性の高い話なわけ。 の方は EUC の方に複数のコードポイントがあるんで 出力先が期待してるコードポイントが何かとか 読み込み元が吐き出すコードポイントが何かとか 要は相手のシステムの情報がないとどうしようもない。
314 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:26:42 ] >>309 バイナリで扱えば確かに化けることはないんでしょうけど、 文字列操作を全て自前で作成するのと、変換表を一から作るのとどっちが楽か、ってところですね……
315 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:29:19 ] 変換表なんてどーせ他所からパクってくるだけだろ
316 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:31:29 ] >>308 > 文字コードも>>296 表ならcp51932という文字コードという情報もでてるしね。 ~~~~~~~~~~~~~~~~~~~~~~~~
317 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:55:34 ] >>310 ごめんなさい、気をつけます。 >>313 ちゃんと分かってる方がいると安心します。 NECとIBMの二つでしたよね? 13区の方を想定してお願いできますか? とりあえず今は他システムは(下記で無視できるなら)無視してください。 String str = ""; //←これをEUC_JP(>>296 )の13区のbフあるコードに(実行環境はウィンドウズで)ファイルに出力する 条件としてこれではいけませんか?
318 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 15:58:49 ] >>315 どこかでフリーのライブラリになってたりしませんか? それで済むならそれが一番なのですが。 内容的に需要0ってことはないと思うのですが。
319 名前:デフォルトの名無しさん [2009/02/01(日) 16:02:06 ] ほんとMSのシフトJISには参ったよな。なんでMSはころころと仕様変更するかなぁ・・・
320 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 16:02:26 ] ここに居る人のレベルでは対処不可ですか(笑)
321 名前:デフォルトの名無しさん [2009/02/01(日) 16:18:21 ] public class sample { public static void main(String[] args) { int i [] ={6,5,4,3,2}; System.out.println("最大値" + int max []); } static sample() { int max = array [0]; for (int i = 0; i < array.length; i++) { Math.max( i, array []); return valmax; } } } 初心者の質問で申し訳ないのですが 最大値を求めるプログラムなのですが研修の時このような形で解いたと 思うんですがどうもうまくいかなくて、足りない部分や間違ってる部分があったら教えていただきたいです
322 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 16:21:10 ] >>321 研修やり直してきた方がいいレベルのソース?に見えるが…… ほんとにこれJAVA?
323 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 16:23:44 ] >>321 研修でこんなことしてるとか。。。 メソッドとか理解してねーだろ つかつっこみどころ多すぎてもう・・・
324 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 16:27:10 ] charsets.jarのソースコード眺めてたが、他にやりたい事があるせいで頭に入らん。 CharToByteEUC_JP_Solarisを改造してCharToByteEUC_JP_HOGEとでもすればなんとかならんかね?
325 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 16:28:10 ] >>321 public class sample{ public static void main(String[] args){ int i [] ={6,5,4,3,2}; System.out.println("最大値" + sample(i)); } static int sample(int[] array){ int max = array [0]; for (int i = 1; i < array.length; i++){ max = Math.max( max, array [i]); } return max; } } こんな感じに習ったんじゃないか?
326 名前:デフォルトの名無しさん [2009/02/01(日) 17:04:36 ] >>322 ,323,325 すいません、ご指摘ありがとうございます、まだ研修は始まったばかりで今後も続くので また1から参考書読み直してきます
327 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 17:06:42 ] >>324 何にしてもエンコーディング指定で解決、とはいかなそうってことですよねorz >>ALL 自前でやるしかないってわかっただけでも収穫です。 ありがとうございました。 あと質問が非常に分かりづらくて申し訳ありませんでした。
328 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 17:12:18 ] >>327 sunが秀丸っぽいEUC_JP_MS作ってくれりゃありがたいんだが、 sunにとっちゃ知ったことか!だろうしなぁw
329 名前:デフォルトの名無しさん [2009/02/01(日) 17:30:29 ] >>326 勉強するかどうかよりも、そこがブラック会社かどうか疑った方がいいよ。
330 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 17:44:04 ] もうコード変換対応するの面倒だから、対応システムと同じソラリスで動かすってことでいいじゃん。 窓で動作させてる時点で負けってことで。 漏れだったらそんな面倒な事に成りそうな仕事受けないからどーでもいいよ。
331 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 18:41:23 ] >>330 質問スレとしては最低の答えだと思うが同意w
332 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 19:16:29 ] FilterOutputStreamとかで0x8FA2F1のバイト列を0xADE2にして出力するとかは?w
333 名前:デフォルトの名無しさん [2009/02/01(日) 20:25:16 ] >>330 おまえみたいな無能じゃ何やっても無理だろうけどなw
334 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 20:53:19 ] javaの質問じゃないかもしれないけど。 jarファイルダブルクリックでアプリケーションを起動させてるんだけど、 VMのオプション"-Xmx512m"の記述をマニフェストファイルに入れるにはどうすればいいんだろう? マニフェストファイル xxxx xxx でいろいろぐぐってるんだけど、見つからないんです。
335 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 23:21:20 ] >>334 見当たらない Java低速GUI Swing 5 pc11.2ch.net/test/read.cgi/tech/1161139809/635 >635 名前:デフォルトの名無しさん[sage] 投稿日:2007/07/05(木) 15:07:49 >オプションといってもVMのオプションね。 >システムプロパティを指定する-Dや、 >VMの種類を選択する-clientや-serverとか、 >メモリ割当プールの最大最小サイズを指定する-Xmxや-Xmsなど。 >今のところ、実行可能Jarをダブルクリックでは、 >これを個別指定することはできない。 > >まあただ、-clientや-serverはCPUやアーキテクチャによって >自動選択されるし(おおよそではあるけど) >-Xmxと-Xmsも、Java6からは規定値が64MB/2MBではなくなり、 >物理メモリに応じた値に変わるようになった。 >ttp://java.sun.com/javase/ja/6/docs/ja/technotes/guides/vm/gc-ergonomics.html > >-Dやその他のVMオプションは無理としても、 >実行可能Jarの手軽さを全否定するほど、使えないってことは無いと思う。
336 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 23:38:19 ] >>335 わざわざありがとうございます。 あきらめて、「javaw.exe -jar hoge.jar -Xmx512m」ってショートカットに書くことにします。
337 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 23:50:23 ] >>336 javaw.exe -jar hoge.jar -Xmx512m をプロセス起動して落ちるだけのクラスを書いてマニフェストの実行クラスに指定すればよい
338 名前:デフォルトの名無しさん mailto:sage [2009/02/01(日) 23:54:18 ] >>337 おもしろっw
339 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 00:00:27 ] >>337 ゴメン間違えたw javaw.exe -Xmx512m mainclass をプロセス起動して落ちるだけのクラスを書いてマニフェストの実行クラスに指定すればよい
340 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 00:31:55 ] 環境依存の動作を、アプリ側でなんとかするなんて無理なんだよ。 サンがそういう実装してるから無理じゃね。 個人的にはsjis自体抹殺したいけどな。 日本語単一なら7ビットのJISでいいじゃん。メールにもそのまま使えて無変換で問題が無い。 いちいち変換するから文字化けする。
341 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 00:39:45 ] 知らないならレスしないでください。ウザいだけです。
342 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 00:42:19 ] >>341 Win32API質問スレへの誤爆ですか? ウザイだけなので輸入してこないでください。
343 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 09:25:15 ] >>327 windows-31jでバイト列にして、それをバイト列でEUCに変換すればいい じゃん。10〜20行ぐらいで書けるよ。
344 名前:デフォルトの名無しさん [2009/02/02(月) 09:32:25 ] おはようございます。 Jpegの画像を読込んで定義してあるカラーに一番近いカラーを判別したいのですが何か 良い方法は無いでしょうか。 画像を読込んでピクセル毎の情報は取得できています。 で、そのRGB情報を使用して判別したいと思っています。 定義カラー(例) ・黒 ・赤 ・茶 ・緑 ・白 黒っぽい→黒 茶色っぽい→茶色
345 名前:デフォルトの名無しさん [2009/02/02(月) 10:28:52 ] javaに関係あるんですか?
346 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 11:05:39 ] javaとは直接関係ないね。。 RGB情報取得できません。ってんならjavaの領分だがw
347 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 11:24:53 ] ジェネリックなクラスの配列を作ろうと思うんですが、ある本(Javaによる アルゴリズムとデータ構造)のサイトにある解答には、 public class Gqueue<E> { private E[] que; que = (E [])new Object[max] …… } と書いてありましたが、これってどういう解釈をすればいいんでしょうか。 キャスト?の意味が良くわからないんですが。。。
348 名前:344 mailto:sage [2009/02/02(月) 11:44:59 ] 確かに直接Javaとは関係なかったですねすいません。 何か使えるクラスがあったらと思いました。 ColorModelとか組み合わせて試してはいるもののいい案が浮かびませんでした。 jimiとかも含めてもうちょっと見てみます
349 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 16:24:11 ] >>347 試してみれば分かるけど、 que = new E[max] とは出来ないんだな。あとは以下参照。 www.ibm.com/developerworks/jp/java/library/j-jtp01255/
350 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 17:22:14 ] >>349 そんな感じでやったらエラーが出て、答えを見てもよくわからないという状態でした。 ご指摘のページの半分も理解できませんが、勉強してみます。ありがとうございます。
351 名前:デフォルトの名無しさん [2009/02/02(月) 18:23:24 ] ナローバンドな俺にとって100MBなEclipseは無理 だから仕方なくNetBeans使ってんだけど、 Eclipseの方が高機能・・・だよね。。
352 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 18:24:12 ] あ、sageてなかった・・・
353 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 18:33:33 ] >>351 寝る前にDLはじめとけよ
354 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 18:34:01 ] >>344 肌色を検出するような課題があるから、そういうのの応用で出来るんじゃないか?
355 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 19:16:31 ] 質問です。 「台形の面積を求めるクラスを定義し、 これらのインスタンス変数を初期化し、 図形の面積を計算するコンストラクタを用意し、 台形の面積を表示しなさい」 という課題が出ました。 授業を聞いてましたが全然分かりません。 どなたか教えてください。
356 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 19:25:27 ] >>355 ★★ Java の宿題ここで答えます Part 67 ★★ pc11.2ch.net/test/read.cgi/tech/1232627790/ しかしひでえ課題だなw
357 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 19:41:06 ] なんという潔さw 惚れてしまうではないかw
358 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 19:54:11 ] >>356 失礼しました どういう意味で「ひどい」なんですか?
359 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 19:57:08 ] ここで質問すべきか微妙ですが質問させてください 今度部署にJava初心者の方が3名来られました Javaを教えよとの命令が飛んできたのですが、何を教えればいいかわかりません とりあえず、人数分独習Javaでも買おうかと思いましたが、予算凍結により新たな備品購入を禁じられてしまいました そこで、Webページと自作の課題を駆使して目的を達成したいのですが、参考になるページや問題などありましたら教えていただければ幸いです ちなみに3名ともプログラム経験は5年以上でC言語とC++をやってたそうです 私の部署ではJava6を使うことになっているので、Java5.0で入ってきたジェネリクスが必須となっております よろしくお願いいたします 以上
360 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 20:03:25 ] >>359 本ぐらい、当人たちに買わせれば良いだろ、ボケ
361 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 20:05:27 ] 改行コードについての質問です。 以下のようなプログラムを書きました。 StringBuffer buf = new StringBuffer(); List lines = org.apache.commons.io.FileUtils.readLines(new File(filename), "SJIS"); Iterator i = lines.iterator(); while(i.hasNext()){ String line = (String)i.next(); /* 〜lineを加工する処理〜 */ buf.append(line + "\r\n"); } org.apache.commons.io.FileUtils.writeStringToFile(new File(newFilename), buf.toString(), "SJIS"); Windows上でコンパイルしWindows上で実行すると、 SJIS(CRLF)のファイルを読み込みSJIS(CRLF)のファイルを出力します。 Windows上でコンパイルしたものをSolaris上で実行すると、 SJIS(CRLF)のファイルを読み込みSJIS(CRCRLF)のファイルを出力します。 "\r\n"を"\n"にすると、Windows上ではSJIS(LF)のファイルを出力しました。 "\n"だとSolaris上ではSJIS(CRLF)のファイルを出力するのでしょうか(Solaris環境がないので試すことができません) また、どのように対処することが一番自然なのでしょうか
362 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 20:07:00 ] >>359 なんか作らせて、ソースレビューしてやればいいじゃん 会社のPCがインターネットに繋がってグーグル使い放題なのが前提だけど
363 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 20:12:03 ] >>361 SolarisっていうかUNIX上はLFが改行コードだから、CRは普通の文字として扱われているんでしょ。 オマエが食わせてるファイル(filename)の中身がCRLFで改行しているから、 一行の内容として hogehoge+CR+改行(LF) と解釈して、lineの中身はhogehoge+CR 更にオマエのコードでCRLFを追加したら、 hogehoge+CR+CRLF
364 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 21:42:09 ] >>359 >予算凍結により新たな備品購入を禁じられてしまいました 人件費はタダだと思ってるんだろうな
365 名前:361 mailto:sage [2009/02/02(月) 21:45:34 ] >>363 ありがとうございます。 Linux上で上記ソースをコンパイル&実行したところ、 SJIS(CRLF)になりました。 Linuxも改行コードはLFだと思うのですが(文字コードはEUCです)、モノによって動作が異なるということでしょうか? (Windowsでコンパイルしたらまた違う結果?) そもそもWORAを実現するためにはどのようなソースを書けばよいのでしょうか?
366 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 21:51:27 ] >>365 読み込ませるファイルはどうやったの? SJIS(CRCRLF)なった場合のファイルをそのサーバ上で、バイナリでみて、 Linux上のファイルも同様にバイナリで開いてみて、 改行コードがどうなってるか確認しろ。
367 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 21:51:40 ] C#ってゲーム作ってユーザーにそのファイルを配布したら かんたんにソースコードを見られてしまうけど、 javaの場合はどうなの? 専用のツールとか使うとすぐにコードを 見られてしまうの?
368 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 21:53:07 ] 簡単に見られるっす
369 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 21:58:25 ] >>368 まじで? 防ぐ方法とかってないの?
370 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 22:00:59 ] 難読化って手段があるらしいがやったことないからわかんね。
371 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 22:08:00 ] たいていの場合ソースを見られることを防ぐメリットはない
372 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 22:09:20 ] 専用のツールも何もJDK付属のjavapで十分見えるじゃん
373 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 22:09:25 ] それでエクリプスとかは最初からオープンソースなわけだな。 隠してもすぐに見られてしまうから。
374 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 22:23:05 ] eclipseがオープンソースな理由はそうではないと思うぞw あれはプラットフォーム依存部分も結構あるから そういったソースを隠せばカジュアルハックは結構阻止できるだろ
375 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 22:25:06 ] >>373 隠しても見られてしまうからってあえて公開する必要もないだろw
376 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 22:26:45 ] eclpseがossなのはIBMが金儲けするためじゃないっけ?
377 名前:361 mailto:sage [2009/02/02(月) 22:44:59 ] >>366 >読み込ませるファイルはどうやったの? WindowsからFTPとSambaで持ってきました。 (もちろんFTPはBinaryで) >改行コードがどうなってるか確認しろ。 上記、バイナリで0x0d, 0x0aを確認した結果です。
378 名前:361 mailto:sage [2009/02/02(月) 22:50:54 ] Javaのversionのせいでしょうか? WindowsとSolarisはSunの1.4.2だったと思います。 Linuxに入っているJavaは下記です。 java version "1.7.0" IcedTea Runtime Environment (build 1.7.0-b21) IcedTea Server VM (build 1.7.0-b21, mixed mode)
379 名前:デフォルトの名無しさん mailto:sage [2009/02/02(月) 22:50:58 ] >>365 改行コードを自分で¥nとか足さないで、↓を使うといいかもしれない。 BufferedWriter#newLine()
380 名前:361 mailto:sage [2009/02/02(月) 23:15:55 ] >>379 ありがとうございます。 newLine()は「OSに適した改行コードを出力する」とありますが、 今回の場合にはSolaris上で(どのOS上でも)CRLFを出力したいのです。 あと、LinuxにSunの1.6.0_11を入れて実行してみましたが、 >>361 のソースでCRLFとなりました・・・
381 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 01:21:21 ] >>357 willcomのx4で某ギガパッチ落とした俺を見習え!
382 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 01:21:55 ] >>351 ね
383 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 02:13:21 ] ネットビーンズはjavascriptのサポートもいけてるらしいぞ あと標準でswingのポトペタ開発ができるとも聞く
384 名前:Joseph O’Neil mailto:sage [2009/02/03(火) 02:28:56 ] Hey ! I am Joseph O'Neil. Japanese excelent programmer, Did you read my book? The book name is [Teach yourself Java]. That one is my most like book I ever write.So you don't read this book, I recommend you reading this book. Good night.
385 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 04:00:57 ] >>384 >>359
386 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 17:25:08 ] Javaからシェルを起動するには Runtime r=Runtime.getRuntime().exec("シェル名") でいいようですが、 オプション(-fとか-tとか)を与えて起動するにはどのようにすればよいのでしょうか? また、このシェルのパス(c:/shell/shell.shとか/usr/local/shell/shell.shとか)を指定したい場合どうすればよいのでしょうか?
387 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 17:38:37 ] execの中で指定する
388 名前:386 mailto:sage [2009/02/03(火) 18:09:09 ] >>387 ググったら www.stackasterisk.jp/tech/javaClassref/java_ref_01_04.jsp www.smg.co.jp/JavaTroubleshooting/trouble011Phenomenon.html といったページがでてきましたが、 String[] str=("bin/sh","-exec -f hoge -t hage","c:/shell/shell.sh") Runtime r=Runtime.getRuntime().exec(str) といった感じでよろしいでしょうか? また、今回実行するのはbash(一行目に#!/bin/bashとあった)のようなのですが、 その場合/bin/shが/bin/bashになるのでしょうか? 正直な話、bashって何? 他いろいろ種類あるし何が違うの? 状態なので的外れなこと言ってたらすみません
389 名前:デフォルトの名無しさん [2009/02/03(火) 19:01:53 ] ↑すれ違い
390 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 19:02:29 ] >また、今回実行するのはbash(一行目に#!/bin/bashとあった)のようなのですが、 >その場合/bin/shが/bin/bashになるのでしょうか? そら使うシェルが違うんだし/bin/bashになる でもWindowsでsh/bashスクリプト使用できるの??そこが疑問。 >正直な話、bashって何? 他いろいろ種類あるし何が違うの? bashはshの拡張シェルでLinuxの標準シェル shはボーンシェルと言われるもの、汎用的なスクリプトはこいつで書く csh/tcshはC系シェルでこいつではスクリプトは書かない、理由は「csh-whynot」でググれ
391 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 19:12:17 ] >c:/shell/shell.sh 書き方がWindowsっぽいけどシェル動かすって。。。 激しくスレ違いだな
392 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 20:58:13 ] ある本にSystem.out.print()メソッドを使うと、System.out.flash()をしないと表示されない、と 書いてあったのですが、 System.out.print("テスト"); とだけ書いても普通に表示されました。どういうことなんでしょう?
393 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 21:02:05 ] >>392 ?? どの本? 出力ならSystem.out.print()メソッドだけど?
394 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 21:08:17 ] >>392 「flushしないと表示されない」でなくて 「flushしない場合は必ずしも表示されるとは限らない」の間違いじゃね? System#out 見ても必ず自動的にフラッシュされる、とは書いてないし。
395 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 21:48:30 ] ttp://code.google.com/p/cmecab-java/wiki/HowToInstall このページを参考にjavaでmecabを使用しようとしているのですがエラーが出てしまい動きません ライブラリパス等も一応確認したと思うのですが、初心者なもので javaのライブラリパスやMeCabのライブラリがどこを挿しているのか等は今ひとつ理解できていないかもしれません エラー内容は Exception in thread "main" java.lang.NoclassDefFoundError: net/moraleboost/mecab/Tagger となっています。
396 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 21:50:52 ] flashだし違う言語なんじゃない?
397 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 22:08:30 ] >>393 ちょっと古いんだけど、「Javaで学ぶアルゴリズムとデータ構造」という本。 JavaのVersionが古いときの話とかでしょうか。Eclipse3.4でやってますが。 >>396 失礼氏やした
398 名前:デフォルトの名無しさん [2009/02/03(火) 22:15:15 ] >>392 細かいけど、一応あってる
399 名前:デフォルトの名無しさん mailto:sage [2009/02/03(火) 22:33:44 ] 質問です。 JFrameで作ったフレーム(親フレーム)から新たにJFrameで作ったフレーム (子フレーム)を呼び出しました。 その子フレームに「×」ではなくJButtonでフレームを終了させるボタンを 作りたいんですが、どうしたらいいでしょうか? 試しにアクションリスナにSystem.exit(0);を入れてみたら親フレームごと 消えてしまいました・・・。 JFrameのsetVisible(false);を入れて試してみましたが、非表示になってくれませんでした。
400 名前:388 mailto:sage [2009/02/03(火) 23:23:27 ] >>390 疑問に答えていただきありがとうございました なお、実機環境はLinuxなので問題ないはずです >>391 さんにも勘違いさせてしまったようなので次に質問があるときは もう少しわかりやすく書くことを心がけたいと思います
401 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 00:05:40 ] ボタンを押すとボタン付きのフレームを生成するような機能を classを分けて実装したいのですが上手く行きません 調べてもさっぱりなのですがどのようにすれば上手く行くのでしょうか
402 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 00:15:26 ] オブザーバーパターンとか?
403 名前:デフォルトの名無しさん [2009/02/04(水) 00:53:33 ] 非常に初歩的な質問なのが聞いてください。 eclipseをインストールして、日本語化パックをいれても うまく日本語表示になりません。中国語になります。 またall in one eclipseをインストールして、表示を日本語に設定しても (インストール時に表示されるダイアログにより)日本語になりません。 eclipse起動時に中国語になります。 これはどういったことが考えられるんでしょうか?
404 名前:デフォルトの名無しさん [2009/02/04(水) 01:08:02 ] 非常に初歩的な質問なのですが聞いてください。 Iteratorインターフェースでコレクションクラスの要素をすべて削除するメソッドを作ったんですが Iterator it = XXX.iterator(); while(it.hasNext()==true){ it.next(); it.remove(); } これだとすべての要素が削除されるのか hasNextでtrueだった要素の次から削除されるのかどっちでしょうか?
405 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:14:00 ] >>404 すべて それより==trueは、馬鹿に見えるからやめたほうがいい。
406 名前:デフォルトの名無しさん [2009/02/04(水) 01:18:54 ] >>405 なんですべてなの? なんで馬鹿なの?
407 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:22:44 ] next は次の要素を返すので Iterator it = XXX.Iteragor(); while (it.hasNext()) { Iterator next = it.next(); it.remove(); it = next; } になるんでない?
408 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:26:47 ] >>403 日本語化パックが正しいかどうかだ
409 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:26:54 ] ていうかイテレータでぶん回してる最中のremoveって正常動作保証されてるんだっけ?
410 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:26:57 ] >>406 > なんで馬鹿なの? オマエだって、 while((it.hasNext()==true)==true){ って書いてあったら頭おかしいって思うだろ?
411 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:28:17 ] >>407 next()はイテレータを進めてその要素のObjectを返す。
412 名前:デフォルトの名無しさん [2009/02/04(水) 01:28:36 ] >>410 そこはいいよ ところでなんですべてなの?
413 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:29:05 ] >>409 されてる。保証できない場合は例外を投げることになってるよ。
414 名前:デフォルトの名無しさん [2009/02/04(水) 01:29:30 ] >>411 わかった乙 トン
415 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:30:06 ] >>399 子フレームって別ウィンドウじゃないん? 親フレームにaddで足してるなら、親フレームからremove(comp)で消せないかね? compは子フレームね
416 名前:デフォルトの名無しさん [2009/02/04(水) 01:32:16 ] おい。でぶさみを名古屋でも開催しろ。馬鹿。
417 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:33:37 ] >>412 hasNext()がfalseなら、もう次は無いってことだろ。
418 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:39:59 ] XYZ・・・もうあとがない
419 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:43:03 ] >>411 なるほど。 で、最初の next の呼び出しで得られる要素は 最初の要素になるのかな?
420 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 01:47:09 ] そそ、C++のSTLとは反対だ
421 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 02:08:58 ] >>399 なんでソースを隠したがるのか分からないが、 つたない言葉で説明されてもなんだか分からないよ。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8812.zip
422 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 02:54:45 ] オブジェクト指向というものを講義で習いました。 その中で「再利用性」というものが挙げられていましたが、 オブジェクト指向言語であるJavaでは、 実際どういったクラスオブジェクト(言葉が正しくないかもしれません)が、 どのようにして再利用されているのでしょうか? 再利用できそうなクラスが、一般的に公開され、 利用されたりもするのでしょうか? それとも、再利用とは言っても、 閉じた組織の中で、似た機能を持たせるときに再利用するだけなのでしょうか? かなりわかりにくい質問ですが、回答よろしくお願いします。
423 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 03:03:01 ] >>422 ライブラリとか、フレームワークと呼ばれるものは大体そう。 再利用はオブジェクト指向に限ったことではないが、 きちんと分けて、きれいに並べてあれば、再利用はしやすい。 オブジェクト指向の仕組みは、そういうことを助けてくれる。
424 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 03:10:34 ] >>422 あなたが使ってるJavaの標準ライブラリが、再利用できるプログラムの代表例 もっと言うと、大抵のプログラムに必要な普遍的な部品を、オブジェクト指向的な発想のもとに集めた物になる まあ世界中で使われてるだろうね 再利用というのはオブジェクト指向に限った発想ではないけど 特にオブジェクト指向だと、プログラム中から再利用できる部分を切り出しやすい(こともある)、 という程度の意味
425 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 03:50:32 ] 設計が糞だと、再利用するより、自分でヲレクラス書いたほうが速かったりするけどね。 車輪の再発明状態で敗北感味わうけどしょうがない。
426 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 04:16:01 ] エロゲエンジンなんて再開発だらけだぜ
427 名前:デフォルトの名無しさん [2009/02/04(水) 04:36:51 ] 再利用性とかなんの言語でもありそうだけど
428 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 04:57:20 ] >>425 自分クラスを作成し使用していたら、言語のバージョンアップとともに悲鳴を上げるんですね、わかります。
429 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 05:29:57 ] >>428 経験あるけど、修正が大変だよねぇ
430 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 06:10:13 ] 自分クラスを作成し他人にうっかり使用を許したら、その後メンテや 機能拡張で長い間その世話をさせられた。
431 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 11:47:14 ] >>422 すでにレスが入っているが、 もしその再利用性の説明の重点がクラスの継承に関する物であるならば要注意 現在のオブジェクト指向においては、継承による再利用というのはあまり一般的でない というか再利用のための安易な継承はトラブルを招きやすいのでむしろ避けた方がいい で、それ以外の観点の再利用性というのは、とくにオブジェクト指向に限った話ではないので 再利用性というのはあまり意識しなくても良いと思う まあ、テストに出たら書かざるを得ないがw
432 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 16:46:10 ] バラバラに作って貼り合わせる の繰り返し
433 名前:デフォルトの名無しさん [2009/02/04(水) 20:28:01 ] public class sample300 { public static void main(String[] args) { int i [] ={6,5,4,3,2}; System.out.println("最大値" + sample300(i)); System.out.println("最小値" + sample300(i)); System.out.println("平均値" + sample300(i)); } static int sample300(int[] array) { int max = array [0]; int min = array [0]; int sum = array [0]; for (int i = 1; i < array.length; i++) { max = Math.max( max, array [i]); min = Math.min( min, array [i]); sum = sum/(array [i]); } return max; return min; return sum } } 最大値、最小値、平均値を出すプログラムをなんですがSystem,out.printlnのところが違うのはわかるのですが 間違っているところがありましたら教えていただきたいです。初歩的な質問ですいません
434 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 20:30:27 ] >>433 違うのがわかってるならそこ直してから貼り付けろよ
435 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 20:51:51 ] System.out.println("最大値" + sample300(i)); System.out.println("最小値" + sample300(i)); System.out.println("平均値" + sample300(i)); のsample300(i)は何をどうやって最大値と最小値と平均値を見分けて適切に出力してくれてるんだろうね? ってあたりから疑問に思ってもらいたいね。 せめてさ。 独自仕様のJavaというならもう知らん。
436 名前:433 [2009/02/04(水) 20:55:36 ] >>434 すいません、そのまま貼ってしまいました。 すでにいろいろ試してはみたのですが・・
437 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 20:55:53 ] C# とかなら yield 使えばその書き方でも最大値・最小値・平均値出力できるけどな。 まあスレ違いだし当該言語でもそんな書き方はしないが。
438 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 21:07:12 ] >>433 とりあえず横着しないで、sample300メソッドをmax300・min300・avg300の 三つのメソッドに分けるところからやってみれば? メソッドは基本的に基本型の値orオブジェクトを1個しか返せない。 無理に最大値・最小値・平均値の三つの値を同時に返そうとして いるからはまるわけで。
439 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 23:23:59 ] ファイルの書き込みに関して質問があります. 巨大なのデータ(2ギガ以下)をファイルに出力するプログラムを作ってます. 一度に全ての作業を行うにはかなりの時間がかかるので,一旦作業を中断して再起動後に書き込みを再開できる機能を追加しようと思ってます. その際に,ファイルの末端に今回はどこまで作業を行ったのかを書き込み, 次回,作業を再開する場合には末端の情報を読み込んで前回の作業を再開させようと考えてます. なお末端の作業の情報は32バイトの固定長です. そこで質問がありますが,現在BufferedOutputStreamでファイルの書き出しを行っています. BufferedOutputStreamの書き込みのポインタを,ファイルの末尾から32バイト戻って追加書き込みする必要がありますが BufferedOutputStreamのポインタ指定はどうやってやるのでしょうか?
440 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 23:39:14 ] > ファイルの末尾から32バイト戻って追加書き込みする必要がありますが これファイルの末尾32バイトが消えちゃうけどかまわないんか? > BufferedOutputStreamのポインタ指定はどうやってやるのでしょうか? BufferedOutputStreamじゃ無理。 RandomAccessFile みたいに書き込み位置操作できるクラス使え。
441 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 23:47:49 ] >>439 protectedメソッドのbufとcount操作すれば運がよければ32バイト巻き戻せるかもしれないけど 必ず32バイト巻き戻せるとは限らない。 確実にやりたいなら>>440 が言うようにRandomAccessFile使うほうが無難。
442 名前:デフォルトの名無しさん mailto:sage [2009/02/04(水) 23:48:29 ] ×protectedメソッド ○protectedメンバ
443 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 00:25:05 ] >440 >441 RandomAccessFileは調べてみたらストリームじゃないのでバッファリングされないようで, 一文字ずつ処理されるようなんですけどそれでギガ単位のファイルを扱うにはちょっと難があります. 何か良い方法はないでしょうか? >441さんの方法はちょっと怖いので最後の手段にしたいです.
444 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 00:35:11 ] >>443 件の32バイトは別ファイルに保存でどうだ
445 名前:439 mailto:sage [2009/02/05(木) 00:59:11 ] >444 32バイトだけRandomAccessFileで上書きしてそこから先はBufferedOutputStreamで追記することにします. たしかファイルへの追記はStream関連のクラスで昔やった記憶があるので 多分うまくいくでしょう. どうもありがとうございました.
446 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 01:06:52 ] >>443 RandomAccessFileのバイト配列の読み書きじゃダメなのか?
447 名前:デフォルトの名無しさん [2009/02/05(木) 01:38:49 ] java.io.BufferedReaderって何?
448 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 01:40:16 ] >>444 自分もこれを強くリコメンド。 たかだか32バイトのために巨大ファイルの取り回しを無駄に 複雑にする事もないかなと。
449 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 02:13:58 ] 質問です。 フレームにパネルを貼り付ける際に、どのフレームに貼り付けるか という指定はできないのでしょうか? ボタンの押したときにアクションリスナーの中で2つ目のフレームを作るようなプログラムを作ったのですが、 元々あったフレーム内のパネルが、ボタンを押して作った2つ目のフレームに残ってしまいます
450 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 02:38:54 ] >ボタンを押して作った2つ目のフレームに残ってしまいます これはコードの書き方が悪い気がする。 コンポーネントを張り付けてないフレームを表示したら(setVisible(ture))中身が何もないフレームが出てきたはずだが。
451 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 03:18:22 ] >>450 ありがとうございました、解決しました。 一つ目のフレームはJFrameをextendしたクラス名を使って クラス名 frame = new クラス名(); として呼び出していましたが、コンストラクタでパネルを配置していたので、 二つ目のフレームも同様に生成した所、そのコンストラクタがまた呼び出されていたのかもしれません JFrame frame =new JFrame(); で新しいフレームを試した所、中身のないフレームが表示できました。
452 名前:デフォルトの名無しさん [2009/02/05(木) 06:31:22 ] >>435 、437、438 ご指摘ありがとうございます、また試してきます。
453 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 12:00:09 ] ちょっと質問 public <T> boolean isHoge(T t) と定義したメソッド内でTのClassを調べたいんだが、どうしたらいいんだろう? T instanceof Hoge とかできたらいいのに・・・
454 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 12:33:08 ] >>453 t.getClass()
455 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 15:40:50 ] >>453 コードで直接指定されたTの型を知るのは原理的に不可能
456 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 15:44:55 ] ジェネリクス使うのに T の型情報が必要な理由がわからん
457 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 15:47:04 ] できたらできたで結構使い道はあるんだよなこれが
458 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 16:09:21 ] jdk1.3の環境でJakartaのpoi3.0を利用してExcelファイルの操作をしています。 対象ファイルがユーザによって開かれている場合は、その旨のメッセージを出力して終了したいのですが、 対象ファイルがネットワーク上の共有フォルダにあると、ユーザが開いていてもお構いなしにファイルに書き込みをしてしまいます。 ユーザがファイルを開いているかどうかのチェックはできないでしょうか?
459 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 16:14:58 ] >>457 そんなことはまったくない。Genericsについて勉強した方がいいな。
460 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 16:26:06 ] リフレクションが絡んでくるとTからClass<T>が取れれば便利 Class<T>なんかいちいち引数に渡さないといけない時点で明らかに無理がある
461 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 16:41:51 ] Class<String> c = String.class; これじゃだめなん?
462 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 16:50:18 ] >>453 PropertyDescriptor pd = new PropertyDescriptor("hoge", o.getClass()); Method rm = pd.getReadMethod(); Type[] tlist = rm.getGenericParameterTypes(); Typeとやらを取ってこれるようだが
463 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 16:52:39 ] isHogeが呼び出された時に,実際にTに指定された型は何なのか動的に知りたいんだろ 断言する。絶対無理。
464 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 16:53:49 ] PropertyDescriptor pd = new PropertyDescriptor("hoge", o.getClass()); Method rm = pd.getReadMethod(); Type[] tlist = rm.getGenericParameterTypes(); Type t = tlist[0]; if (t.getClass() instanceof fuga) { } これで一応望みどおりの処理だろうか? 動かしてないから動くかどうかわからん
465 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 17:20:22 ] >>463 それ考えたことあるんだけど実際使う場面はなかった。例えばどういうときだと知りたいの?
466 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 17:34:08 ] >>464 プロパティのパターンに則ってないから、 new PropertyDescriptor がアクセサメソッド見つけられんと思う。 あと、reflection使っても同じだけど、 <T> isHoge(T t) みたいな場合は T が具体的に何の型かでなくて T という総称型を使ってるよって情報が得られるだけのような。
467 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 17:46:23 ] import java.lang.reflect.Method; import java.lang.reflect.Type; public class GeneSample { public static void main(String[] args) { GeneSample g = new GeneSample(); System.out.println(g.isMage(g)); System.out.println(g.isMage(new GeneSample2())); } public <T> boolean isMage(GeneSample t) { try { Method rm = this.getClass().getMethod("isMage", t.getClass()); Type[] tlist = rm.getGenericParameterTypes(); Type type = tlist[0]; System.out.println("Type = " + type); System.out.println("type.getClass() = " + type.getClass()); System.out.println("t.getClass() = " + t.getClass()); if (type.equals(t.getClass())) { return true; } } catch (Exception e) { e.printStackTrace(); } return false; } } class GeneSample2 extends GeneSample { }
468 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 17:48:17 ] >>467 の実行結果 Type = class GeneSample type.getClass() = class java.lang.Class t.getClass() = class GeneSample true java.lang.NoSuchMethodException: GeneSample.isMage(GeneSample2) at java.lang.Class.getMethod(Class.java:1605) at GeneSample.isMage(GeneSample.java:14) at GeneSample.main(GeneSample.java:8) false 作ってみたけど、サブクラスをパラメーターに渡すともう自分のメソッドとれないね。 あと<T>ってなに?意味わかんない
469 名前:デフォルトの名無しさん [2009/02/05(木) 18:28:41 ] class GeneSample を知りたいんじゃなくて<T>の型の正体を実行時に動的に知りたいんじゃないの?
470 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 19:10:43 ] import java.io.*; と書くのと import java.io.BufferedReader; import java.io.File; ・ ・ では、どっちが速くなるの もしかして、コンパイルするスピード以外は変化がないのかい?
471 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 19:17:41 ] >もしかして、コンパイルするスピード以外は変化がないのかい? yes つか、できたclassファイルを見てみればすぐに分かる事
472 名前:デフォルトの名無しさん [2009/02/05(木) 19:23:54 ] 何Hogeって
473 名前:デフォルトの名無しさん [2009/02/05(木) 19:29:05 ] お前らって結構マニアックな標準クラスを知ってるけど そういうのいちいち調べてるの?それとも頭の中に入ってるの?
474 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 19:45:56 ] 一度使えば覚えてるもんだろ。 それにそんなに特別なクラスがこのスレで出てきたことあったっけ?
475 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 19:46:42 ] >>469 それが>>467 で作ってみたけど無理だったって事じゃね? メソッド検索時にパラメーターの型を渡さないといけない。 Class#getMethodsで一覧は取れるけど、同じ名前のメソッドはいくつでも作れるし。 this.getClassみたいにthis.getMethodができたらいいのにね
476 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 19:56:53 ] >>471 thx
477 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 20:06:18 ] >>475 たしかに <T> boolean isHoge(T t) の T が何かを調べるのは凄く面倒だけど、 >>467 の場合はリフレクションの使い方の部分で間違ってて 宣言してない isMage(GeneSample2) を検索して失敗してるわけで、 >>467 だけから >>453 が面倒だ、とは言えない罠
478 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 20:14:00 ] そもそも存在しない情報をどうやって取ってくるんだ
479 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 20:17:26 ] classファイルに存在しないってだけでソースみりゃわかるでしょ
480 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 20:17:40 ] >>477 >たしかに <T> boolean isHoge(T t) の T が何かを調べるのは凄く面倒だけど、 >>>467 だけから >>453 が面倒だ、とは言えない罠 壮絶に矛盾してないか? 自分のメソッド名も指定しないとメソッドとってこれないし。 自分のメソッドをthis.getClassみたいに取得する方法がないと無理だべ
481 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 20:18:42 ] どこが矛盾なのかわからん。
482 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 20:20:36 ] む、たしかに矛盾してないな 1行目は面倒だと宣言 4行目の面倒だと言えないで矛盾してると思った俺の頭の中がもうだめだ
483 名前:デフォルトの名無しさん [2009/02/05(木) 20:24:05 ] 初心者です。宜しくお願いします 今迄使っていたチャットが表示できなくなったのでjavaを再インストールしました。 ところが、そのチャットのページを開くと 「java アプレットキャッシュをアップグレードしています。 格納されている java アプレットが java SE 6 用に更新されるまでお待ちください。」 という表示が出て、DL進行度のバーみたいなのが途中まで伸びたかと思うとすぐ表示が消えてしまいます ページを更新するたびにこの表示が出て、なおかつチャットも表示できません。 こういった場合の解決法を教えてください
484 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 20:49:01 ] ゲッターとセッターの質問なのですが class GetterAndSetter { private Map mapA = HashMap(); public map getMapA() { return mapA; } public void setMapA( map mapA ) { this.mapA = mapA; } } を作ったとして classAで GetterAndSetter oj1 = new GetterAndSetter(); クラスAでmapBを作って以下のようにセッターでセットしたものを oj1.setMapA(mapB); 別のclassBからゲッターを使ってclassAでセットしたmapBを取得して使いたいんですが どのように記述すれば良いのでしょうか? ご指導のほど宜しくお願い致します
485 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 20:55:53 ] >>484 oj1 を classB のインスタンスに渡す。
486 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 21:18:59 ] >>485 早速の回答ありがとうございます 質問の仕方が下手くそでしたすみません。 クラスBで下記のように書いた場合 GetterAndSetter object = new GetterAndSetter(); Map mapC = object.getMapA(); oj1の渡し方の記述がわかりません 宜しくお願い致します
487 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 21:29:29 ] >>486 複数のインスタンスで共通の値を使いたいなら static でクラスに紐付けする。 一つのクラスに対して一つのインスタンスに限定したいなら、「シングルトン (Singleton)」で。
488 名前:デフォルトの名無しさん [2009/02/05(木) 21:44:07 ] 何をやりたいかちゃんと書いたらどうだ? 意味が分からないんだがメソッド名が欲しいから<T>を知りたいのか?
489 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 21:45:32 ] >>486 class B { private GetterAndSetter obj; public void setGetterAndSetter(GetterAndSetter obj) { this.obj = obj; } public void doSomething() { Map map = obj.getMapA(); // Your code here... } }
490 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 21:55:06 ] >>487 ,489 シングルトンに挑戦してみたいと思います ご回答ありがとうございました!
491 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 21:57:19 ] >>488 >TのClassを調べたい が目的なんだろ
492 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 21:58:47 ] シングルトン≒グローバル変数 いまは意味解らなくていいからシングルトン使うときには常にこれを念頭に置いておくんだぞ
493 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 22:08:14 ] javaだと単にstatic fainal classにしてコンストラクタをprivateにして(中略)してゲッター持たせるだけじゃないか?
494 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 22:09:19 ] >>492 だけみたら蹴り飛ばしたくなるレスだ
495 名前:デフォルトの名無しさん [2009/02/05(木) 22:47:30 ] どうせオッサンの寝言だろw
496 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 22:52:03 ] >>491 なんに使うのか、皆目わからん
497 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 23:02:55 ] つ 手段が目的
498 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 23:07:29 ] >>492 を無理やり意訳すると javaにはグローバル変数がない→static classで代用、あとは普通にシングルトン実装。 つまり>>493 になる。だがまて、>>493 から>>492 へは不可逆だぞ。
499 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 23:39:01 ] >>467 こうとか? import java.lang.reflect.Method; import java.lang.reflect.Type; public class GeneSample { public static void main(String[] args) { GeneSample g = new GeneSample(); System.out.println(g.isMage(g)); System.out.println("---"); System.out.println(g.isMage(new GeneSample2())); } public <T> boolean isMage(GeneSample t) {//この<T>は、どこにも使われていない? try { System.out.println(t.getClass()); Method rm = t.getClass().getMethod("isMage", this.getClass()); Type[] tlist = rm.getGenericParameterTypes(); Type type = tlist[0]; System.out.println("Type = " + type); System.out.println("type.getClass() = " + type.getClass()); System.out.println("t.getClass() = " + t.getClass()); if (type.equals(t.getClass())) { return true; } } catch (Exception e) { e.printStackTrace(); } return false; } } class GeneSample2 extends GeneSample{ }
500 名前:デフォルトの名無しさん mailto:sage [2009/02/05(木) 23:40:14 ] >>467 あるいはこうとか? import java.lang.reflect.Method; import java.lang.reflect.Type; public class GeneSample { public static void main(String[] args) { GeneSample g = new GeneSample(); System.out.println(g.isMage(g)); System.out.println("---"); System.out.println(g.isMage(new GeneSample2())); } public <T extends GeneSample> boolean isMage(T t) {//この<T>は、どこにも使われていない? try { System.out.println(t.getClass()); Method rm = t.getClass().getMethod("isMage", this.getClass()); Type[] tlist = rm.getGenericParameterTypes(); Type type = tlist[0]; System.out.println("Type = " + type); System.out.println("type.getClass() = " + type.getClass()); System.out.println("t.getClass() = " + t.getClass()); if (type.equals(t.getClass())) { return true; } } catch (Exception e) { e.printStackTrace(); } return false; } } class GeneSample2 extends GeneSample{ }
501 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:03:59 ] >>499 >>500 やっぱ意味ないよなぁ ただメソッドの一覧を出したいだけなら>>475 でいいし 自分のメソッド情報となると無理やりな実装しかないし こうやってコネコネ遊んでる分には楽しいけど
502 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:08:46 ] オナニーは気持ちいいけど鳩時計しか産み出さないしな
503 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:09:09 ] >>496 class HogeComparatorA implements Comparator<MyClassA>{ public int compare(MyClassA o1, MyClassA o2){return o1.tehe(o2);}; } class HogeComparatorB implements Comparator<MyClassB>{ public int compare(MyClassB o1, MyClassB o2){return o1.hehe(o2);}; } って書く代わりに class HogeComparatorT<T> implements Comparator<T>{ public int compare(T o1, T o2){ String method=""; if(o1.getClass().equals("MyClassA")){method="tehe";} if(o1.getClass().equals("MyClassB")){method="hehe";} try{ return (Integer)(o1.getClass().getMethod(method,o2.getClass()).invoke(o1,o2)); } catch (Exception e) {e.printStackTrace();return 0;} }; } って書いて、 Arrays.sort(a, new HogeComparatorT<MyClassA>()); Arrays.sort(b, new HogeComparatorT<MyClassB>()); って呼び出したいのかな?
504 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:12:17 ] ちょっと今環境無くて試せないんだけど、Javaって今は日本語で変数定義できちゃったりするんだっけ? 具体的には String ほげ = "ほげ"; みたいなことできたっけ?
505 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:13:34 ] >>504 出来る。
506 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:15:37 ] >>499 まだやってたのか。何時間かかってんだ
507 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:22:50 ] >>504 Java言語仕様の字句構造の識別子の項を参照
508 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:27:28 ] 変数名とかメソッド名に困ったときは、とりあえず日本語やらカタカナで振っといて、後で直す
509 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:40:09 ] >>506 >>454 >>456 でFAだったのに、 >>457 あたりが混ぜっ返したからいけないんだろ? >>499 >>500 は、 >>477 の言う「リフレクションの使い方の部分で間違ってて」の確認かな。
510 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 00:41:29 ] >>509 ああ、オレは>>467 でも>>477 でもないよ
511 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 02:10:51 ] 今のgenericsの仕様ではあんまり意味無いかもしれないけど ランタイムサポートされてればgenericsでできることの幅も広がって Tの型を動的に取得したりするようなことはかなり重要になるよ C#とか使ってみたらわかるけどさ
512 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 02:16:57 ] Tの型を気にしないといけないってのは、そもそも設計が上手くないのでは Tの型が取れると便利な例って、例えばどんなの?
513 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 02:20:27 ] >>511 ねーよ 型とか言うな。
514 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 02:23:25 ] 自分のメソッドのTの型を取るのか? 自分のメソッドに限定しないなら、Class#getMethodsで全部とってくれば、 好きなだけTの型を調べられる。 今のジェネリクスだと、自分のメソッドに限定した時点で、 自分のメソッド名をリテラルで持ってないと使えないし。 C#にはthis.getMethodに相当する物があるんだろうか
515 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 02:44:47 ] C#ならType type = typeof(T);で終わりだからな たとえばTの配列作るのはjavaではClass<T>受けないとできないでしょ
516 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 02:59:41 ] >>515 こゆこと? import java.lang.reflect.Array; public class GeneSample { public static void main(String[] args) { GeneSample g = new GeneSample(); System.out.println(g.isMage(g).getClass()); System.out.println("---"); System.out.println(g.isMage(new GeneSample2()).getClass()); System.out.println("---"); System.out.println(g.isMage("").getClass()); } public <T> T[] isMage(T t) {// この<T>は、どこにも使われていない? return (T[]) Array.newInstance(t.getClass(), 100); } } class GeneSample2 extends GeneSample { } ■実行結果 class [LGeneSample; --- class [LGeneSample2; --- class [Ljava.lang.String;
517 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 03:09:50 ] >>516 だからそれを余計な引数なしでT.getClass()と書けたら便利だという話だろ
518 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 03:12:31 ] それに>>516 だとTの配列が返される保証はないよね tにTの派生クラスのインスタンスが渡されるかもしれない
519 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 03:16:03 ] >>517 余計な引数って↓のt.getClass()のこと? return (T[]) Array.newInstance(t.getClass(), 100); T.getClass()は無理だが、自分で↑のメソッド作ったなら引数の型は分かる気が >>518 Tの配列で返してほしいなら、ジェネリクスの出番も必要なくね?
520 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 03:37:12 ] <T extend Hoge>のときHogeのサブクラスにキャストしたインスタンス返すメソッドを書きたいときはあるな。
521 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 04:07:39 ] すいません質問よろしいでしょうか? javaアプレットでオセロプログラムを作ったのですが、リプレイ機能を追加したく 駒の配置を随時外部データに保存するのは可能でしょうか? ローカルに保存するのは禁止されているらしいので、サーバーなどに保存など できるのでしょうか?
522 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 07:28:18 ] >>519 List<T> の toArray()、toArray(T[]) の二つの比較で T[] が余計な引数に該当するんでは? T[] がない方は Object[] しか貰えないし。
523 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 07:29:04 ] >>521 できるできないで言えばできる
524 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 07:33:29 ] >>509 >>499-500 って new GeneSample2().isMage(new GeneSample()) すると例外くらうんだけど、 これで確認になってんのか?
525 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 07:38:34 ] 無いものねだりは他のところでやって頂戴。 っていうか巣に帰れ。 メソッドのデフォルト引数を指定するだけで別のメソッド宣言をする必要があったり クラスメソッドとインスタンスメソッドで同じシグネチャの宣言が出来なかったり 仕 様 で す か ら
526 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 07:42:29 ] 誤爆?
527 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 09:03:19 ] なんだまだやってんのか。 アノテーションを勉強してるならそれを駆使すれば出来ないこともないが・・・
528 名前:デフォルトの名無しさん [2009/02/06(金) 18:00:36 ] 初心中の初心の間違いなのでしょうが //MyJava class MyJava{ public satic void main(String args[]) { System.out.println("My Java Program"); } } これの間違いを教えてくださいorz 警告見てもちんぷんかんですorz
529 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 18:01:29 ] sage忘れ・・・吊ってくる。
530 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 18:04:14 ] 他にもあるかもしれんが、とりあえず > public satic void main(String args[]) { ×satic ○static
531 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 18:05:07 ] >>528 なんて警告?(エラーじゃなくて?)でてるの?
532 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 18:07:14 ] >>530 即レス感謝です。 記述ミスとか最低レベルな自分。やはり吊ってきます
533 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 18:20:42 ] どうでもいい指摘 String args[] ↓ String[] args
534 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 18:25:54 ] そこはどちらでもいいじゃない? 推奨はあったっけ。
535 名前:デフォルトの名無しさん [2009/02/06(金) 21:38:32 ] 試しに電卓を作ってみたいんだけど どうすればいい? できれば参考サイトとかよろ
536 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 21:50:23 ] >>535 casio.jp/
537 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:01:03 ] 普通の電卓でいいなら、 ボタンとエディットボックスさえ扱えれば 普通に作れると思われ。 JavaのGUIを扱ってる基本サイトなら どこでも大抵扱ってると思われ。
538 名前:デフォルトの名無しさん [2009/02/06(金) 22:43:04 ] >>536 >>537 サンクス ボタンとエディットボックスだな!! ググってみます
539 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:45:23 ] 電卓だけど、思ってるよりもかなり難しいよ。だから慎重にやったほうがいいよ。
540 名前:デフォルトの名無しさん [2009/02/06(金) 22:52:52 ] >>539 マジっすか・・・・ 電卓くらいならと思ったんだが 甘いようだなw
541 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:53:12 ] 完璧に機能を再現しようと思えばまあそうだろうけど、 2回押しとか%とか捨てて単純に計算するだけなら大丈夫じゃね?
542 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:58:41 ] 本物の電卓って、表示内容はキーインしたのと同じ効果あるよね。 3、×、=、で9になったり。
543 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 22:58:53 ] 最初は思いつくまま気の向くままやってみりゃよかろう
544 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 23:41:36 ] 1, 2, ., 3, 4 って押して 12.34 が変数に入ればあとは簡単かな?
545 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 23:57:37 ] 最初は整数だけでいいんじゃね?
546 名前:デフォルトの名無しさん [2009/02/07(土) 00:37:11 ] どっちにしてもJAVAはあまり関係ないしC言語でやったほうがいい感じがする
547 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 00:39:00 ] GUI が楽に作れるのが Java のいいところじゃん
548 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 00:42:12 ] swingスレ行きか
549 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 00:50:58 ] ちょっとお知恵を借りたいです。 eclipseから実行するときに「-Xmx512m」オプションつけて実行してたアプリを、 jarファイルにして、以下のコマンドで動かした。 javaw.exe -jar hoge.jar -Xmx512m アウトオブメモリーが発生して動かない。 eclipseの「-Xmx512m」をはずしてみたら、jarファイルを実行したのと同じタイミングで落ちる。 PC再起動してみたけど状況変わらず。 アプリのverupしたのが原因かと、古いバージョンのアプリをjarで動かしたけど落ちる。 windowsの設定がどこかまずいのか、jreになにか異変がおきたのか。 何か予想とかヒントとかあったら教えてください。
550 名前:549 mailto:sage [2009/02/07(土) 00:53:23 ] 追記 二日前はちゃんと動いてたんです。 ※eclipseからもjarファイルからも 今日はeclipseからは動くけど、jarファイルからは動かないんです。 開発中はeclipseから動かしてるんで、作業はできるんですが、 このままではeclipseなしで動かなくて切ないです。
551 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 00:53:55 ] >>549 順番じゃね? javaw.exe -Xmx512m -jar hoge.jar
552 名前:549 mailto:sage [2009/02/07(土) 00:56:02 ] >>551 動きました! 心の底から感謝です!
553 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 01:04:20 ] >>552 どうせ聞いてばっかりの教えて君だろ。たまには答えてスレに貢献しろ
554 名前:549 mailto:sage [2009/02/07(土) 01:13:20 ] >>553 答えてますよよよ。 答えるときは、敬語なしです。
555 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 01:18:37 ] >>540 頑張れ。 通常の四則演算の電卓で難しいのは入力系の扱いね。 小数点の入力制御と、 (3÷3、×3を1にするような)桁落ちに対する精度の保障が難しいのよ。 特に精度保障に関しては、ロジック部(電卓内部の計算機の部分)と UI部(テンキーと液晶)を分離して設計しないと綺麗にいかない。 初心者の場合、整数演算(四則演算+剰余算)の電卓を作ると楽だよ。 (前述の2項目がいらなくなるから) その場合でも、表示部、入力部、計算ロジック部を分離して クラス設計すると勉強になるよ。 いきなり作り出すのではなく、 ラフイメージ&我流でもいいから、 Jude竹とか使ってクラス図とか書いてから作り始めると、色々と見えてくると思う。
556 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 02:05:00 ] >>549 336からずっと間違ってたんだな 339をみて直したかと思ってたのに
557 名前:デフォルトの名無しさん [2009/02/07(土) 08:47:47 ] >>555 ありがとうございます 頑張ってみます
558 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 08:55:51 ] ジェネリック(´・ω・`)
559 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 09:57:49 ] >>558 病院で勇気を出して伝えて来い
560 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:33:49 ] 電卓か逆ポーランド記法でも実装するか?
561 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:39:40 ] 逆ポーランド記法計算電卓は実装楽でいいよな。 慣れないと使い辛いが。
562 名前:デフォルトの名無しさん [2009/02/07(土) 16:04:03 ] どなたか… 今自分も電卓作ってる初心者です。 ループ内のreadLineを使って数値・文字列の判断と出力 までは行けたのですが、次の数値の判断で苦戦してます。 例えば、a*b=c このbのコマンドライン引数として受け取りたいのに、どうしてもaの場所に 入ってしまいます。 何かいい方法はありませんか?
563 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 16:07:41 ] Stackに値を積んでいくのがセオリー
564 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 19:31:04 ] >>562 一文字ずつ調べなさい。 初心者が楽しても得るものは少ないぞ?
565 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:03:03 ] たとえばオープンソースプロジェクトであるSwingXのJXTreeTableだけが使いたいとします。 このとき、jarからJXTreeTableを使用するのに必要なクラスファイル以外を削除してトリムしてくれるようなツールはないでしょうか?
566 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:21:11 ] >>565 あるよ
567 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:29:55 ] javaのprivate修飾子の仕様が納得できない。 どうして他のオブジェクトが参照出来ちゃうの?javaなりの都合があるんですか? 自インスタンスに制限する修飾子って無いんですか?
568 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:33:42 ] そのネタ秋田
569 名前:>>565 mailto:sage [2009/02/07(土) 20:44:44 ] >>566 聞き方が悪かったですね。 そのツール名を教えてください。
570 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:58:56 ] >>567 それないとequals() 時に他インスタンスのprivateなフィールドに触れなくなる。 他の言語もprivateは自インスタンスだけに制限されないものが多い。
571 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:15:32 ] >>567 よく聞かれるんだけど、それがあるとどういうときに役に立つの?
572 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:16:58 ] スレッド管理とか
573 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:17:44 ] そういやC++のスレでも似たような話をみたな pc11.2ch.net/test/read.cgi/tech/1230341243/568
574 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:28:13 ] まぁこれから生まれる言語はこんな馬鹿な設計はしなくなるだろうね
575 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:30:45 ] >>574 その手の捨て台詞は負け犬の遠吠えっぽく見えるから止めたほうが
576 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:34:32 ] rubyの仕様はどうなんだろう
577 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:36:57 ] rubyは当然privateアクセスは自インスタンスのみ javaとjava周辺のカオスなFWに嫌になった人間がrubyやrailsに触れると感動すると言いますね。
578 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:37:31 ] rubyはサブクラスから呼び出せて、別インスタンス不可 javaはサブクラスは不可で別インスタンスは可っぽ
579 名前:デフォルトの名無しさん [2009/02/07(土) 21:38:28 ] >>572 一応Javaではそれがなくてもスレッド管理は面倒もなく普通にやってるけど。 出来ないのはおまえが無能なだけだろうけど。 他にないの?
580 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:38:36 ] スレッド管理でも何でも、現在のprivateの使用で困る事って 何だろう・・・具体例に興味があります。
581 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:38:42 ] 今更仕様は変えられないし、仕方ないやね
582 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:42:48 ] Java7っていつだっけ? Java5辺りで既に苦し紛れだったけど もう馬鹿っぽくて笑えてくるんだけど
583 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:44:16 ] >>580 一人でコーディングしてる分には全部publicでもいいんだよ…… 複数人でコードいじる時にprivateとかが生きてくるはずなんだが、他インスタンスからアクセスされたら意図しない動作をする可能性がある。
584 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:46:09 ] それは関係無いような
585 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:48:49 ] またruby信者か
586 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:50:47 ] rubyスレも災難だな。こんな奴相手にしなきゃいかんのか
587 名前:!572 mailto:sage [2009/02/07(土) 21:51:01 ] >>579 wikipediaのjavaの項目によると >2008年12月現在、ジェームズ・ゴスリンは、「私の勝手な憶測だが」という注意書き付きで、2010年6月以降のリリースを予測している
588 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:53:19 ] >>583 そりゃRubyみたいに同一インスタンスでも動的にメソッドつけたり外したり書き換えたりし放題ならそうかもしれんが、 基本的に静的なJavaで他インスタンスからアクセスされて意図しない動作するってのは
589 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:56:46 ] >>588 ブラックボックス化したつもりの場所で漏れてるわけだから意図しない動作はありえる。 スレッド関係ない。
590 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 21:59:00 ] >ブラックボックス化したつもり になってるのは、仕様を理解してない奴が悪いだけなんでは?
591 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:02:37 ] 意図しない動作がありえないものってあんのかね? それしか使わなければバグのないプログラム作れそうだけど。
592 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:08:35 ] 実装に触られたくなければprivate云々以前にまずインターフェイスを 規定するのでは。具象クラスの型を持った変数引数は使わないよね。 privateでもパッケージプライベートでも実装への意図せぬアクセスは 実際起こりがちで、それを避けるなら作法としてはこれが一般的だと 個人的には思うのだけど。
593 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:08:38 ] >>590-591 だから複数人の開発だと全員が意図通りに使ってくれるか分からないからprivateなのにアクセスされると困るねって話。
594 名前:デフォルトの名無しさん [2009/02/07(土) 22:18:32 ] >>592 そうは言うけど、あなたはjavaにおいてprivateフィールドとインターフェイスを区別してますか?
595 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:27:59 ] もうさ、同一クラスどころか自分自身からもアクセス不能な超privateも 作っちゃえばいいんじゃね?
596 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:29:36 ] 仕様とか気にしないでノリで作ってるから、動けばそれでヨシ状態だな
597 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:36:14 ] 静的言語が限界なんだよもう インタフェースなんてそもそも強い型付けを持つ言語仕様の欠陥を補うだけのもんだし rubyじゃ勿論インタフェースなんて要らないしクラス設計で苦労することも無い クラス設計者が色々と苦労してる時点でjava自体の仕様に問題がある
598 名前:>>565 mailto:sage [2009/02/07(土) 22:38:57 ] どなたかお願いします。
599 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:40:00 ] >>593 他クラスから「使う」分には人数もprivateも関係ないじゃん。 複数人で一つのクラスを開発しているという話であれば起こりうる話ではあるけど 世間的にはそれは普通「話し合いが足りない」というと思う。
600 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:43:01 ] >>594 心配するな。してないのはお前だけだ。
601 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:52:32 ] >>561 関係ないけど (a b +)では違和感感じるけど 日本語にして(a b 足す)だと全く違和感無い。不思議!
602 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:52:35 ] >>599 ヒント:開発メンバーが保守をするとは限らない。
603 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:54:37 ] a と b を足したものに c を掛ける a b + c * なるほど。目から鱗だわ。
604 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:00:25 ] >>600 本当に区別できるのか?結構難しいぞ。 それなら俺もその区別とやらを聞きたいものだな。
605 名前:デフォルトの名無しさん [2009/02/07(土) 23:03:48 ] >>603 自演乙
606 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:04:38 ] Cのような位置を占めることも無理だし いずれは消え去る言語
607 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:05:59 ] >>602 要するにprivateの扱いが原因というより意思疎通に失敗してるだけでは?
608 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:10:42 ] >>607 それを防ぐためのprivateなんだが。 全然通じてないね。
609 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:10:42 ] >>604 というかどう区別がつきにくいのか教えて欲しい。
610 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:13:05 ] >>605 認定失敗って恥ずかしいよね
611 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:13:09 ] >>608 privateの扱い変えれば意思疎通の失敗が完全に防げるんならともかく、 privateの扱い程度で意思疎通で失敗するなら他の件でも意思疎通に失敗してると思うぞ。
612 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:24:59 ] >>593 そのレベルだとメソッド内の変数があっちとこっちで使い方違うとかいっぱい出てきそうだが。
613 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:32:06 ] eclipseでjavadoc生成しようとしたら、 「Servlet何とか〜 シンボルが見つかりません」というエラーが大量に出て失敗しました。 javaEEのクラスパスがおかしいのかと思うのですが、解決方法がわかりません。 情報が少なくて申し訳ないのですが、わかる方いましたら教えて下さい。
614 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:35:35 ] 何とか〜 で分かるわけ無いじゃん
615 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:37:09 ] ちなみにeclipseのバージョンは3.3、 javadocを生成するクラスではサーブレットを多用しています。
616 名前:613 mailto:sage [2009/02/07(土) 23:43:20 ] >>614 すみません、今確認できる環境がないので正確に書けないのです。 確かHttpServletやHttpServletRequestなどの一般的なクラスだったと思います。
617 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 00:19:23 ] ケチな人がいっぱい集まるスレで殺伐としてますね。
618 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 00:22:05 ] >>617 そうですね
619 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 08:48:20 ] final public class A { } って public class A { } と何がどう違ってくるか教えてください。
620 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 10:00:53 ] final付けると継承できなくなる 継承できないことがわかってれば最適化しやすいからちょっとだけ速くなるかもしれない
621 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 10:11:08 ] www.ibm.com/developerworks/jp/java/library/j-jtp1029/
622 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 10:34:26 ] >>620 >>621 ありがとうございます!
623 名前:デフォルトの名無しさん [2009/02/08(日) 19:11:51 ] 教えてください。 ホームページによくある 同時に○人見ています。 みたいなJavaってありますか? CGIがダメな環境なもので、紹介してください。
624 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 19:34:35 ] CGIがだめでサーブレットがOK? 変わってるなぁ javascriptじゃなくて?
625 名前:デフォルトの名無しさん [2009/02/08(日) 19:44:23 ] >>624 ごめんなさい。 おっしゃるとおりで、 javascriptです。 申し訳ないです。 よろしくお願いします。
626 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 19:47:55 ] >>625 スレタイを読んだら寝ろ
627 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 20:04:01 ] 何人見てるかをクライアント側で管理するってどう考えても無理だよね
628 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 20:17:14 ] >>627 サーバ側で数えていないとなあ
629 名前:デフォルトの名無しさん [2009/02/08(日) 20:19:40 ] >>626 おやすみなさい。
630 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 23:47:36 ] サーバーサイド javascriptのこともたまに出良いので思い出してあげてください。 by netscape Inc,.
631 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 00:00:14 ] >>630 聞いたこともない。
632 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 00:47:15 ] まあ専用のアプリケーション鯖が必要だからな。
633 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 00:57:29 ] JRubyみたいに、Servletコンテナ上で実行する サーバサイドJavaScript処理系もあるよ。
634 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 01:08:10 ] 質問です。 javaで形態素解析ライブラリを利用しようと思うのですが、 chasenやMeCab、Senとかなり種類がありますよね。 javaで扱いやすい物、動作の早い物というのはどれになるでしょうか?
635 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 01:45:41 ] そんな専門分野のことは自分で調べろ。 調べる過程でそういうコミュニティーのフォーラムで聞けばヨロシ。
636 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 05:05:57 ] 今までの形態素解析関係の質問だとライブラリが決まったら 次はインストールしても使えない、動かない系が来る
637 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 10:05:31 ] >>634 そういうのって、結局ソース全部読むハメになるような気がするんだけど、 Java の奴だと読まなくても大丈夫なのかな?
638 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 10:31:56 ] ソース読む必要とかねーよwww
639 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 12:33:55 ] むしろ、ソース読んじゃうってどんだけ天才かと 俺がソース読むのは、ドキュメント通りに実装しても動かない時に、 中を除いて引っかかる場所を探すためだな。
640 名前:デフォルトの名無しさん [2009/02/09(月) 15:01:49 ] Compositeクラスってなんですか?教えてください
641 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 16:26:01 ] つ javadoc
642 名前:デフォルトの名無しさん [2009/02/09(月) 17:52:53 ] HashMapとHashtableって一緒ですか?
643 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 18:00:10 ] 共有フォルダでファイルが別ユーザに開かれているか確認する手段はありませんか?
644 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 18:09:26 ] >>642 スレッドセーフかどうかという点で違う。 あとレガシーじゃないコレクションフレームワークの方は非同期な分パフォーマンスが改善されてる。
645 名前:デフォルトの名無しさん [2009/02/09(月) 18:25:55 ] 例外処理ってなんの為に行うの? どっちにしろエラーですって表示されて動かないんなら意味ないじゃん
646 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 18:29:08 ] 趣味で作るアプリならそれでいいが、 お仕事になると、エラーログ出したり、いろいろしなきゃいけないんよ。
647 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 18:39:17 ] すいませんねぇ無職で
648 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 18:39:30 ] Cでもやってろw
649 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 18:45:09 ] 趣味アプリならIDEがエラーはくたびにthrowsをガンガン追加してけばいいべ たまに、エラーが出たら別の処理を試すとかやる必要があると、 まともに書いてやらんといかんけど。
650 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:09:28 ] JavaFXについて調べているのですが、 いくつかのページで実行にはFXライブラリが必要と書かれているのですが、 サンプルページのWebStartは、jre1.6の環境でも普通に起動します。 jre1.6には既にFXlibが含まれているのでしょうか?
651 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:12:34 ] そういえばjavafxのスレないね。まだ早いのかな。
652 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 22:12:48 ] java 6 SE update 10から標準装備
653 名前:650 mailto:sage [2009/02/09(月) 22:21:20 ] >>652 ありがと、すっきりしました
654 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 00:01:01 ] 白文字で枠が黒で影付きの文字ってどうやって作りますか?
655 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 00:09:01 ] 1.影 2.黒文字 3.白文字 これじゃだめなの?
656 名前:650 mailto:sage [2009/02/10(火) 00:45:12 ] ねぇねぇ、eclipseのjavaFxプラグインって自前クラスをインポートしても赤出るのって仕様? コンパイルは通ってるんだけど.... (´・ω・` )
657 名前:デフォルトの名無しさん [2009/02/10(火) 01:17:06 ] >>651 そろそろ立てませんかJFxスレ
658 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 01:30:49 ] >>655 ぜんぜんうまくいかない
659 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 01:46:03 ] TextAttributeで太字にするって無理なのかな?(´・ω・′)
660 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 01:47:54 ] >>658 やりかたが悪いだけ。 太さ、サイズ、傾き、透過やらやってやったらそれなりのものはできる。
661 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 01:50:35 ] >>660 とりあえず黒の上に白文字で表示してみたんだけど 幅を一緒にすると高さは変化できるけどどっちの文字も横の長さが一緒になっちゃう もうわからないお・・・(´;ω;、)
662 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 03:04:04 ] 甘えるな
663 名前:デフォルトの名無しさん [2009/02/10(火) 13:20:39 ] strutsの logic:equalタグについての質問です。 valueを複数指定して、そのどちらかが当てはまればlogic:equal内の処理が走るようにしたいのですが 可能でしょうか?
664 名前:663 mailto:sage [2009/02/10(火) 13:37:25 ] 自己解決しました。 logic:equal の中に複数valueを定義するだけでいけました。
665 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 14:39:44 ] >>661 簡単にやるなら 1. 影を(x+n,y-n)の位置に描画 2. 外枠をx+1,x-1,y+1,y-1方向にそれぞれ描画。 3. (x, y)の位置に中の文字を描画。 精密にやるならJava2Dでフォントのアウトラインをshapeとして描画するところからやる。
666 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 16:03:34 ] >>665 外枠を±1にするとかなりずれが目立つお 横0.3、縦0.4くらいでやってるけどそれでも文字によってはズレが目立つ・・・ とりあえずあと2時間くらいがんばってみるお・・
667 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 21:29:22 ] ソースと実行結果のSS貼れ
668 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 22:36:24 ] java SE 6 の新機能のスクリプト言語なんですが try { ・・・ } catch (NullPointerException e) { e.printStackTrace(); } で行番号が出る方法はありますか?
669 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 22:54:57 ] 行番号を持ってないと。
670 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 22:54:57 ] >>668 ガッ!
671 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 22:55:43 ] >>670 略された時だけだ、このうつけめ。
672 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 22:56:28 ] スクリプト言語なのに行番号無しって? BASIC 以下のクソ言語?
673 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 23:18:54 ] 馬鹿だろお前。インタラクティブ実行されたら行情報持たない場合があるだろ
674 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 23:20:06 ] スクリプト言語がインタープリタであるとは限らない。 なのだけど、javaと一緒で -g オプションつけたら出るんじゃないの?
675 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 23:21:04 ] >java SE 6 の新機能のスクリプト言語 確認、javaFXのことだよね?
676 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 23:34:30 ] なんかスクリプト言語実行できるとか6の新機能じゃなかったか
677 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 23:37:21 ] RhinoとかのScriptEngineManagerのことか
678 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 00:25:47 ] 公式のRhinoとJDK6に入ってるRhinoは互換性ないからなぁ
679 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 01:58:35 ] ねぇなんで1個しかextendsできないの? 2個したいんだけど
680 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 02:00:51 ] どうして1人としか結婚できないの? 日本だから
681 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 02:04:38 ] ほんとゴミ言語だな
682 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 02:24:15 ] >>681 なに言ってんだよ!ゴミはお前のことだろw
683 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 02:31:54 ] >>679 & でつなげればできるお!!! (Generics の型指定の場合)
684 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 09:24:07 ] なにそれ
685 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 11:54:53 ] swingでメニューバーから終了って項目をクリックすると、 windowsを終了させる機能を追加するにはどうすればいいの? ひとまず、implements ActionListenerしてみたが、よくわからん
686 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 11:56:47 ] ウィンドウズを終了させちゃうの?
687 名前:685 mailto:sage [2009/02/11(水) 12:04:49 ] すいません、ウインドウ(JFrame)でした
688 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 12:06:54 ] ウィンドウを閉じるだけ? アプリケーションは終了せずに?
689 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 12:40:07 ] こんなんでclose呼べばいけそうな気がする public void close() { if (getWindowListeners() != null && getWindowListeners().length != 0) { for (WindowListener l: getWindowListeners()) { l.windowClosing(new WindowEvent(this, WindowEvent.WINDOW_CLOSING)); } } dispose(); }
690 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 12:41:48 ] 面倒臭いからexitでいいよ
691 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 12:46:42 ] >>688 そうですね、アプリケーションの終了です 言葉が足りませんでした >>689 参考にします >>690 その発想は無かった とにかく、ヒントをもらったので調べてみます thx
692 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 13:25:20 ] >>689 チェック全部いらね
693 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 14:52:26 ] JTextareaの内容を全て消すようなメソッドは無いですかね? 調べたのですが見つからず、結局文字数を読み込んでreplaceRangeで置き換えるという方法で代用したのですが どのような時でも、汎用的に動作するのかというのが不安なので
694 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 15:29:16 ] JTextArea.setText(""); でいいのでは……
695 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 15:46:29 ] 文字列じゃなくてnullでいいよ
696 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 15:48:29 ] java.sun.com/javase/ja/6/docs/ja/api/javax/swing/text/JTextComponent.html#setText (java.lang.String)
697 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 21:57:26 ] デフォルトではString obj;としたときは、nullが入っているのに String obj; if(obj == null){ System.out.println("objはnullです"); } とすると、シンタックスエラーになるのは何故ですか?
698 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 22:01:19 ] >>697 デフォルト値で初期化される事が保証されてるのはクラス変数とインスタンス変数。 局所変数はデフォルト値で初期化されないから使用する前に明示的に初期化しておかないとコンパイルエラーになる。
699 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 22:17:27 ] Woopie Video DeskTopとゆうソフトを使っています。 その中でyoutube検索をしていたら、javaScriptが無効になっているようなので有効にして下さいとゆう表示がでます しかしインターネットオプションを見てみると有効になっているのです ちなみにただインターネットでyoutubeを検索してみると正常に検索等が出来るのです。 ただ左下に黄色の三角の中に!マークがでて、ページでエラーが発生しましたと出ます この間まではWoopie Video DeskTopも普通に使えていました。 youtubeもjavaがどうとかゆう表示はでませんでした。 全くの初心者で訳が分かりません・・・ プラウザがどうとかありますが、プラウザもなんのことやらって感じです・・・。 誰か助けてくださいお願いします・・・。
700 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 22:24:03 ] なんでこういうのってム板に迷い込んでくるんだ?
701 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 22:26:35 ] よくわからないからとりあえず java で検索 → このスレがひっかかる → とりあえず質問する じゃね?
702 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 22:35:46 ] java 質問で検索したら一応1ページ目にでてくるな。ぐぐるさん。 ちなみにWoopie Video DeskTop javaScriptで検索したら一件目に答えっぽいのがでてきたから 今回のはただの釣りだな。
703 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 22:42:18 ] 適切に検索できない奴だから迷い込んできたかもしれないじゃないか
704 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 22:53:10 ] 知ってるなら教えてあげろよ ほんと意地悪なやつらだな
705 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 22:54:50 ] >>704 >>702 は無視ですか、そうですか。
706 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:10:50 ] 釣られるなよ
707 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:20:24 ] >>705 いや質問したのは俺じゃないけど お前らは何かと意地悪する癖があるから、そういうの よくねーと思うし
708 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:26:41 ] >>707 知ってたら教えて下さい。 今の総理大臣って誰ですか? ↑このスレでこういう質問されたらどう思う? >>699 は全く同じことやってるわけだが。 分かるか? こういうのは知ってるかどうかが問題じゃないんだ。 何の為にスレが細分化されているか考えてからそういうレスなさい。
709 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:28:35 ] >>707 検索キーワード教えてるんだから十分じゃん
710 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:29:32 ] >>708 でも委員長もそういうのよくねーって言ってるよ?
711 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:33:18 ] >>710 何委員長かによる。 学級委員長と図書委員長には逆らえない。 ところでJavaでexe形式のファイルってどうやって作るの? eclipseとか確かexeだったよね。
712 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:33:31 ] >>707 「お前ら」って、意思統一された固定メンバーの集団だとでも?
713 名前:デフォルトの名無しさん [2009/02/11(水) 23:37:06 ] 質問させてください。 int num = 5; みたいな変数の扱い方の様に、条件式を格納できる変数など ありますでしょうか?下記みいな使い方ができるものがあれば良いのですが。 xxx zyoukensiki_A = (100 <= num) || ( num <= 200) ご教授宜しくお願いします。
714 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:38:23 ] >>713 とりあえずその間違った日本語の使い方正してからこい
715 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:39:27 ] >>713 メソッドでいいやん。 static boolean zyoukensiki_A ( int num){return (100 <= num) || ( num <= 200);}
716 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:39:41 ] JITっつーの使うといいらしい、ただし値段がすごい java exeでググったらexewrapってのが1番にきた これは無料で使えそうだ >>707 検索キーワードでも十分だろ? しかし、その検索キーワードは違う気がする。 そこら中のHPに埋め込まれてる「javascriptを使用しています、全ての機能を有効にするには〜」って言葉が引っかかってるw youtube板とかソフト板のそれっぽいスレで質問した方が早いだろうな 【DL】Woopie Video DeskTop2【ニコニコ、Youtube】 ttp://pc11.2ch.net/test/read.cgi/software/1222354743/ ここにちょうど同じ質問がでてる、こっちで回答待ちするのがいいと思われる。
717 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:40:16 ] だせぇメソッド名だな
718 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:42:46 ] ならばこうだ static boolean 条件式A ( int num){return (100 <= num) || ( num <= 200);}
719 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:43:30 ] >>709 サーチエンジンが使えない人かもしれないだろ 今もまだお前らからの答えを待ってるかもしれないし なんでそういう考えができないのかなぁ
720 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:43:52 ] 元の変数名がアレだからな
721 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:46:19 ] >>719 サーチエンジン使えなくてどうしてここにくるんだよw それにサーチエンジン使えないとしても、そうレスすりゃいいだけだ。
722 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:46:34 ] >>718 そこまでやるとダサカッコイイな。 >>719 はいはい、そうだね。 けど>>708 を108回音読してね。
723 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:48:25 ] 俺はあんまり簡単な質問だと「xx」でぐぐれで済ませるな。 ぐぐって分からなければ、また質問してくるだろう。
724 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:52:22 ] >>711 gcjで出来るらしい 使ったことないから詳しくは分からん
725 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:54:05 ] >>712 個別の11人かw
726 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 00:17:55 ] J2SE sdk ダウンロードしようとしたんだけど、sunのサイトでサービス終了 になっててダウンロードできません もうダウンロードできないんでしょうか?
727 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 00:43:43 ] ほんとだ!こりゃ大変だぁ! java.sun.com/j2se/1.4.2/ja/download.html
728 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 00:45:05 ] \ ∩─ー、 \/ ● 、_ `ヽ / \( ● ● |つ | X_入__ノ ミ 俺は釣られないクマ ・・・ 、 (_/ ノ \___ノ゙ / 丶' ⌒ヽ::: / ヽ / /::: / /へ ヘ/ /::: / \ ヾミ /|::: (__/| \___ノ/:::
729 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 01:36:33 ] \ ∩─ー、 \/ ● 、_ `ヽ / \( ● ● |つ | X_入__ノ ミ クマーーー 、 (_/ ノ \___ノ゙ / 丶' ⌒ヽ::: / ヽ / /::: / /へ ヘ/ /::: / \ ヾミ /|::: (__/| \___ノ/:::
730 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 06:08:00 ] 検索エンジンを閲覧禁止にしてるアレな職場でもあるのかねえwww ぐぐるはたまに調子悪くなるので、あんまり依存しすぎると危険だ。いきなり終了した時の事も考えて使うべき。 使う分には、1.4で十分な事も多い。
731 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 21:03:39 ] とっくにEOLじゃなかったけ?セキュリティフィックスすらないだろ
732 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:35:15 ] すでに何行か書き込まれているテキストファイルに、1行だけ追加したのですが ↓のようにすると上書きされてしまいます どなたか、知識をお貸しください BufferedWriter bw = new BufferedWriter(new FileWriter(new File(fileName))); bw.write(text);
733 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:49:07 ] 重大なセキュリティフィックスはやるよ。知らなかったの?w
734 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:52:36 ] >>732 FileWriterのAPIドキュメントのコンストラクタのところを穴があくほど見れ。
735 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 22:55:41 ] >>734 わかりました ありがとうございます
736 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 00:27:12 ] Cobertura使ってる人いる? cobertura.sourceforge.net/ テストコードの網羅性なんかが視認できてすごく便利なんだけど、 >if ( param > 0 ) { > flag = !flag; >} なんていう、否定代入?の式なんかが 未テストって判断されちまうくさい。。。
737 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 03:43:44 ] 「Javaの鉄則」を読んでると javaの仮想マシンの最適はかなりアホみたいに書いてたました. 例えば private void a() { int d = 0; b(d); } private void b(int d) { // 空 } の場合,メソッドbは無意味にもかかわらず実行時に削らず,空のメソッドを呼び出すみたいなことかいてるんだけど. ほかには class A { private var1; public A() { // コンストラクタ var1 = 0; } の場合var1はフィールドで0で初期化されコンストラクタでもう一度0に初期化されるから 二回初期かさえれるのでコンストラクタ内のvar1 = 0は削除すべし見たいに書いてる. でこの本が書かれたのは2000年になってるんだけどいまだにアホなままなんでしょうか? アホのままだとするとsunは何らかの意図があって直す気が無いんでしょうか? あと「Javaの鉄則」の最適化の話って今のコンパイラにも適応すべき鉄則なんでしょうか?
738 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 04:44:42 ] なんで自分でテストコードを書いて確認しないの?
739 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 09:36:31 ] javapとかでバイトコードを読めば分かると思うが、javac自体は一切の最適化をやらない どこまで最適化を行うかはJVMの実装任せ
740 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 10:20:25 ] ここを100回嫁 ja.wikipedia.org/wiki/%E3%82%B8%E3%83%A3%E3%82%B9%E3%83%88%E3%82%A4%E3%83%B3%E3%82%BF%E3%82%A4%E3%83%A0%E3%82%B3%E3%83%B3%E3%83%91%E3%82%A4%E3%83%AB%E6%96%B9%E5%BC%8F
741 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 12:34:56 ] >>739 よめよ
742 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 14:56:19 ] >javac自体は一切の最適化をやらない 多重ループ展開しまくってるんだが?
743 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 15:16:52 ] 1 + 2 + a は 3 + a に最適化する。 1 + a + 2 は最適化してくれない。
744 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 16:26:56 ] いいリファレンスブックってないかね?
745 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 18:26:55 ] javadoc最強
746 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 18:42:39 ] 日本語のjavadocを信じてはならぬ!
747 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 18:46:12 ] 本がいいんだけど
748 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 19:05:14 ] javadocを印刷
749 名前:デフォルトの名無しさん [2009/02/13(金) 21:36:46 ] >>737 その本、どこのアホが書いたの?
750 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 00:02:01 ] 文字列連結とか例外処理も。
751 名前:デフォルトの名無しさん [2009/02/14(土) 06:35:06 ] javaでwebshopのソフトを作りたいのですが XREA&CORESERVERでの共有SSLサーバー対応できるのでしょうか? それとクレジットカード決算についてなのですが 暗号化(?)みたいにしないとデフォじゃまずいですよね? そこら辺の事を書いてあるサイト教えて頂けませんでしょうか? よろしくお願いします。
752 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 06:55:58 ] web板行った方がよくね
753 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 07:25:34 ] >>752 ありがとうです。web板行きます。
754 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 12:05:22 ] 素朴な疑問なんだがJDK6u10以降のアプレットのドラッグアウトってどうやるんだ? javaコンソールから次世代java-pluginを使うようにしてIEにjava-pluginを有効にしてもドラッグアウトできないんだが。
755 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 13:07:30 ] <param name="draggable" value="true"> してないとか?
756 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 14:31:47 ] これ、実際使いどころあるのかねぇ
757 名前:デフォルトの名無しさん [2009/02/14(土) 15:07:24 ] >>756 ブラウザが、うざくて閉じたいときにどうか?
758 名前:赤西仁 [2009/02/14(土) 16:33:30 ] 2年間悩んでます。お力をお貸しください。 PSのアークザラッドUというタイトルのゲームの、ゲーム画像(歩行画像など)を抽出したいのですが、 かれこれ1年ほど経ちますが、なかなかうまくいきません。 *もちろん抽出した画像は個人範囲内で利用するつもりです。 ◆試してダメだったこと ネット上からダウンロードできる、ありとあらゆる抽出系ツールを試した。 (ちなみに他のゲームはほとんど抽出可能) ◆教わったこと ・アークザラッドUは独自の画像形式を使っているから抽出できない。 ・PS上で表示されてるということは絶対に摘出はできるはず。 ・ttp://www.gradius2.com/index.php?UID=1174775153 ◆抽出は不可能ではないということを知ったとき 2ちゃんねるで質問したところ、 ある方が実際にキャラクターの歩行画像を抽出して 私が立てたスレにアップしてくださいました。 スクリーンショットじゃダメなんです。どうか皆さん、お力をお貸しください。お礼は絶対にします。
759 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 16:36:02 ] ボキュは馬鹿なコピペ君です、まで読んだ。
760 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 16:44:23 ] >>754 >>755 のとおりHTMLタグを書いて、 Alt を押しながらアプレットをドラッグする。 HTMLタグを書く必要があるので、 既存のアプレットを何でもドラッグできるわけではない。
761 名前:デフォルトの名無しさん [2009/02/14(土) 20:20:45 ] >>758 マルチは低学歴w
762 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 00:15:18 ] すいませんが質問させてください。 文字列を入力して「Blowfish」で暗号化。 暗号化した文字列を一度ファイルに出力。 そして、出力したファイルの文字列を読み込んで復号するというプログラムを作っているのですが、 読み込みの時点でjavax.crypto.BadPaddingExceptionというエラーが出てしまいます。 おそらくブロックサイズが合っていないか何かのエラーだと思うのですが、 解決方法がわかりませんでした。 申し訳ありませんが、よろしくお願いします。
763 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:35:00 ] >>762 何が聞きたいのかすら分からない。 例外の意味を知りたいならググればいいし、 書いたプログラムが間違っているかどうかなら、間違っているんだろう。 それ以上の何が言えると思っているんだ?
764 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:43:05 ] あなたには聞いてません
765 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:44:05 ] では、誰に聞いたのかはっきり示して下さい
766 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:47:15 ] >>762 その場合、解決方法は机の脇のテディベアに聞くといいよ
767 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 01:47:31 ] おぃぃぃぃぃ 誰に聞いたんだよ!
768 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 02:08:58 ] すいません、私が誰に聞いたのかまったくわかりません。 私は誰に質問したのでしょうか?初心者ですがよろしくお願いします。
769 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 11:27:42 ] >>762 一般論だけど、 Blowfishはブロック暗号なので、ある特定サイズ(×n)のデータしか暗号 化&複合できず、足りない部分にパディングを入れる必要がある。そのへ んで何かミスをするとBadPaddingExceptionが起きる。
770 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 12:27:55 ] >>763 知ったかぶりさん、恥かいちゃったねw
771 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 12:41:24 ] >>770
772 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 12:46:26 ] >>770 読んでも意味が分からないなら、無理してレスするなよ
773 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 14:12:50 ] >>763 知らないならでしゃばらないでください。
774 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 14:29:39 ] よほど悔しかったんだろうな
775 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 15:14:45 ] >>763 は何がしたいの? ふつ、匿名掲示板で質問するのは、「知ってる人がいたら教えてください」ってことだろ? なんで、何が聞きたいのかすら分からないヤツがわざわざ出てくるの? あまいに聞いたんじゃ無いぞ〜〜www。脳みそカラッポだな。 それとも夜中の1時に寝ぼけて、ここを自分のブログと勘違いしたのか? アフォすぎる。知らないなら出てくるなよ。
776 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 15:15:49 ] >>763 は恥さらし。以後、このスレ立ち入り禁止。追放しました。
777 名前:デフォルトの名無しさん [2009/02/16(月) 15:48:07 ] >>775-776 まぁ落ち着けや。
778 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 17:05:03 ] >>775 >>769 が中身無いって分かってんだよね?
779 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 17:10:18 ] >>763 から>>779 まで全員アホって事でいいじゃん
780 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 17:12:59 ] ついでに俺も
781 名前:762 mailto:sage [2009/02/16(月) 17:23:16 ] >>763 >>769 ありがとうございます。 パディングなどについて重点的に調べていきたいと思います。
782 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 20:38:48 ] ばかばっか
783 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 20:46:11 ] バカは>>763 ただひとり
784 名前:がちゃがちゃ [2009/02/16(月) 20:56:24 ] HashMap<Integer, List<String>> strMap = new HashMap<Integer, List<String>>(); このような HashMap を作ることは可能でしょうか? だれか優しい人おおしえください。
785 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 21:02:34 ] コンパイルしてみりゃいいじゃない
786 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 21:20:59 ] 知らないならレスしないでください
787 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 21:35:11 ] 知っているから答えるけど、コンパイルしてみりゃいいんじゃね?
788 名前:がちゃがちゃ [2009/02/16(月) 21:48:58 ] コンパイルは通りました。 -> javaプログラムとしてもちゃんとできていました。 しかし、JSP/Servretにて、 「org.apache.jasper.JasperException: An exception occurred processing JSP page」 というエラーがでる。
789 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 22:06:02 ] WebSphereでやったら動いたよ
790 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 22:09:40 ] >>788 じゃぁ最初っからそう書けよ。 なんで情報を小出しにする?まだ他に何か隠してることがあるんじゃないのか?
791 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 22:18:03 ] 名前、年齢、勤務先/学校名とかだな
792 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 22:36:08 ] >>784 可能です。 でいいだろ。ごちゃごちゃ言わずに答えれば良いんだよ。
793 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 22:39:59 ] 今更答えてもな
794 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 22:58:59 ] >>792 もう遅いよ
795 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 23:45:27 ] >>792 お前が来るのが遅いのが悪いんだ 俺は俺の好きにする
796 名前:デフォルトの名無しさん [2009/02/17(火) 00:09:29 ] mainメソッド内において、 メニューを選択させてそれに対応する処理を行いたい時に、 switch (menu) { case 0: method0(); break; case 1: method1(); break; みたいにスイッチ文を使うとしますよね? その際、一つ一つの処理が長いから再利用性はないけど、 それぞれのメソッドに独立させたいとする。 そういう時って、同じクラスのprivate staticメソッドで実現させるんですか? オブジェクト指向って関数がクラスと関係してるから、 何か不自然に感じてしまうんですけれど・・・。 Cのような手続き言語でそのようなことをしても 全く違和感はないのですが・・・。
797 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 00:11:16 ] そういうときのデザインパターンがあった気がするけどそこらへん詳しい人頼む。
798 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 00:43:44 ] 移譲使うかな menu0.addAction(new Action0()); menu1.addAction(new Action1()); getSelectedMenu().doAction(); みたいに書ける
799 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 01:09:34 ] >>797 知らないならレスしなくていいです。
800 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 01:09:47 ] 全体をMVCに分けた上でCの実装にStrategyパターンを使う。
801 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 01:18:12 ] Command(Action)パターンだろ
802 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 01:28:40 ] ∩___∩ | | ノ\ ヽ | / ●゛ ● | | | ∪ ( _●_) ミ j 彡、 |∪| | J / ∩ノ ⊃ ヽ ( \ / _ノ | | .\ “ /__| | \ /___ /
803 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 02:13:05 ] 釣られないならレスしなくていいです。
804 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 02:15:41 ] >>802 Strategyパターンはアルゴリズムを選択的に実行するためのもので Commandパターンは手続きとデータをカプセル化するためのものだぞ? >>798 はCmanndパターンだぞ。
805 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 02:22:33 ] いやべつに>>800 は>>798 を指していないし。
806 名前:デフォルトの名無しさん [2009/02/17(火) 03:06:59 ] JAVAの勉強を始めたいんですが、初心者にお勧めの参考書ってありますか?
807 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 04:45:41 ] >>806 ttp://java.sun.com/developer/onlineTraining/ オンライン文書だけどここらへんのチュートリアルとか
808 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 10:59:11 ] ant使ってzipファイル触ってるんだけど、 書庫内書庫ってtmpディレクトリ作って解凍してやるしかないよね?
809 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:51:21 ] 知らないならきくなよ
810 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 20:54:15 ] ごめんなさい(ノД`)
811 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 21:03:48 ] すみません。dojaスレで聞いてビット積について調べてこいと言われて調べたのですが、 本当に基本的なことなんですが、 以下のような式があります。 B_ = (B_ & 0xFE) & 0xFF; これは結果的にこの式と同じではないでしょうか? B_ = (B_ & 0xFE) ; もっというと B_&=0xFEとはなりませんでしょうか?
812 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 21:28:17 ] ggrks 調べて来いって言われたんだろ
813 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 21:31:57 ] >>811 B_の型って何だ?dojaでは何かの型なのか?
814 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 21:31:58 ] >>812 知らないならレスしないでください
815 名前:デフォルトの名無しさん [2009/02/17(火) 21:45:41 ] あの・・・気軽に質問しないでくれませんか?
816 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 21:56:32 ] >>811 実際に動かしてから聞いてください。
817 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:15:11 ] >>813 int です。 どう計算しても値が違うものにならないような気がして…
818 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:21:53 ] ttp://www.hellohiro.com/set.htm のコンパイルを使用としたら、無検査どうこうと怒られたんで下記のようにしてみたんだけど問題無いでしょうか? import java.util.*; public class HelloWorldSet { public static void main(String[] args) { try { // LinkedHashSet Set<Integer> linkedHashSet = new LinkedHashSet<Integer>(); addData(linkedHashSet); System.out.println("LinkedHashSet : " + linkedHashSet); } catch (Exception e) { e.printStackTrace(); } } static void addData(Set<Integer> set) { for (int i = 10;i >= 1;i--) { set.add(new Integer(i)); } } }
819 名前:818 mailto:sage [2009/02/17(火) 22:23:15 ] >>818 いまいち総称型の位置が正しいか不安で・・ 特に static void addData(Set<Integer> set) { あたりの使い方が気になっています。 他の解決方法もあればお願いします。
820 名前:813 mailto:sage [2009/02/17(火) 22:49:32 ] >>811 B_がintなら同じじゃねーのかな…。 ていうかよく考えたらB_がbyteだったらエラー出まくりだよな…。 iモードなんたらってスレみたら、 たしかに69の奴が「ぜんぜん違う」と断定してるな。 ほんとに違うのか??? Java上級者の方、意見求む。
821 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:56:43 ] >>820 intとbyteのビット数はどうなん? byteは最大値FF intは最大値FFFFFFFF >ていうかよく考えたらB_がbyteだったらエラー出まくりだよな…。 byteとintをビット演算してエラーでるっけ?
822 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 22:59:10 ] 式展開してみて、これを同じと見るかどうかじゃないですか。 その人が何を言ってるのか意味不明ですが、ていうか同じですけどw (B_ & 0xFE) & 0xFF B_& 0xFF & 0xFE & 0xFF
823 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 23:14:55 ] public class BitTest { public static void main(String[] args) { long i = 0; for (i = Byte.MIN_VALUE; i <= Byte.MAX_VALUE ; i ++) { bittest((byte)i); } for (i = Integer.MIN_VALUE; i <= Integer.MAX_VALUE ; i ++) { bittest((int)i); } } public static void bittest(byte B_) { byte c1 = (byte)((B_ & 0xFE) & 0xFF); byte c2 = (byte)((B_ & 0xFE)); if (c1 != c2) { System.out.println("error byte " + B_); throw new RuntimeException(); } } public static void bittest(int B_) { int c1 = (B_ & 0xFE) & 0xFF; int c2 = (B_ & 0xFE); if (c1 != c2) { System.out.println("error int " + B_); throw new RuntimeException(); } } }
824 名前:823 mailto:sage [2009/02/17(火) 23:16:23 ] 2つのビット演算の結果が違ったら例外投げて終了するコードを書いてみた 動かしてみれば一発じゃんって事で動かしたが、エラーでないまま最後まで通ったよ
825 名前:823 mailto:sage [2009/02/17(火) 23:17:35 ] dojaが何か分かってないんで、見当違いのことしてたらごめんだぜ
826 名前:813 mailto:sage [2009/02/17(火) 23:49:34 ] >>821 スマソ、適切にキャストしたらエラー出んかった… エラーが出たのはキャストしてなかったからだった… B_がbyteの場合は、 B_=(byte)((B_&0xFE)&0xFF); B_=(byte)(B_&0xFE); ダッタ。で、&0xFEの時点ですでに8〜31までの上位ビットは切り捨てられているわけだから、 &0xFEの後に&0xFFしても意味ないはず…。 ていうか>>823 スゲェな…。 すべてはiモード携帯電話用〜スレの69の発言がおかしいんじゃねーかw 69め…ブツブツ。
827 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 23:56:40 ] 0xFFってint型に突っ込むと -1として解釈されるパターンと255として解釈されるパターンがあるから…… ってどっちでもビット演算的には同じか。
828 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:29:13 ] ところで、>>823 の何がすごいのか書き残してから巣に帰ってくれないか?
829 名前:823 mailto:sage [2009/02/18(水) 00:42:53 ] お世辞だよね
830 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 00:46:06 ] どなたか>>818 の答えをお願いします・・・
831 名前:811 mailto:sage [2009/02/18(水) 00:46:41 ] おお皆様ありがとうございます。 やっぱり結果的には一緒っぽいですよね…
832 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 01:55:17 ] >>830 キャスト
833 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 09:21:18 ] サーブレットでログ出力関数を作ろうと思うのですが 同期させるには以下のコードでよいですか? public class Util { private static Object lock = new Object(); public static void outputLog(String msg) { synchronized (lock) { System.out.println(msg); } } }
834 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 09:48:02 ] printlnを一切ほかのところに書かずに全部それで統一できるならね
835 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 09:51:57 ] >>834 なるほど!
836 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 12:21:08 ] >>833 自分で作らないで java.util.logging を使ってあげてください。
837 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 13:13:28 ] 自分の銀行口座に振り込まれたログをJAVAを用いて管理したいのですがそのようなAPIを公開している銀行又はライブラリはありますか? 分かる方がいらっしゃったら返答お願いします
838 名前:デフォルトの名無しさん [2009/02/18(水) 13:22:01 ] 透明なJFrame,もしくはJWindowを作成したいと思っています。 java6から利用可能と聞きました。 JAVA FXは利用しないやり方を知りたいです。 よろしくお願いします。
839 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 13:36:00 ] >>837 危険だから公開はしないと思うぞ。 でもMicrosoftMoneyに取り込める所はあるから、 同じプロトコルを使えば可能なのかも。
840 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 13:41:51 ] >>838 update10以降とかじゃなかったっけ? AWTUtilties#setWindowOpacity(Window,float)とかだったと思う。
841 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 13:55:09 ] >>832 総称型を使ってるからキャストはいらないんじゃね? >>818 のソースで動いてるし、問題あるか知りたいんだろ。
842 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 14:09:43 ] >>841 大丈夫っぽいね 無検査〜はジェネリック使わないとバシバシ警告だしてきてウザイやね
843 名前:830 mailto:sage [2009/02/18(水) 15:29:47 ] >>832 馬鹿は回答しないでください><
844 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 16:00:25 ] プログラミング自体はじめたばかりの初心者です BBSをListで作る練習をしていて、例題に public Writing[] list() throws BbsException{ ~~~~~~~~~~~~~~~ } という記述があったのですが、波線のところはどういうことをしているのでしょうか? Writingクラスは別にあります。
845 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 16:05:44 ] 何かしてるわけじゃないです 戻り値はWriting[]型で引数なしのlistという名前のメソッドを定義しますよと伝えてるだけです
846 名前:884 mailto:sage [2009/02/18(水) 16:27:00 ] なるほど ありがとうございました。
847 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 17:13:37 ] java教科書くらい読めよ
848 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 21:55:11 ] 浮動小数点演算について質問です。 例えば単純な引き算で、1.0 - 0.8 = 0.19999・・ となってしまいますが これを解決するのに BigDecimalを使うというのをネットで見つけました。 でも単純な引き算を行うのにも以下のようにどのような演算をしてるのがわかり難くなってしまいました。 new BigDecimal(String.valueOf(1.0)).subtract(・・・) 浮動小数点演算で丸めがおこらないようにするには このようなわかり難いコーディングがデフォなのでしょうか? 何か良い方法がありましたら教えてくださいm(_ _)m
849 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 23:15:32 ] >>848 多数派:誤差があっても気にしない。 神経質な業界:言語自体、十進演算をする実装のものを選ぶ。 科学技術:誤差込みで計算した上で、きちんと誤差管理する。 ってところかなあ。
850 名前:デフォルトの名無しさん [2009/02/18(水) 23:18:13 ] >>843 質問しといておまえは何様のつもりだ?
851 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 23:40:25 ] >>848 あくまでJavaだけしか使えないなら https://eval.dev.java.net/ みたいに計算式をパースしてやる手法ぐらいしか知らん。
852 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 23:45:46 ] つかったことないけど new BigDecimal("1.0").subtract(・・・) てすればいいんじゃないのかな?
853 名前:デフォルトの名無しさん [2009/02/18(水) 23:46:19 ] 普通はDecimalFormatかFormatterを使う。
854 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 23:53:54 ] >>848 必要な桁で丸めるとか、 あらかじめゲタを履かせる(10倍して演算後、10で割る)とか。