【初心者】Java質問・相談スレッド123【歓迎】
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2009/01/19(月) 11:06:38JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理 http://pc11.2ch.net/hp/
Webプログラミング http://pc11.2ch.net/php/
をご利用下さい。
よくある質問
・「コマンドまたはファイル名が違います」
「'javac' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
「Exception in thread "main" java.lang.NoClassDefFoundError: 」
http://www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
前スレッド
【初心者】Java質問・相談スレッド122【歓迎】
http://pc11.2ch.net/test/read.cgi/tech/1229255937/
次スレは>>990あたりで。
過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
http://www.wikiroom.com/java/
0002デフォルトの名無しさん
2009/01/19(月) 12:29:32**** 関連スレッド案内 ****
■ 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/
0003デフォルトの名無しさん
2009/01/19(月) 13:33:41/ / パカッ
//⌒)∩__∩
/.| .| ノ ヽ
/ | | ● ● |
/ | 彡 ( _●_) ミ まピョーん☆
/ | ヽ |∪| /_
// │ ヽノ \/
" ̄ ̄ ̄ ̄ ̄ ̄ ̄(..ノ
0004デフォルトの名無しさん
2009/01/19(月) 22:21:44以下のようなプログラムを書くと思いますが、
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()]
http://d.hatena.ne.jp/rf0444/20081128/1227863468
というページを見つけたが、コメントで以下のようにあるが、
> // もはやtoArrayの引数にサイズ0の配列を渡すのはお約束
> String[] strs = strList.toArray(new String[0]);
> ですよね〜
「お約束」「ですよね〜」となるのが理解できない。
new String[list.size()] とやらずに new String[0] とやるのは常識(お約束)なんですか?
0005デフォルトの名無しさん
2009/01/19(月) 22:39:17>> T[] result = new T[size];
> とか出来ないのか。
なんて言ってる人たちだから。
0006デフォルトの名無しさん
2009/01/19(月) 22:42:42> 配列のサイズが十分でない場合は、
> 同じ実行時の型で新しい配列が格納用として割り当てられる
どう見ても new String[list.size()] の方が効率いいと思うが。
0007デフォルトの名無しさん
2009/01/19(月) 22:50:58現在JTabbedPaneでタブを作っているんですが、その中身を別のクラスから呼び出そうとすると、
「シンボルを見つけられません」とエラーが出てしまいます。
部分的にソースを書くと、
//タブに貼り付けるパネル設定
JPanel tabPanel2 = new JPanel();
//テキストエリアのクラス
JTextAreaTest sc ;
sc = new JTextAreaTest();
//タブの設定
tabPanel1.add(sc); ←ここでエラー
tabPanel2.add(new JLabel("ラベル"));
JTextAreaTestクラスのインスタンス化したものを設定しているのが問題なのでしょうか?
それともインスタンス化自体間違っているのかどなたか助言をお願いします!
0008デフォルトの名無しさん
2009/01/19(月) 22:51:56外部ライブラリにいちいち署名しない方法教えて。
grant allpermissionは抜きで。
GoogleAPIのJARを解凍して一個のJARにまとめて
署名したけど、なんか動かんかった。MANIFESTの情報を
引き継がなきゃなんないのか?
つか、いちいちサードパーティの信頼性を
プログラマが保障しなきゃいけないモデルってあり?
せっかくのJavaFXもこんなめんどくさい
サンドボックスのせいで普及しなそう。
00097
2009/01/19(月) 22:53:21すいません、パネルの設定が一行抜けてましたorz
正しくは下です
//タブに貼り付けるパネル設定
JPanel tabPanel1 = new JPanel();
JPanel tabPanel2 = new JPanel();
0010デフォルトの名無しさん
2009/01/19(月) 23:05:22オマエが抜書きしている時点で全て怪しいいよ。
全部どっかにアップしろ
00114
2009/01/19(月) 23:13:28レスどうもありがとうございます。
いくら Collection.toArray() 内で、適切に拡張してくれるとはいえ、
new String[list.size()] の方が効率がよいということなので、
自分はそうするようにします。
List list = new ArrayList() とか StringBuilder sb = new StringBuilder()
でも、今までは気にしていなかったけど、その時点でサイズを決めることができる場合は、
コンストラクタに初期サイズを指定した方が効率がいいのかな。
(明確な差は現れないような気もするけど)
0013デフォルトの名無しさん
2009/01/19(月) 23:24:17Revo Uninstallerというフリーソフトでアンインストールを行い、ウイルスソフトを
停止して、再インストールしようとすると、
「この操作は現在インストールされてている製品に対してのみ有効です。」
となり、インストールできません。
セーフモードで起動し、インストールしようとすると
「システム管理者によって、ポリシーはこのインストールを実行できないように設定されています」
となってしまいます、administratorでインストールしようとしても、同様の結果です。
プログラムの追加と削除には、既にjavaの項目はありません、完全削除か、再インストールしいたいのですが、できなくて困っていますどうしたらいいでしょうか?
Sunに聞いたほうがいいのでしょうか?
0014デフォルトの名無しさん
2009/01/19(月) 23:26:23JPanle#addはComponentしか受け付けないから
0015デフォルトの名無しさん
2009/01/19(月) 23:27:02×JPanle
○JPanel
0017デフォルトの名無しさん
2009/01/20(火) 00:00:51目標がなんだかわからないが、
普通にやりたいなら、
JTextAreaTestのコンストラクタでやっていることは全部Sampleのコンストラクタに出して、
JTextAreaTest自体やめちゃえば?
00187
2009/01/20(火) 00:23:02確かにそれだと表示されるんですが、
最終的にこれに他にもJMenuとかいろいろ足していきたかったので、
Sampleの中に全部入れていくと見難いかと思ってクラスに分けたかったんです
もう少しやってみてだめだったら、このままSample内に入れてしまおうと思います
0019デフォルトの名無しさん
2009/01/20(火) 00:41:44勉強したほうがよいかと。
JTextAreaTestをインスタンス化(new)して
そこからJTextAreaTestがもってるスクロールペーンの
参照を取得して、Sampleのほうのタブペーンにaddする。
難しい方法はJTextAreaTest extends JPanel
とかして、JTextAreaTest自体をタブペーンにaddする。
がんばれー。
0020デフォルトの名無しさん
2009/01/20(火) 00:43:15タブに入れるパネルか、
パネルに入れるスクロールペインをサブクラス化した方が良いのでは?
0021デフォルトの名無しさん
2009/01/20(火) 01:54:41>コンストラクタに初期サイズを指定した方が効率がいいのかな。
インスタンス生成時に、予めサイズが分かってるなら、その方が良いよ。
気になるなら、ソース読んでみると良い。
それに、パフォーマンスを気にするなら、まずは自分の手を動かして実測してみるのが一番。
0022デフォルトの名無しさん
2009/01/20(火) 01:59:5700237
2009/01/20(火) 02:15:59助言ありがとうございます
まだまだオブジェクト指向は理解しきれていないですが、二人の言葉を参考に
なんとかクラスを分けたままでタブに表示することができました!
ttp://www.dotup.org/uploda/www.dotup.org19740.java.html
テキストエリアのサイズの設定がおかしいことになってますが、
今日はここまで出来たので寝ようと思います
ここに来てよかったです。ありがとうございました
0024デフォルトの名無しさん
2009/01/20(火) 02:55:21大量にデータを扱うようなプログラムを作る場合、
パフォーマンスは気にすべきだと思うが。
あなたは、Java で書こうと C で書こうと、いま自分が書いているプログラムが
どれくらい無駄なことをやっているか、どれくらい効率的になっているか、意識していないんですか?
0025デフォルトの名無しさん
2009/01/20(火) 03:26:180026デフォルトの名無しさん
2009/01/20(火) 03:28:13青二才はオナニーしてはよ寝ろw
0027デフォルトの名無しさん
2009/01/20(火) 04:12:27perlとかスクリプト書けばすぐ済むのをいちいちCでやるのかと同じ。
0028デフォルトの名無しさん
2009/01/20(火) 04:25:000029デフォルトの名無しさん
2009/01/20(火) 08:54:200030デフォルトの名無しさん
2009/01/20(火) 09:26:18classファイルで動いている時には、自身のclassファイルがあるフォルダから、
jarで動いている時には、自身のjarから抽出して、
それぞれ動かしたいと思います。
自身のパスと、classなのかjarなのか、はどうやったら得られるんでしょうか。
ご教示願います。
0031デフォルトの名無しさん
2009/01/20(火) 13:32:420032デフォルトの名無しさん
2009/01/20(火) 17:36:21なんでperlなの?
0033デフォルトの名無しさん
2009/01/20(火) 17:37:24大量って具体的にどれほどバイト?
0034デフォルトの名無しさん
2009/01/20(火) 17:52:040035デフォルトの名無しさん
2009/01/20(火) 18:08:12クラスファイルと同じ場所に指示ファイルがあるのなら
getClass().getResourceAsStream(指示ファイル名);
で指示ファイルから読み込むためのInputStreamが返される
指示ファイルの位置が知りたいのならClass#getResourceメソッドを使えばそのURLが得られる
クラスメソッドならクラス名.classでClassインスタンスが得られる
0036デフォルトの名無しさん
2009/01/20(火) 19:20:17main.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();
似たような処理を記述しているので冗長に感じます。
もう少しスッキリとさせることはできないでしょうか?
003736
2009/01/20(火) 19:22:17nameItigo
nameRingo
nameSuika
のような意味のある名前になっています(引数もそれに関連するものです)
0038sage
2009/01/20(火) 21:48:32普通のjavaアプリケーションは何て言うんですか?
0039デフォルトの名無しさん
2009/01/20(火) 22:01:000040デフォルトの名無しさん
2009/01/20(火) 22:33:45Classクラスは標準で存在するクラスだから仮の名前に使うのは良くない。
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]);
...
みたいな感じ。
0041デフォルトの名無しさん
2009/01/21(水) 04:38:30class Sub extends Super {
}
class Sub2 extends Sub {
}
class Sub3 extends Sub2 {
}
ここでSub3をインスタンス化して継承したSuperのメソッドを使うのと、
Superをインスタンス化してメソッドを使うのでは、
動作効率は変わってきますか?
継承すればするだけ継承した下位のクラスを利用するとき動作効率が劣るのでしょうか?
0042デフォルトの名無しさん
2009/01/21(水) 08:16:03JVMの実装による。お使いのJVMでベンチマークしてください。
0043デフォルトの名無しさん
2009/01/21(水) 08:34:020044デフォルトの名無しさん
2009/01/21(水) 11:29:190045デフォルトの名無しさん
2009/01/21(水) 11:45:21どっち使ってもinvokevirtualになるだろうし大して変わらんと思うが。
まぁJVMの実装次第だけど。
004641
2009/01/21(水) 12:00:17自分の中のイメージとしては、
小物の入った小さい箱にそれよりも大きな箱を重ねていく感じで、
小物をとりだすときに箱を1つずつ取り払う分作業速度が遅くなり、
大きな箱を用意する分資源(メモリ等)を多く使うのではと思い質問しました。
大してかわらなそうとのことなので気にしないことにします。
0047デフォルトの名無しさん
2009/01/21(水) 12:35:45ありがとう。
提示されたキーワードで調べてみます。
0048デフォルトの名無しさん
2009/01/21(水) 13:16:26どうすればいいんでしょうか。
0049デフォルトの名無しさん
2009/01/21(水) 16:33:13覚えといたほうがいいものを教えてください。
0050デフォルトの名無しさん
2009/01/21(水) 16:42:51ハンカチとティッシュを忘れない
0051デフォルトの名無しさん
2009/01/21(水) 17:03:500052デフォルトの名無しさん
2009/01/21(水) 17:20:26アプリケーションをコンテンツとして用意して、ブラウザに送る。
0054デフォルトの名無しさん
2009/01/21(水) 21:58:12servletのフレームワークで、プロパティー形式以外の入力を処理するようなものってありますでしょうか?
普通、リクエストボディには
キー=値
という形式でデータが納められているとおもうのですが、
これがCSVだったり
kamoku,tensuu
kokugo,81
rika,69
suugaku,77
XMLだったり
<data>
<name>
<sei>foo</sei>
<mei>bar</mei>
</name>
<age>26</age>
</data>
するリクエストが飛んできた場合、適切にBeanのフィールドに値を詰めてくれるようなフレームワークです。
以上、よろしくお願いします。
0055デフォルトの名無しさん
2009/01/21(水) 22:21:15005654
2009/01/21(水) 23:08:13つまりクライアントから
POST /TestServlet HTTP/1.1
Host: localhost
Content-Length: 17
Content-Type: text/xml
<data>
<foo>bar</foo>
</data>
こんなリクエストが投げられてきた時にO/Rマッピングみたいな事をしてくれるフレームワークです。
そういうのありますでしょうか?
0057デフォルトの名無しさん
2009/01/21(水) 23:52:190058デフォルトの名無しさん
2009/01/22(木) 00:23:25JTableのテーブルモデルを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
となっているはずです.
どうすればよいでしょうか?
0059デフォルトの名無しさん
2009/01/22(木) 00:51:10それを言うならオーバーロードでなくオーバーライドじゃね?
まあ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のモデルに与えてみてもうまくいかない?
0060デフォルトの名無しさん
2009/01/22(木) 00:53:270061デフォルトの名無しさん
2009/01/22(木) 03:51:12それと同等のプログラム組んでみたらうまくいった.
それでいろいろ試してみたらハードコーティングで作った列はAbstractTableModel#getValueAt(int row, int column)の
引数columnでちゃんとアクセス(column = 0,1,2,3...)してくれるみたいなんだけど
実行中に動的に追加した列に関してはAbstractTableModel#getValueAt(int row, int column)の引数columnが常に0だった.
つまり動的に追加した列は0列目とまったく同じ値になった.
で,今作ってるプログラムは動的に列を追加するもの(列の定義があるファイルにあってそれをロードする)なので
思うように行きません.
0062デフォルトの名無しさん
2009/01/22(木) 04:45:47たぶん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);
みたいなのはちゃんと機能する。
0063デフォルトの名無しさん
2009/01/22(木) 11:39:42とにかくありがとう
0064デフォルトの名無しさん
2009/01/22(木) 14:24:42表示させています。
クリックされる度にJTextPane textPane = new JTextPane();
として生成しているのですが、一度目のクリックではtextPane1、二度目のクリックでは
textPane2...というふうに、違う名前にしたいのです
どのようにしたらいいでしょうか
0065デフォルトの名無しさん
2009/01/22(木) 14:32:06名前といわれても、なにの名前だか
0066デフォルトの名無しさん
2009/01/22(木) 14:48:020067デフォルトの名無しさん
2009/01/22(木) 14:53:26現在、↓のようなプログラムを作りました。
ttp://www3.uploda.org/uporg1954205.java.html
システムトレイにアイコンを常駐させ、フレームを閉じてもアイコンから表示でき、
時間設定することでシステムトレイに常駐させたアイコンからお知らせできる、というプログラムです。
普通にフレームを閉じてアイコンから開いても普通に表示されるんですが、
時間設定をしてからもう一度フレームを開くと、上下にパネルを並べていた
レイアウトが並べて表示されてしまいます。
レイアウトが崩れてしまう原因はなんでしょうか?
アドバイスをお願いします!
006867
2009/01/22(木) 15:04:50みたらレイアウトが崩れなくなりました。
お騒がせしてすいませんorz
0069デフォルトの名無しさん
2009/01/22(木) 19:28:09apacheとtomcatの連携させて、
javaのサンプルプログラムをdosでコンパイルして動かして連携を確認しました。
ところがエクリプスで同じプログラム造るとtomcatで動いてもapacheで動きません。
どなたか原因ご存じですか??
0070デフォルトの名無しさん
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
0071デフォルトの名無しさん
2009/01/22(木) 20:06:23宿題スレの方がいいんじゃね?
ここってアルゴリズムスレじゃないと思うんだ
0072デフォルトの名無しさん
2009/01/22(木) 20:38:240073デフォルトの名無しさん
2009/01/22(木) 20:39:10失礼しました、改めて宿題スレで聞いてみます
ありがとうございました
0074デフォルトの名無しさん
2009/01/23(金) 21:59:06イマイチよく分かりません。
どういった場面で利用し、どのように役に立つのでしょうか?
0075デフォルトの名無しさん
2009/01/23(金) 22:13:30貼ってもらえると説明出来ると思う。
どういう理由でコンストラクタ不要と考えたか分からないので。
0076デフォルトの名無しさん
2009/01/23(金) 23:11:16メンバ変数が初期化されてなかったらどうしようとかビクビクしなくて済むわけで。
0077デフォルトの名無しさん
2009/01/24(土) 08:46:10オブジェクトを構成単位としてプログラムを構築するが
そのオブジェクトの内外部の境界の決定は
そのオブジェクトにどのように整合性(不変条件)を持たせるかが
一つのキーポイントとなっている。
ところが、単にオブジェクトを生成しただけでは、
Javaの既定のフィールドの値では
生成直後の状態がその整合性を満たせない場合がある。
このような場合に、コンストラクタなどを使って
正しい状態のオブジェクトが生成できるように細工をする。
なお、コンストラクタが終わる前に、直接的にも間接的にも
その構築中のオブジェクトの参照を漏洩するのは
整合性がない状態でオブジェクトを晒すことになるので、やってはいけない。
0078デフォルトの名無しさん
2009/01/24(土) 09:55:14paint()に進むようにしたいのですが、制御の方法が分かりません。
今は最後まで処理してからマウスeventを待っています。
宜しくお願いします。
0079デフォルトの名無しさん
2009/01/24(土) 11:52:04★★ Java の宿題ここで答えます Part 67 ★★
http://pc11.2ch.net/test/read.cgi/tech/1232627790/l50
宗教的な儀式は別にして、コンストラクタって使うの面倒だよな。
クラスのインスタンス実行した時点で初期化しとけよ。
0080デフォルトの名無しさん
2009/01/24(土) 12:11:32インスタンスを一個しか作らないようなプログラムしか
書いてないんじゃないか?
0081デフォルトの名無しさん
2009/01/24(土) 12:36:50コンストラクタはいらねーってのはメソッドの引数はいらねーっていってるようなもんだな
ていうか、コンストラクタがどうのとか言ってる奴って、
JavaAPIをまともに使ったことねーんじゃねーの?
あれらにコンストラクタがなかったら悲惨なことになると思うが
0082デフォルトの名無しさん
2009/01/24(土) 12:53:43ClassA a = new ClassA();
a.setFile(file);
a.setDir(dir);
a.exec();
ClassA a = new ClassA(file, dir);
a.exec()
どちらがいいんだろう?判断する根拠を持っていない・・・
0083デフォルトの名無しさん
2009/01/24(土) 13:20:05後者だと、引数が不正だった場合にインスタンスの生成そのものを行わないという設計・実装が可能。
同じ理由でDIコンテナでもコンストラクタインジェクションを好む人は多い。
0084デフォルトの名無しさん
2009/01/24(土) 13:55:58telnetクライアントを作りたいんだが、
いろいろ調べてみるとApache Commonsのnet
というコンポーネントを使用する例が出てくる。
やっぱこれを使った方がやりやすいのかな?
あと、公式サイトはリンク切ればかりなんだけど、
ちゃんとここから落とせるのかな?
0085デフォルトの名無しさん
2009/01/24(土) 14:12:34「getContentPane().add(button1);」というコードをを発見しました
getContentPane()の戻り値のインスタンスを使って、add()にアクセスしているって解釈したんですが
間違っていませんか?
0086デフォルトの名無しさん
2009/01/24(土) 14:20:23というよりむしろ引数が無ければコンパイルエラーにしてくれる点が重要では
>>85
そのたうり
0087デフォルトの名無しさん
2009/01/24(土) 14:24:29コンストラクタの中で、戻り値をコントロールできる?
ってか、引数のチェックをした結果を、コンストラクタの呼び元でインスタンスが出来ているかどうかで判断するのか?
0088デフォルトの名無しさん
2009/01/24(土) 14:26:21わかりました
ありがとうございます
0089デフォルトの名無しさん
2009/01/24(土) 14:56:580090デフォルトの名無しさん
2009/01/24(土) 16:16:23class 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(); ここのキャストがまずいらしいんですけど、
どうすればエラーが出ないのでしょうか?よろしくお願します。
0091デフォルトの名無しさん
2009/01/24(土) 16:48:20バナナはおやつですが、
おやつはバナナではありません
0092デフォルトの名無しさん
2009/01/24(土) 16:54:49前者だと、オブジェクト指向的には
setFileやsetDirを使わなかったときにexecを呼び出した場合の処理
(たぶん、IllegalStateExceptionでも投げる?)
を書かなければならないという手間がかかる反面、
aを生成後に処理を挟んでこれらのsetterを呼び出せるという
柔軟性を持たせることができる。
手間と柔軟性のトレードオフだが、アジャイル的には
最初は後者で作っておいて、必要になったら後者にリファクタリングする
のがよさげと思われ
009392
2009/01/24(土) 16:56:53>最初は後者で作っておいて、必要になったら後者にリファクタリングする
後者→前者
状態数は削れるだけ削るのが基本
0094デフォルトの名無しさん
2009/01/24(土) 17:02:12いっぱいの「い」を「お」に変えると?
009592
2009/01/24(土) 17:06:56後者で作っておいて、必要になったら前者、ね
0096デフォルトの名無しさん
2009/01/24(土) 17:45:37なんとなくわかりました.。ありがとうごさいます。
0097デフォルトの名無しさん
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)で合っているかと思いますが、
どうして適用できないのでしょうか?原因に見当がつきません。よろしくお願いします。
0098デフォルトの名無しさん
2009/01/24(土) 21:49:14java.io.FileFilter
javax.swing.filechooser.FileFilter
0099デフォルトの名無しさん
2009/01/24(土) 21:58:33ありがとうございました
import java.io*;
import.javax.swing.*;
は記述していたのですが
import.javax.swing.filechooser.FileFilter;
を追加したらできました。
0100デフォルトの名無しさん
2009/01/25(日) 03:01:44やったことある人いませんか?
そこの2章スプライト作成のsprite.java
で最後の記述にDraw draw=null;ってありますけど
Drawは標準的クラスでないからもちろんエラーでます
この本なんなんですか?
0101デフォルトの名無しさん
2009/01/25(日) 03:25:29最初から100回嫁
0102デフォルトの名無しさん
2009/01/25(日) 03:44:19添付のCDにクラスを定義したソースファイルがある。
0103デフォルトの名無しさん
2009/01/25(日) 04:12:46トン
0104デフォルトの名無しさん
2009/01/25(日) 19:29:52(^ω^;)
0105デフォルトの名無しさん
2009/01/25(日) 23:48:15必要なクラスをすべておいてもBlockクラスが見つからないってエラーが出ます
付属CDのソースを使っても同じエラーが出ました
何が悪いんでしょうか?この本Game2Dクラスの説明がはしょってあるのでまったくわかりません
この本なんなんですか?
0106デフォルトの名無しさん
2009/01/26(月) 00:04:350107デフォルトの名無しさん
2009/01/26(月) 00:05:36文句いいたいのはヤマヤマなんだけど
これでもし俺がなんか単純なミスで動作してなかっただけなら恥ずかしいし・・・
だからお前らに聞いてるの!!
0108デフォルトの名無しさん
2009/01/26(月) 00:08:260109デフォルトの名無しさん
2009/01/26(月) 00:12:38おまえ巨大ウンコだろ?
0110デフォルトの名無しさん
2009/01/26(月) 00:13:03そのためにはその本を買うか立ち読みしてこないといけないんだけど、
それを見ず知らずのおまえのために誰かがやってくれるといいね
0111デフォルトの名無しさん
2009/01/26(月) 00:16:58いや著名な本だから誰かもってるだろ
俺もここで進められた本だし
何より俺はお前らを信じてるよ
0112デフォルトの名無しさん
2009/01/26(月) 00:30:06タイトルにゲームと付いているような入門書を選ぶやつは、
大概脱落してここにいないだろ。
0113デフォルトの名無しさん
2009/01/26(月) 00:33:10そうか?結構面白いぞこれ
初心者のおれにはちょっと説明足らずな点をどうにかしてほしいんだけどな
0114デフォルトの名無しさん
2009/01/26(月) 01:34:230115デフォルトの名無しさん
2009/01/26(月) 01:44:23第6章にBlock.javaなんて無い、5章だろ
だいたい、Block.javaは、Blockを定義しているんだからBlockが見つからないとかあり得ないだろw
なんかタイプミスしてるはず
0116デフォルトの名無しさん
2009/01/26(月) 01:54:060117デフォルトの名無しさん
2009/01/26(月) 02:12:50そうだ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
0118デフォルトの名無しさん
2009/01/26(月) 02:16:300119デフォルトの名無しさん
2009/01/26(月) 03:05:30Error : 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)
これで全部です
何度もぐぐったけど解決できません お願いします
0120デフォルトの名無しさん
2009/01/26(月) 03:25:100121デフォルトの名無しさん
2009/01/26(月) 03:45:24> 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" とは之如何。
0122デフォルトの名無しさん
2009/01/26(月) 04:54:48Block.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になってるようですがわかりません
0123デフォルトの名無しさん
2009/01/26(月) 04:57:09136 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 }
0124デフォルトの名無しさん
2009/01/26(月) 10:55:42もっかい本の該当箇所を読み返せば?
0125デフォルトの名無しさん
2009/01/26(月) 16:44:51import 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メソッドでどうそれを代入すればいいかわからないんだが・・・
0126デフォルトの名無しさん
2009/01/26(月) 17:08:31で、既存のファイルに書き込みをすると、PCごと落ちてしまいます。
皆さんもお試し下さい。
0127デフォルトの名無しさん
2009/01/26(月) 18:40:55import 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が落ちるなんてことはない。
0128デフォルトの名無しさん
2009/01/26(月) 19:11:00つっこみどころが多すぎる
きちんと初心者向けのjavaの参考書を買って頭から読んで理解することから始めた方がいい
買うときは内容を見てグラフィックス関連やアプレット関連の記述がそれなりにあるものを
0129デフォルトの名無しさん
2009/01/26(月) 19:29:35すまん、マジで基本からやりなおしたほうがいいと思う
0130デフォルトの名無しさん
2009/01/26(月) 19:47:30OutputStreamではなく直接Fileを指定する。
上書きの場合、100%リセットする。
おそろしいことです・・・・。
0131デフォルトの名無しさん
2009/01/26(月) 20:24:25(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のグラフィックフレームワークの使い方を初歩から勉強した方がいいと思う。
0132デフォルトの名無しさん
2009/01/26(月) 20:34:16import 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は何?
0133デフォルトの名無しさん
2009/01/26(月) 20:42:31複数のjavaファイルをコンパイルしMyApp.jarにまとめました。
外部ライブラリ(log4, commons-io, commons-*等)をMyApp.jarと同じディレクトリに配置しclasspathに記述することで動作確認できました。
MyApp.jarにライブラリファイルを単に追加しただけだと
実行時に「ミツカラネーヨ」と怒られてしまいます。
0134デフォルトの名無しさん
2009/01/26(月) 20:50:480135デフォルトの名無しさん
2009/01/26(月) 21:20:15OSはXP,Javaは1.6.0_11
いや、もう忘れてください。deleteしてからwriteしたら何事も無く動いたんで・・・
夢でも見ていたんでしょう・・・
0136デフォルトの名無しさん
2009/01/26(月) 22:11:30何、お前らの実力ってその程度だったの?拍子ぬけだわ〜
0138デフォルトの名無しさん
2009/01/26(月) 23:53:03いろいろアドバイスもらってるじゃん。それもわからないようじゃどうしようもない。
このスレは初心者は歓迎するがバカは歓迎しない。
0139デフォルトの名無しさん
2009/01/27(火) 00:11:53何と勘違いしてるんだ?このアホ
0140デフォルトの名無しさん
2009/01/27(火) 00:18:54せめて自分の番号ぐらい書け糞野郎
0141デフォルトの名無しさん
2009/01/27(火) 01:15:22水の中に入れると、どうして乾いたウンコは砕け散るんですか?
0142デフォルトの名無しさん
2009/01/27(火) 01:46:05いろいろアドバイスもらってるじゃん。それもわからないようじゃどうしようもない。
このスレは初心者は歓迎するがバカは歓迎しない。
↑って、答えられないときのここの常連の常套句だよなwwうける。
0143デフォルトの名無しさん
2009/01/27(火) 03:03:56初心者だろうが、玄人だろうが、ちゃんとまず自分で勉強して、何が理解できなかったのか具体的に書いて、アドバイス受けろよ。
上達する香具師は(初心者や玄人に限らず)、質問の仕方もウマい。
0144デフォルトの名無しさん
2009/01/27(火) 05:28:35>>975
http://pc11.2ch.net/test/read.cgi/tech/1232330798/
ここ
この138と143を徹底的に痛めつけてほしい
0145デフォルトの名無しさん
2009/01/27(火) 05:29:110146デフォルトの名無しさん
2009/01/27(火) 05:29:340147デフォルトの名無しさん
2009/01/27(火) 05:31:310148デフォルトの名無しさん
2009/01/27(火) 06:28:59ところで鼻糞って食えるんですか?
0149デフォルトの名無しさん
2009/01/27(火) 13:16:06ネットに混乱を持ち込んじゃいけない。
0150デフォルトの名無しさん
2009/01/27(火) 14:57:200151デフォルトの名無しさん
2009/01/27(火) 18:03:59これって、オブジェクト版の配列なのか?
しかも、めちゃくちゃ使いやすいように改良したやつ
0152デフォルトの名無しさん
2009/01/27(火) 18:12:510153デフォルトの名無しさん
2009/01/27(火) 18:17:38なんか、難しそうな名前付けてたからやる気が失せたが
実際は超簡単だった
0154デフォルトの名無しさん
2009/01/27(火) 18:19:080155デフォルトの名無しさん
2009/01/27(火) 18:19:29そこから得られる値を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)
を実行する方法は何か無いでしょうか?
0156デフォルトの名無しさん
2009/01/27(火) 19:13:45TestEnumを使用する前に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()をまず呼んでねってことにすれば使う側も少し楽に。
0157デフォルトの名無しさん
2009/01/27(火) 19:16:07public enum TestEnum {
A(NativeHoge.getA()), B(NativeHoge.getB()), ... ;
static { System.loadLibrary("libNativeHoge");}
0158デフォルトの名無しさん
2009/01/27(火) 19:30:59それはloadLibraryより先にNativeHoge.getA()が呼ばれる。
enumではAやBの初期化をコンパイラが生成した静的初期化子の中で行うから、
その静的初期化子の処理はTestEnumの静的初期化子の中で最後に実行される。
0159157
2009/01/27(火) 19:33:35public enum TestEnum {
A(NativeHoge.getA()), B(NativeHoge.getB()), ... ;
}
class NativeHoge {
static { System.loadLibrary("libNativeHoge"); }
0160デフォルトの名無しさん
2009/01/27(火) 19:38:49あー、そうか。難しく考えすぎた。
nativeメソッドがNativeHogeクラスに抽出されているからその方法でいいんだね。
TestEnum自身がnativeメソッドを持っていて、
それをTestEnumのコンストラクタで呼び出す場合と混同してた。失礼した。
0161デフォルトの名無しさん
2009/01/27(火) 20:09:12初めは確かにそういう実装だったのですが、たかが定数を読み出す
ためにinit()なんかやってられるか〜というクレームが(笑)。
>>157
う〜ん、なるほど。Enum要素の列挙のあとであればstatic{}句は書ける
のですね。勉強になりました。でもやはり呼ばれるのは各要素が初期化
された後でした・・・
>>159
はい。確かにその解決策が確実なんです。ただNativeHogeはSWIGで
自動生成されたクラスで、出来ればあまり弄りたく無かったのです。
ただ調べてみるとSWIG側の工夫でNativeHogeにstatic{}句を埋め込む
事も出来そうなので、>>159の方向で調べてみます。
色々ありがとうございました。
0162デフォルトの名無しさん
2009/01/27(火) 21:07:39public 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(); ...
むずいな。
0163デフォルトの名無しさん
2009/01/27(火) 22:39:51メンバークラス(またはインナークラス)の存在価値が分かりません。
クラスの外にあるクラスも中にあるクラスも使うときはnewするんだから同じじゃないんですかね?
やっぱり大きいプログラム組むような経験が無いとピンと来ないものでしょうか?
0164デフォルトの名無しさん
2009/01/27(火) 22:48:21staticが仕えないので身内だけで仕事できる=保守性最強
嘘だお^^
0165デフォルトの名無しさん
2009/01/27(火) 22:53:59SWIGで生成される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とかの呼び出しを書いているので頻度は高くないとは思うけど
0167デフォルトの名無しさん
2009/01/27(火) 23:04:54最近メンテされてないけど
ttp://javafaq.jp/S016.html#S016-09
0168デフォルトの名無しさん
2009/01/27(火) 23:10:47調べてみたら、ネィティブメソッドをラップするクラスの定義に
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
0169デフォルトの名無しさん
2009/01/28(水) 00:17:490170デフォルトの名無しさん
2009/01/28(水) 00:22:390171デフォルトの名無しさん
2009/01/28(水) 01:17:25List.size(offspring)を使うと、GeneというクラスにはList.sizeは使えないって表示されるんだが
0172デフォルトの名無しさん
2009/01/28(水) 01:25:26>クラスを足して
これは、何をすること?
っていうか、クドクド説明するより、
ソースをアップローダに上げた方が早いのでは?
0173デフォルトの名無しさん
2009/01/28(水) 02:05:100174デフォルトの名無しさん
2009/01/28(水) 14:57:08シンボル: メソッド getParameter(java.lang.String)
場所 : P12 の クラス
num=Integer.parseInt(getParameter("number"));
^
このエラーの意味を教えてください。
お願いします。
0175デフォルトの名無しさん
2009/01/28(水) 15:02:24ムリ、情報少なすぎ
0176デフォルトの名無しさん
2009/01/28(水) 16:21:500177デフォルトの名無しさん
2009/01/28(水) 16:24:370178デフォルトの名無しさん
2009/01/28(水) 22:42:58したい事は、フラットファイルを読み込んで中の文字列を処理し、
別ファイルに吐き出すことです。
こんな感じの事がしたい人が読むといい実用的な参考書があれば、教えてください。
# perlを少しかじったことがある程度の無謀な新参レベルです
0179デフォルトの名無しさん
2009/01/28(水) 23:14:50■読んでないけど参考になりそうだ
Eclipse 3.4で超簡単Javaプログラミング基礎入門 (1/5) - @IT
http://www.atmarkit.co.jp/fjava/rensai4/java5eclipse01/java5eclipse01_1.html
後は、下のキーワードでぐぐればサンプルがいくらでも出てくるぜ
「java テキストファイル 読み込み」
「java テキストファイル 書き込み」
0180デフォルトの名無しさん
2009/01/28(水) 23:43:49インターネッツに繋げてれば、参考資料読み放題だぜ
0181デフォルトの名無しさん
2009/01/28(水) 23:54:52自分でフレームワークを作りたいときオススメの参考書ないすか?
0182デフォルトの名無しさん
2009/01/29(木) 00:08:44紙媒体を探してたりしてたわけですが
ありがとうございます。
0183デフォルトの名無しさん
2009/01/29(木) 00:32:42グーグル先生に聞いてれば勉強できちゃうって思うようになっちまったもんで。
PCから離れて勉強する機会があるとやっぱ紙媒体も必要だよね
0184デフォルトの名無しさん
2009/01/29(木) 08:11:00「Java言語で学ぶデザインパターン入門」
ttp://www.amazon.co.jp/dp/4797327030/
これ読んでも、フレームワークが作れるかどうかは経験次第だが。
0185デフォルトの名無しさん
2009/01/29(木) 10:52:51ファイル P12.java の 45行目に書かれている、
引数にStringを持つメソッド getParameter の定義を
見つけることが出来ませんでした。の意。
大抵はスペルミス。static の付け忘れとかも。
行数の表示されるエディタを使うとヨロシ。
0186デフォルトの名無しさん
2009/01/29(木) 12:22:36Javaを覚えるのは大変ですか?
家のPCでJavaを用いたオリジナルアプリケーションを作成することは可能でしょうか。
0187デフォルトの名無しさん
2009/01/29(木) 12:25:440188デフォルトの名無しさん
2009/01/29(木) 12:38:40ありがとうございます。
COBOLは出先の金融機関でしか触ったことがないです。
PCでもCOBOLプログラミングができるとは聞きましたが・・・。
例えば・・・小遣い帳や住所録などの管理システムも作れるでしょうか。
0189デフォルトの名無しさん
2009/01/29(木) 12:41:480190デフォルトの名無しさん
2009/01/29(木) 13:02:21まあ、他の言語に移ると、扱える整数が小さかったりして驚くよね。
構造体の定義や初期化も面倒くさいし、
表示フォーマットも不便だし・・・
0191デフォルトの名無しさん
2009/01/29(木) 13:32:030192デフォルトの名無しさん
2009/01/29(木) 13:42:08なんで分かるの?
0193デフォルトの名無しさん
2009/01/29(木) 14:52:01サーバーサイドJavaをレンタルサーバーでやりたい場合、
サーバーには何を入れたらいいんですか?
サーブレットとかは何に格納すればいいんでしょうか?
0194デフォルトの名無しさん
2009/01/29(木) 15:13:37昔の知識で言うとCOBOLは出来るけどBASICは出来ないってありえないだろ
0195デフォルトの名無しさん
2009/01/29(木) 15:20:04文字化けするんだけど、同じ症状の人いますか?
ネットで調べたら、公式サイトで症状は確認されているが原因は不明とのこと。
0196デフォルトの名無しさん
2009/01/29(木) 15:56:04専用スレがあるならそこで聞け
0197デフォルトの名無しさん
2009/01/29(木) 16:23:09COBOLの.Netって富士通が出してるやつしか無いんじゃね?
海外では使ってないのかな?
0198デフォルトの名無しさん
2009/01/29(木) 18:30:03>>191が言うそれと>>186が同一人物だとして>>186はjavaに興味を示してるわけだし
.netでc#やりたいってその別のスレでは言ってるのかもしれん
そんなことより.net版のcobolなんてあるのならjvm上で動作する言語はいっぱいあるからjcobolとかもありそうだな
0199デフォルトの名無しさん
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);
略
0200デフォルトの名無しさん
2009/01/29(木) 20:49:340201デフォルトの名無しさん
2009/01/29(木) 20:53:26このクラスのインスタンスを別のクラスからつくるんだろ
0202デフォルトの名無しさん
2009/01/29(木) 21:05:57ありがとうございます
0203デフォルトの名無しさん
2009/01/29(木) 21:08:23簡単に言うとthisは自分を参照するから。
実行時は実行中のコンテキストを指す・・・というと誤解があるか。
0204デフォルトの名無しさん
2009/01/29(木) 21:19:13public SampleApp()がどこかでインスタンス化されるから
インスタンス名を省略できるってわけですね?
0205デフォルトの名無しさん
2009/01/29(木) 21:29:27馴染み深いここにする。すれ違いだけど、聞いてくれ。
昨日、大発見したんだ。
ハルマゲドンっていうじゃん。あれって、素の言語の意味だと、「ギルドの丘」っていう意味なんだって。
で、聖書の3:16章にハルマゲドン(ギルドの丘)で最終戦争が起こるっていう予言があるんだと。
で、聖書とマヤの予言には大昔のつながりがあるんだと。マヤの暦は2012年12月21日を最後に消えてるでしょう。 だから、なにかあるんじゃないかと思うんだ。。
やっぱ、最終戦争(第3次世界大戦)じゃないかって本とかでいわれてるけど、一番問題なのは、ハルマゲドンの本当の意味のギルドの丘の場所なんだけど、イスラエルのガザの近くなんだって。
まじで、やばくね?
ハルマゲドンっていうじゃん。あれって、素の言語の意味だと、「ギルドの丘」っていう意味なんだって。
で、聖書の3:16章にハルマゲドンで最終戦争が起こるっていう予言があるんだと。
で、聖書とマヤの予言には大昔のつながりがあるんだと。マヤの暦は2012年12月21日を最後に消えてるでしょう。
やっぱ、最終戦争(第3次世界大戦)じゃないかとかいわれてるけど、一番問題なのは、ハルマゲドンの意味のギルドの丘の場所なんだけど、
これってば、イスラエルのガザの近くなんだって。
まじで、やばくね?昨日、深夜ブックオフで買ってきたオカルト本を組み合わせるとこういう結果になるんだけど。
0206デフォルトの名無しさん
2009/01/29(木) 21:35:330207デフォルトの名無しさん
2009/01/29(木) 21:44:41そうそれ!わかってくれたか。やっぱやばいよ。まじで。
0208デフォルトの名無しさん
2009/01/29(木) 22:21:200209デフォルトの名無しさん
2009/01/29(木) 22:38:160210デフォルトの名無しさん
2009/01/30(金) 00:09:170211デフォルトの名無しさん
2009/01/30(金) 02:45:51マウスイベントのソースを書くときだけエラーがでます。
授業でもらったソース通りにまるまる書いてもだめです。
ちなみに授業でもecipseを使ってまして学校のPCだったら上手くいくんです。
スペルミスもさんざん確かめました。ダメです。
他のイベントは試したことないですが・・・
テストも近かったりするんで誰かお願いします
0212デフォルトの名無しさん
2009/01/30(金) 03:01:52import 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行がおかしいようです。
0213デフォルトの名無しさん
2009/01/30(金) 03:05:390214デフォルトの名無しさん
2009/01/30(金) 03:15:01試しましたが同じ所にエラーが出たままみたいです。
他に問題点はないでしょうか。
よく分かりませんがソースを書く以前に設定とかも適当に
やってるんでその辺におかしいと思う点あればそっちも
考えてくれたらです。こうゆう設定にしないとイベントは
使えないんだみたいな・・・
0215デフォルトの名無しさん
2009/01/30(金) 03:16:25矢印入ってるからじゃねーの?
0216デフォルトの名無しさん
2009/01/30(金) 03:18:370217デフォルトの名無しさん
2009/01/30(金) 03:23:15実際は入れてないです。
>>216何のことかさっぱりわからないいんです。
とりあえずソースに問題がないならもう無理っぽいですね・・・
0218デフォルトの名無しさん
2009/01/30(金) 03:24:47エラーメッセージくらい貼れよ、カス
0219デフォルトの名無しさん
2009/01/30(金) 03:49:23学校の先生に相談してみたら? テストの点数悪くてもやる気で成績くれるかもよwww
具体的な環境設定はこっち。
Eclipse統合M26【Java/C/PHP/Ruby/Python/Perl】
http://pc11.2ch.net/test/read.cgi/tech/1224536200/l50
第三次世界大戦でも起きたら世界不況脱出するかもな。不謹慎だが。
第二次世界大戦の前にも大恐慌起きて、世界大戦で緊急財政支出行って持ち直したよね。
COBOLは出来るけどBASICは出来ないじゃなくて、BASICじゃやってられないって方が大きいだろう。
器用貧乏であれこれ出来るなら、プロジェクト毎に適当に言語決められてもなんとか成るが、
普通は、新しい言語覚えるのは非常にコスト掛かる物だろ。
基本はコミュニケーションでも、日本語使いが、英語覚えるのは大変だぜ。日本語をそのまま使えたほうが遥かに便利。
0220デフォルトの名無しさん
2009/01/30(金) 05:17:43鼻糞は黙っとれ
0221デフォルトの名無しさん
2009/01/30(金) 05:35:08あれGUIでやるにはどこ押せばいいの?
0222foo
2009/01/30(金) 08:36:080223デフォルトの名無しさん
2009/01/30(金) 10:54:41は基本的なオブジェクト指向の概念もわかってないくせに
GUIやらアプレットやらやろうとしてるのが間違い
入門からやり直せ
0224デフォルトの名無しさん
2009/01/30(金) 14:28:53機種依存文字を扱う必要があって、EUC_JPではなく
EUC_JP_Solaris
という文字コードに変換してファイルに出力しようとしているのですが、「�avの文字だけ上手く変換できません。
他の文字「�@」などは正常に出力されてます。
OSはウィンドウズです。
理由や対処法をご存知な方はいらっしゃいませんか?
「〜」の変換だけでも頭が痛かったのに……orz
0225デフォルトの名無しさん
2009/01/30(金) 15:19:27どうみても拡張文字だし。
0226デフォルトの名無しさん
2009/01/30(金) 15:19:500227デフォルトの名無しさん
2009/01/30(金) 16:54:530228デフォルトの名無しさん
2009/01/30(金) 18:58:33あれGUIでやるにはどこ押せばいいの?
0229デフォルトの名無しさん
2009/01/30(金) 20:33:38普通に考えたらそうなんだけど確証と、�bノ対する対処法が欲しかった
>>227
ほかの文字はXPで動いてます。
ただのEUC_JPだったら�@だって変換できないですよ。
そもそも拡張文字なんてどうせウィンドウズ以外じゃ表示できないんだから諦めてくれればいいのにorz
ウィンドウズ以外じゃ使わないシステムだからそんな言い訳が通用するはずも無く……
0230デフォルトの名無しさん
2009/01/30(金) 20:41:300231デフォルトの名無しさん
2009/01/30(金) 21:13:25EUC_JPで他システムに送るからeuc系以外不可です。
けどwindows-31j から直接(うにを介さず)EUCに変換できれば上手くいくかもしれないですね。 そんなことできるか知らないですけど。
0232デフォルトの名無しさん
2009/01/30(金) 21:24:04変換先がないって言ってんだから、送られた側のシステムで�b�使うことはないんじゃねーの?
0233デフォルトの名無しさん
2009/01/30(金) 22:10:13試してもらえば分かると思いますが、
サクラエディタや秀丸エディタで「�avをEUC_JPで保存できますし開けます。
あと事の発端はシステムから送りかえされてきたファイルに�@などがあったことなんで使わないとはいいきれないんです。
ここに居る人のレベルでは対処不可ですか? とちょっと煽ってみる。
現象自体は「�avを含む文字列を文字コードにEUC_JP_Solarisを指定してファイル出力するだけで再現すると思います。 (再現しなかったらバージョンの問題など、別の理由になるので再現しないならそのほうがありがたいのですが……)
「�avをEUC_JPで出力したい、ただそれだけなんです。 よろしくお願いします。
0234デフォルトの名無しさん
2009/01/30(金) 22:16:490235デフォルトの名無しさん
2009/01/30(金) 22:27:44EUC_JP_MSなんて物が存在してるようで、秀丸で保存できるのはEUC_JP_MSだから?か?
0236デフォルトの名無しさん
2009/01/30(金) 22:39:24javaで使う方法がありますか? その文字コード。
Javaが内部でうにに勝手に変換するのが問題なんです。
うにには本来拡張文字が無いので。
0237デフォルトの名無しさん
2009/01/30(金) 22:47:13サポートされているエンコーディング
http://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/intl/encoding.doc.html
javaの5.0かせサポートされてるくさい
文字コード表
http://ash.jp/code/codetbl2.htm
そしてJISX0208にNo.はある。
しかしjavaはうにとの相互変換でアボーンしちゃうんだよなどうしたものか
0238デフォルトの名無しさん
2009/01/30(金) 23:01:03件の�bヘU+2116。ちゃんと存在する。
0239デフォルトの名無しさん
2009/01/30(金) 23:09:12EUC_JP_MSで検索したらヒットしなかったんですけど、EUC_JP_Solarisの話ですか?
0208にあるならEUC_JP_LINUX 使えば上手くいく可能性はありますね。
上手くいくなら
EUC_JP_LINUXとEUC_JP_Solarisでそれぞれエンコしてバイト単位で比較して補完するってこともできなくは無いか。一からエンコードプログラム書くよりはましだろうけど…
>>238
そうなんですか? JAVAでバイト吐かせて確認してたのでその値であることは知ってましたが、
どこかの文字コード対応表では未対応扱いになってたので正式なものではないのかと思ってました。
存在するかどうかはあまり問題じゃなくて、変換できないのが問題なんですけどね。
0240デフォルトの名無しさん
2009/01/30(金) 23:09:34ないよ。その表はフォントが対応してると勝手に表示しちゃうだけ。
JIS X 0208 では13区は使われてない。
だから独自拡張する人達に13区勝手に使われちゃってるんだけど。
0241デフォルトの名無しさん
2009/01/30(金) 23:17:20なんというカオス
eucJP-ms
http://www2d.biglobe.ne.jp/~msyk/charcode/cp932/eucJP-ms.html
ここの表だと0208にはない事になってるね
つまり、0208に存在しない�bェEUC_JP_Solarisでバケルのは正常な動作なのか
0242デフォルトの名無しさん
2009/01/30(金) 23:20:21NEC拡張外字って書いてますね。
NEC死ねばいいのに。
0243デフォルトの名無しさん
2009/01/30(金) 23:24:10こっちに変換されている悪寒
0244デフォルトの名無しさん
2009/01/30(金) 23:31:15テラパッドでEUCで保存したら0xADE2で保存された。
だが、0208には�bヘ存在しないんだから、
EUC_JP_MS→うにに→EUC_JP_Solarisで破壊されるのは正常くさい。
※EUC_JP_MS→うにに→EUC_JP_MSでも破壊されるかもしれんけどw
そして、最大の問題はEUC_JP_Solarisに存在しない筈の�bェ、
>>231のシステムで使われているかどうか。
windowsで使えるんだから使えないのはおかしいとか電波な事を客が言うかどうか。
0245デフォルトの名無しさん
2009/01/30(金) 23:43:56EUC_JP_Solarisに存在するかどうかより使えるかどうかが問題だから
残念ながら多分使えませんは通用しないです……
というか機種依存文字だから使えませんは通用しなかった。
0246デフォルトの名無しさん
2009/01/30(金) 23:48:01やっぱそうなるか〜そっちのシステムの実装によっちまうんだな。
しかし、対策考えると頭から湯気がでそうだな
0247デフォルトの名無しさん
2009/01/30(金) 23:48:480248デフォルトの名無しさん
2009/01/30(金) 23:50:38正直この仕事で文字が嫌いになりました。
0249デフォルトの名無しさん
2009/01/30(金) 23:58:55結論は「正攻法はなし」って感じですねorz
独自で文字セット作成がんばります……
0250デフォルトの名無しさん
2009/01/31(土) 00:09:14オマエが勘違いしているだけ。
バカってそんなもん。
0251デフォルトの名無しさん
2009/01/31(土) 00:11:470252デフォルトの名無しさん
2009/01/31(土) 00:15:27正攻法はなしという判断がバカなのか。
どっちだろね?
0253デフォルトの名無しさん
2009/01/31(土) 00:16:230254デフォルトの名無しさん
2009/01/31(土) 00:28:13try {
return new ArrayList();
} catch (Exception e) {
//ここで非チェック例外を投げないと
//このメゾットは型list を返す必要があるというエラーになる
}
}
なぜコレクションを返すときに非チェック例外を投げないとエラーになるのでしょうか
0255デフォルトの名無しさん
2009/01/31(土) 00:30:57public List method(){
try {
return new ArrayList();
} catch (Exception e) {
}
return null; //←これはないの?
}
0256デフォルトの名無しさん
2009/01/31(土) 00:36:34エラーというのは、コンパイル・エラーのことですか。
例外が発生した場合の流れに、メソッドを抜ける方法が書かれていないから。
非チェック例外は、メソッドを抜ける方法の一つ。
0257デフォルトの名無しさん
2009/01/31(土) 01:41:540258デフォルトの名無しさん
2009/01/31(土) 02:56:42EUC_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)
うちの環境だとこうなったけど、どこら辺が悪いの?
0259デフォルトの名無しさん
2009/01/31(土) 07:12:110260デフォルトの名無しさん
2009/01/31(土) 10:43:43'��'をファイルに出力
EUC_JP_Solaris: 0x8FA2F1
EUC_JP_LINUX: 0x3F
EUC_JP: 0x8FA2F1
↑これをEUCを扱えるエディタで開いてみて。 3バイトの方になると多分化けるから。
0261デフォルトの名無しさん
2009/01/31(土) 11:21:56たとえばFireFoxなら?
0262デフォルトの名無しさん
2009/01/31(土) 12:45:43ご説明ありがとうございました
0263デフォルトの名無しさん
2009/01/31(土) 13:11:25EUC_JP_MSだと0xADE2だが、EUC_JP_Solarisだと0x8FA2F1で正解ってことか?
だとすると、winのエディタはEUC_JP_MSで動いてるからEUC_JP_Solarisの�b�表示できないのは正常ってことになる。
確認するならEUC_JP_Solarisをまともに扱えるエディタでないとあかんと。
0264デフォルトの名無しさん
2009/01/31(土) 13:20:25EUC_JP_SolarisはJIS X 0212も含んでるから、つまり正解。
>>259
バカは何人集まってもバカって事だな。
0265デフォルトの名無しさん
2009/01/31(土) 14:11:428FA2F1 読む場合は補助漢字さえサポートしてれば読める。
EUC_JP_MS は出力時は ADE2 だが、
ちゃんと実装してあれば読み込み時は ADE2 8FA2F1 8FF4AC 全部読めるはず。
Windows API の MultiByteToWideChar WideChatToMultiByte とかに
引数 CodePage として 51932 を渡した場合は補助漢字サポートしないから ADE2 しか読み書きできない。
自前でやらずに Windows API に丸投げしてると 8FA2F1 は読めない、って事になる。
0266デフォルトの名無しさん
2009/01/31(土) 17:18:560267デフォルトの名無しさん
2009/01/31(土) 17:30:27JavaEE5っていう分厚い本は難しそうです><;
0268デフォルトの名無しさん
2009/01/31(土) 18:02:02Java のWebサービスは難しいかもな。
0269267
2009/01/31(土) 19:49:07お礼に↓これを教えてあげます><;私も昨年夏買いましたが、重宝しました><;
http://www.rakuten.co.jp/fujix/514143/443175/717147/
0270デフォルトの名無しさん
2009/01/31(土) 20:48:060271デフォルトの名無しさん
2009/01/31(土) 20:51:44Java MEの話だが実機で扱える文字コードがばらばらなのでShift-JISとUTF-8とUTF-16の相互変換を自前で書いたよ。
0272デフォルトの名無しさん
2009/01/31(土) 22:22:48未経験者として就職するにはどのくらい覚えたらいいか目安的なのない?
今、入門書で抽象クラスやらインターフェースやら覚えたんだけど・・・
0273デフォルトの名無しさん
2009/02/01(日) 01:32:08で、あっちはあっちでソラリスしか使ってないんだから他で使うのは諦めろよって仕様なんだろ。
黙ってソラリス使っとけ。理由は他システムとの連携のためだ。
javaって実行環境依存な所があるから、システム連携で嵌まりたく無ければ統一しとけ。
0274デフォルトの名無しさん
2009/02/01(日) 01:40:160275デフォルトの名無しさん
2009/02/01(日) 01:42:31EUC_JP_Solarisはソラリス限定の文字コードじゃない。
あとEUC_JP_Solarisが問題というよりは�bェEUCで出力できないのを問題にしてる。
0276デフォルトの名無しさん
2009/02/01(日) 01:44:50Webサービス使うだけならeclipseでウィザード起動一発だったような。RADだったかもしれんけど。
0277デフォルトの名無しさん
2009/02/01(日) 01:52:340278デフォルトの名無しさん
2009/02/01(日) 03:02:58みたいな文字列を
"東京都 渋谷区 渋谷 1-1-1"
"キャベツ太郎"
"03-0000-1111"
のように分割したいのですが
"東京都 渋谷区 渋谷 1-1-1" の所にスペースが使われてるのでスペースを区切り文字として扱うことが出来ません
なんかいい方法ないでしょうか
0279デフォルトの名無しさん
2009/02/01(日) 03:16:20なんか規則性がないと無理だな。
電話番号と氏名は間に空白が絶対に入らないというルールがあるなら、
後ろから空白区切りで電話番号と氏名を切り出して、その前方は全部住所とかそんな感じだ。
0280デフォルトの名無しさん
2009/02/01(日) 03:58:31氏名と電話番号にスペースが入らないと断言できるなら後ろから取り出すとか。
>>279も言ってるように、なんらかの規則性がないと>>278はただの文字列だし無理。
0281デフォルトの名無しさん
2009/02/01(日) 04:22:56何かしらデータを区切ってくれたり(規則性を持たせたり)しないと無理
0282デフォルトの名無しさん
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" とか
いくらでも考えられるし。
0283Javaで
2009/02/01(日) 10:24:10金額をあたえると最小の紙幣数、硬貨数で支払うための金種別の枚数・個数を求めるメソッドを作成
37521
1万が3
5000が1
2000が1
500が1
10が2
1が1
ってどうやってつくるんでしょうか?
教えて頂けるとうれしいです。
0284デフォルトの名無しさん
2009/02/01(日) 11:15:150285デフォルトの名無しさん
2009/02/01(日) 12:39:52もう1つの問題はEUC_JP_Solarisで出力される�bニ、
EUC_JP_MSで出力される�bフコードが違い、
winのエディタで見えなくて、あれあれ?となっている事。
件のシステムがEUC_JP_Solarisといいつつ、
EUC_JP_MSの�bカゃないと受け付けないなんてギャグもありえるのが怖いね。
0286デフォルトの名無しさん
2009/02/01(日) 13:40:20割り算も出来ねーのかよw
0287デフォルトの名無しさん
2009/02/01(日) 13:54:37EUC_JP_Solarisじゃないと駄目とは言ってなくね?
ウィンドウズで文字コードEUCの�bェ表示できるコードで出力したいって話でしょ?
0288デフォルトの名無しさん
2009/02/01(日) 14:01:03最初の質問者はEUCは理解していない様子だ。
0289デフォルトの名無しさん
2009/02/01(日) 14:04:26暗黙裡の要求は、秀丸やサクラエディタと同じように変換したいと言うことだったらしい。
持って言った先のシステムについて調べたがらなかったのも、そんなものは無かったからなのかも。
0290デフォルトの名無しさん
2009/02/01(日) 14:12:35だね。
表面上の目的は「EUC_JP_Solarisで�b�出力できない」
確認方法は「秀丸で�b�表示できない」だったか
しかし、秀丸で�b�表示できてもそれはEUC_JP_Solarisの�bナはない、
むしろ、秀丸らで表示できないのが正しい姿。
本当にEUC_JP_Solarisの�bナ出力できればいいのか、
秀丸で表示できる�bナいいのかは、彼でなければわからない。
0291デフォルトの名無しさん
2009/02/01(日) 14:38:05>>290
特殊記号がうにからEUC_JPへの変換で化ける(サクラなどで確認)
↓
EUC_JP_Solarisでやってみたら概ね変換できたけど�bヘ駄目だね(サクラなどで確認)
↓
さぁどうしようか ←いまここ
別にEUC_JP_Solarisでないといけないわけではないです。
意図的には
>秀丸で表示できる�bナいい
どちらかというとこっちが正しい。
ただこう言うとShift-JISでいいじゃんとかいいだす人がまた出るでしょ……あくまでEUC_JPファミリー、とでも言えばいいのかな。
やりたいことは、「水色の部分も含めこの表の通りに出力したい」と思ってください。 始めからこの表見つけて張ればここの人たちも混乱しなかったよな……
http://charset.7jp.net/euc.html
今までのレスから理想はEUC_JP_MSを指定する、なんだろうけどJAVAのライブラリにないよね……
0292デフォルトの名無しさん
2009/02/01(日) 14:40:06表示するのは表示するソフト次第だって、理解できないのか?
0293デフォルトの名無しさん
2009/02/01(日) 14:42:01EUC_JP_Solarisで変換した�bセって、秀丸では表示できないけど、FireFoxでは表示されるよね?
0294デフォルトの名無しさん
2009/02/01(日) 14:42:41>始めからこの表見つけて張ればここの人たちも混乱しなかったよな……
混乱してるのはオマエで、未だに
0295デフォルトの名無しさん
2009/02/01(日) 14:45:53おぃぃぃw
>>224見るとEUC_JP_Solarisじゃないとあかんようにしか見えんぞ。
ならEUC_JPで出力してみるかEUC_JP_MSでやってみたらいいんじゃね?
0296デフォルトの名無しさん
2009/02/01(日) 14:47:47ソフト次第って片付けられるならそれで片付けてるよ。
http://charset.7jp.net/euc.html
↑基準はこれでお願いします。
EUC_JP_Solarisだと概ねこの表に沿ったエンコードになるけど、�bヘこの表から外れた文字コードになりますよね?
0297デフォルトの名無しさん
2009/02/01(日) 14:47:48>ここに居る人のレベルでは対処不可ですか? とちょっと煽ってみる。
なんてあおってたのか?
マジで首吊って死んどけやwww
0298デフォルトの名無しさん
2009/02/01(日) 14:48:05その表のとおりだと拡張漢字ないから EUC_JP_MS じゃなくて通称 cp51932 の方だね。
EUC_JP っつったら普通は SS3 の第三第四水準までサポートするし。
0299デフォルトの名無しさん
2009/02/01(日) 14:54:00224以降でEUC_JP_Solaris以外の話を俺はしてるし、エディタで表示できるかどうかを問題にしてることも話してるから
このスレの聡明な方々なら理解してもらえてると思ってたし、実際一部の人は理解してくれてたようですが。
始めからこの表見つけて張っておけばここまで混乱しなかったと反省はしている。
0300デフォルトの名無しさん
2009/02/01(日) 14:58:39エディタで表示できないのはエディタ表示できないだけで、EUCとしては正しくでてる。
エディタで見れないとは言ってても、エディタで見れないのはダメとは名言してないしね。
0301デフォルトの名無しさん
2009/02/01(日) 15:04:37ところでさ、エディタで確認したってのは聞いたけど、
>>231 で言うところの他システムで EUC_JP_Soralis の �� (0x8FA2F1)
扱えないか確認したの?
0302デフォルトの名無しさん
2009/02/01(日) 15:10:12オマエが何をみているか知らないが、例えばWindows上でも、Apple Safariなら13区が表示されないのは分かってるよな?
0303デフォルトの名無しさん
2009/02/01(日) 15:11:01「〜」が問題になったと言えば経験者は分かるよ……
俺の質問が分かりづらかった旨を指摘する不毛なレスをいつまでも続けても
誰にも有益ではないと思うのですがその辺りはそろそろ空気読んでいただけませんか?
>>301
あっちから返ってきたものがこっちでファイルに出力できないのが最大の問題なので、
それは(今は)あまり重要ではないです。
こちらの都合で申し訳ないですが、あくまで「うにの�b�>>296表(cp51932?)でファイルに出力したい」を解決したいと考えてはいただけませんか?
0304デフォルトの名無しさん
2009/02/01(日) 15:13:16経験者だけどわかんなかった(テヘっ
空気はお前が読めよ
0305デフォルトの名無しさん
2009/02/01(日) 15:14:260306デフォルトの名無しさん
2009/02/01(日) 15:15:59質問が分かりづらいとかじゃなくて、オマエは今でも勘違いしたまま迷走しているだけだよ。
オマエがしたいのは「EUCに変換する」じゃなくて、「秀丸みたいに変換する」だよ。
0307デフォルトの名無しさん
2009/02/01(日) 15:17:38しかも、本当に変換したデータを持っていく先があるとすれば、
本当の要件は「秀丸みたいに変換する」ではない可能性が大きい。
0308デフォルトの名無しさん
2009/02/01(日) 15:18:13だから具体的なエディタ名だしてるだろう?相当偏った環境でもない限りあなたのところでも再現すると思いますよ?
文字コードも>>296表ならcp51932という文字コードという情報もでてるしね。
それでいて>>302に俺がレスしてもレスしなくても俺の周りからの心象が下がる絶妙な文章。
あなたからは質問者を困らせようとしてるとしか思えない雰囲気がでてるよ。
0309デフォルトの名無しさん
2009/02/01(日) 15:20:33文字列として扱うから「秀丸なEUC→うにに→秀丸じゃないEUC」に変身しちゃうんだしね。
javaの中で文字列じゃないと不都合な場面がいっぱいありそうだから無理だろうなぁ。
0310デフォルトの名無しさん
2009/02/01(日) 15:22:32もう他人の指摘はやめといた方がいいよ。
周りがどんなに熱くなっても、それに付き合ったらだめ。
それこそあなたが空気読めてないし、質問者が煽ったら空気読む以前の問題。
0311デフォルトの名無しさん
2009/02/01(日) 15:22:44オマエが「この表のように」って言っていても、
その表に�bェ表示されてると思っているのは、お前のブラウザの都合だって言ってんだよ。
0312デフォルトの名無しさん
2009/02/01(日) 15:26:100313デフォルトの名無しさん
2009/02/01(日) 15:26:15WAVE DASH問題とは別だよ。
あれはユニコードの方に複数のコードポイントあるだけだから、
例えば読み込み時に Shift_JIS 使っておいて出力時に Windows-31J 使うと化けるけど
要はシステム内で解決できる可能性の高い話なわけ。
�� の方は EUC の方に複数のコードポイントがあるんで
出力先が期待してるコードポイントが何かとか
読み込み元が吐き出すコードポイントが何かとか
要は相手のシステムの情報がないとどうしようもない。
0314デフォルトの名無しさん
2009/02/01(日) 15:26:42バイナリで扱えば確かに化けることはないんでしょうけど、
文字列操作を全て自前で作成するのと、変換表を一から作るのとどっちが楽か、ってところですね……
0315デフォルトの名無しさん
2009/02/01(日) 15:29:190316デフォルトの名無しさん
2009/02/01(日) 15:31:29> 文字コードも>>296表ならcp51932という文字コードという情報もでてるしね。
~~~~~~~~~~~~~~~~~~~~~~~~
0317デフォルトの名無しさん
2009/02/01(日) 15:55:34ごめんなさい、気をつけます。
>>313
ちゃんと分かってる方がいると安心します。
NECとIBMの二つでしたよね? 13区の方を想定してお願いできますか?
とりあえず今は他システムは(下記で無視できるなら)無視してください。
String str = "��"; //←これをEUC_JP(>>296)の13区の�bフあるコードに(実行環境はウィンドウズで)ファイルに出力する
条件としてこれではいけませんか?
0318デフォルトの名無しさん
2009/02/01(日) 15:58:49どこかでフリーのライブラリになってたりしませんか?
それで済むならそれが一番なのですが。
内容的に需要0ってことはないと思うのですが。
0319デフォルトの名無しさん
2009/02/01(日) 16:02:060320デフォルトの名無しさん
2009/02/01(日) 16:02:260321デフォルトの名無しさん
2009/02/01(日) 16:18:21{
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;
}
}
}
初心者の質問で申し訳ないのですが
最大値を求めるプログラムなのですが研修の時このような形で解いたと
思うんですがどうもうまくいかなくて、足りない部分や間違ってる部分があったら教えていただきたいです
0322デフォルトの名無しさん
2009/02/01(日) 16:21:10研修やり直してきた方がいいレベルのソース?に見えるが……
ほんとにこれJAVA?
0323デフォルトの名無しさん
2009/02/01(日) 16:23:44研修でこんなことしてるとか。。。
メソッドとか理解してねーだろ
つかつっこみどころ多すぎてもう・・・
0324デフォルトの名無しさん
2009/02/01(日) 16:27:10CharToByteEUC_JP_Solarisを改造してCharToByteEUC_JP_HOGEとでもすればなんとかならんかね?
0325デフォルトの名無しさん
2009/02/01(日) 16:28:10public 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;
}
}
こんな感じに習ったんじゃないか?
0326デフォルトの名無しさん
2009/02/01(日) 17:04:36すいません、ご指摘ありがとうございます、まだ研修は始まったばかりで今後も続くので
また1から参考書読み直してきます
0327デフォルトの名無しさん
2009/02/01(日) 17:06:42何にしてもエンコーディング指定で解決、とはいかなそうってことですよねorz
>>ALL
自前でやるしかないってわかっただけでも収穫です。 ありがとうございました。
あと質問が非常に分かりづらくて申し訳ありませんでした。
0328デフォルトの名無しさん
2009/02/01(日) 17:12:18sunが秀丸っぽいEUC_JP_MS作ってくれりゃありがたいんだが、
sunにとっちゃ知ったことか!だろうしなぁw
0329デフォルトの名無しさん
2009/02/01(日) 17:30:29勉強するかどうかよりも、そこがブラック会社かどうか疑った方がいいよ。
0330デフォルトの名無しさん
2009/02/01(日) 17:44:04窓で動作させてる時点で負けってことで。
漏れだったらそんな面倒な事に成りそうな仕事受けないからどーでもいいよ。
0331デフォルトの名無しさん
2009/02/01(日) 18:41:23質問スレとしては最低の答えだと思うが同意w
0332デフォルトの名無しさん
2009/02/01(日) 19:16:290333デフォルトの名無しさん
2009/02/01(日) 20:25:16おまえみたいな無能じゃ何やっても無理だろうけどなw
0334デフォルトの名無しさん
2009/02/01(日) 20:53:19jarファイルダブルクリックでアプリケーションを起動させてるんだけど、
VMのオプション"-Xmx512m"の記述をマニフェストファイルに入れるにはどうすればいいんだろう?
マニフェストファイル xxxx xxx でいろいろぐぐってるんだけど、見つからないんです。
0335デフォルトの名無しさん
2009/02/01(日) 23:21:20見当たらない
Java低速GUI Swing 5
http://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の手軽さを全否定するほど、使えないってことは無いと思う。
0336デフォルトの名無しさん
2009/02/01(日) 23:38:19わざわざありがとうございます。
あきらめて、「javaw.exe -jar hoge.jar -Xmx512m」ってショートカットに書くことにします。
0337デフォルトの名無しさん
2009/02/01(日) 23:50:23javaw.exe -jar hoge.jar -Xmx512m
をプロセス起動して落ちるだけのクラスを書いてマニフェストの実行クラスに指定すればよい
0338デフォルトの名無しさん
2009/02/01(日) 23:54:18おもしろっw
0339デフォルトの名無しさん
2009/02/02(月) 00:00:27ゴメン間違えたw
javaw.exe -Xmx512m mainclass
をプロセス起動して落ちるだけのクラスを書いてマニフェストの実行クラスに指定すればよい
0340デフォルトの名無しさん
2009/02/02(月) 00:31:55サンがそういう実装してるから無理じゃね。
個人的にはsjis自体抹殺したいけどな。
日本語単一なら7ビットのJISでいいじゃん。メールにもそのまま使えて無変換で問題が無い。
いちいち変換するから文字化けする。
0341デフォルトの名無しさん
2009/02/02(月) 00:39:450342デフォルトの名無しさん
2009/02/02(月) 00:42:19Win32API質問スレへの誤爆ですか?
ウザイだけなので輸入してこないでください。
0343デフォルトの名無しさん
2009/02/02(月) 09:25:15windows-31jでバイト列にして、それをバイト列でEUCに変換すればいい
じゃん。10〜20行ぐらいで書けるよ。
0344デフォルトの名無しさん
2009/02/02(月) 09:32:25Jpegの画像を読込んで定義してあるカラーに一番近いカラーを判別したいのですが何か
良い方法は無いでしょうか。
画像を読込んでピクセル毎の情報は取得できています。
で、そのRGB情報を使用して判別したいと思っています。
定義カラー(例)
・黒
・赤
・茶
・緑
・白
黒っぽい→黒
茶色っぽい→茶色
0345デフォルトの名無しさん
2009/02/02(月) 10:28:520346デフォルトの名無しさん
2009/02/02(月) 11:05:39RGB情報取得できません。ってんならjavaの領分だがw
0347デフォルトの名無しさん
2009/02/02(月) 11:24:53アルゴリズムとデータ構造)のサイトにある解答には、
public class Gqueue<E> {
private E[] que;
que = (E [])new Object[max]
……
}
と書いてありましたが、これってどういう解釈をすればいいんでしょうか。
キャスト?の意味が良くわからないんですが。。。
0348344
2009/02/02(月) 11:44:59何か使えるクラスがあったらと思いました。
ColorModelとか組み合わせて試してはいるもののいい案が浮かびませんでした。
jimiとかも含めてもうちょっと見てみます
0349デフォルトの名無しさん
2009/02/02(月) 16:24:11試してみれば分かるけど、
que = new E[max]
とは出来ないんだな。あとは以下参照。
http://www.ibm.com/developerworks/jp/java/library/j-jtp01255/
0350デフォルトの名無しさん
2009/02/02(月) 17:22:14そんな感じでやったらエラーが出て、答えを見てもよくわからないという状態でした。
ご指摘のページの半分も理解できませんが、勉強してみます。ありがとうございます。
0351デフォルトの名無しさん
2009/02/02(月) 18:23:24だから仕方なくNetBeans使ってんだけど、
Eclipseの方が高機能・・・だよね。。
0352デフォルトの名無しさん
2009/02/02(月) 18:24:120353デフォルトの名無しさん
2009/02/02(月) 18:33:33寝る前にDLはじめとけよ
0354デフォルトの名無しさん
2009/02/02(月) 18:34:01肌色を検出するような課題があるから、そういうのの応用で出来るんじゃないか?
0355デフォルトの名無しさん
2009/02/02(月) 19:16:31「台形の面積を求めるクラスを定義し、
これらのインスタンス変数を初期化し、
図形の面積を計算するコンストラクタを用意し、
台形の面積を表示しなさい」
という課題が出ました。
授業を聞いてましたが全然分かりません。
どなたか教えてください。
0356デフォルトの名無しさん
2009/02/02(月) 19:25:27★★ Java の宿題ここで答えます Part 67 ★★
http://pc11.2ch.net/test/read.cgi/tech/1232627790/
しかしひでえ課題だなw
0357デフォルトの名無しさん
2009/02/02(月) 19:41:06惚れてしまうではないかw
0358デフォルトの名無しさん
2009/02/02(月) 19:54:11失礼しました
どういう意味で「ひどい」なんですか?
0359デフォルトの名無しさん
2009/02/02(月) 19:57:08今度部署にJava初心者の方が3名来られました
Javaを教えよとの命令が飛んできたのですが、何を教えればいいかわかりません
とりあえず、人数分独習Javaでも買おうかと思いましたが、予算凍結により新たな備品購入を禁じられてしまいました
そこで、Webページと自作の課題を駆使して目的を達成したいのですが、参考になるページや問題などありましたら教えていただければ幸いです
ちなみに3名ともプログラム経験は5年以上でC言語とC++をやってたそうです
私の部署ではJava6を使うことになっているので、Java5.0で入ってきたジェネリクスが必須となっております
よろしくお願いいたします
以上
0360デフォルトの名無しさん
2009/02/02(月) 20:03:25本ぐらい、当人たちに買わせれば良いだろ、ボケ
0361デフォルトの名無しさん
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環境がないので試すことができません)
また、どのように対処することが一番自然なのでしょうか
0362デフォルトの名無しさん
2009/02/02(月) 20:07:00なんか作らせて、ソースレビューしてやればいいじゃん
会社のPCがインターネットに繋がってグーグル使い放題なのが前提だけど
0363デフォルトの名無しさん
2009/02/02(月) 20:12:03SolarisっていうかUNIX上はLFが改行コードだから、CRは普通の文字として扱われているんでしょ。
オマエが食わせてるファイル(filename)の中身がCRLFで改行しているから、
一行の内容として
hogehoge+CR+改行(LF)
と解釈して、lineの中身はhogehoge+CR
更にオマエのコードでCRLFを追加したら、
hogehoge+CR+CRLF
0364デフォルトの名無しさん
2009/02/02(月) 21:42:09>予算凍結により新たな備品購入を禁じられてしまいました
人件費はタダだと思ってるんだろうな
0365361
2009/02/02(月) 21:45:34ありがとうございます。
Linux上で上記ソースをコンパイル&実行したところ、
SJIS(CRLF)になりました。
Linuxも改行コードはLFだと思うのですが(文字コードはEUCです)、モノによって動作が異なるということでしょうか?
(Windowsでコンパイルしたらまた違う結果?)
そもそもWORAを実現するためにはどのようなソースを書けばよいのでしょうか?
0366デフォルトの名無しさん
2009/02/02(月) 21:51:27読み込ませるファイルはどうやったの?
SJIS(CRCRLF)なった場合のファイルをそのサーバ上で、バイナリでみて、
Linux上のファイルも同様にバイナリで開いてみて、
改行コードがどうなってるか確認しろ。
0367デフォルトの名無しさん
2009/02/02(月) 21:51:40かんたんにソースコードを見られてしまうけど、
javaの場合はどうなの?
専用のツールとか使うとすぐにコードを
見られてしまうの?
0368デフォルトの名無しさん
2009/02/02(月) 21:53:070369デフォルトの名無しさん
2009/02/02(月) 21:58:25まじで?
防ぐ方法とかってないの?
0370デフォルトの名無しさん
2009/02/02(月) 22:00:590371デフォルトの名無しさん
2009/02/02(月) 22:08:000372デフォルトの名無しさん
2009/02/02(月) 22:09:200373デフォルトの名無しさん
2009/02/02(月) 22:09:25隠してもすぐに見られてしまうから。
0374デフォルトの名無しさん
2009/02/02(月) 22:23:05あれはプラットフォーム依存部分も結構あるから
そういったソースを隠せばカジュアルハックは結構阻止できるだろ
0375デフォルトの名無しさん
2009/02/02(月) 22:25:06隠しても見られてしまうからってあえて公開する必要もないだろw
0376デフォルトの名無しさん
2009/02/02(月) 22:26:450377361
2009/02/02(月) 22:44:59>読み込ませるファイルはどうやったの?
WindowsからFTPとSambaで持ってきました。
(もちろんFTPはBinaryで)
>改行コードがどうなってるか確認しろ。
上記、バイナリで0x0d, 0x0aを確認した結果です。
0378361
2009/02/02(月) 22:50:54Windowsと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)
0379デフォルトの名無しさん
2009/02/02(月) 22:50:58改行コードを自分で¥nとか足さないで、↓を使うといいかもしれない。
BufferedWriter#newLine()
0380361
2009/02/02(月) 23:15:55ありがとうございます。
newLine()は「OSに適した改行コードを出力する」とありますが、
今回の場合にはSolaris上で(どのOS上でも)CRLFを出力したいのです。
あと、LinuxにSunの1.6.0_11を入れて実行してみましたが、
>>361のソースでCRLFとなりました・・・
0381デフォルトの名無しさん
2009/02/03(火) 01:21:21willcomのx4で某ギガパッチ落とした俺を見習え!
0382デフォルトの名無しさん
2009/02/03(火) 01:21:550383デフォルトの名無しさん
2009/02/03(火) 02:13:21あと標準でswingのポトペタ開発ができるとも聞く
0384Joseph O’Neil
2009/02/03(火) 02:28:56The 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.
0385デフォルトの名無しさん
2009/02/03(火) 04:00:57>>359
0386デフォルトの名無しさん
2009/02/03(火) 17:25:08Runtime r=Runtime.getRuntime().exec("シェル名")
でいいようですが、
オプション(-fとか-tとか)を与えて起動するにはどのようにすればよいのでしょうか?
また、このシェルのパス(c:/shell/shell.shとか/usr/local/shell/shell.shとか)を指定したい場合どうすればよいのでしょうか?
0387デフォルトの名無しさん
2009/02/03(火) 17:38:370388386
2009/02/03(火) 18:09:09ググったら
http://www.stackasterisk.jp/tech/javaClassref/java_ref_01_04.jsp
http://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って何? 他いろいろ種類あるし何が違うの? 状態なので的外れなこと言ってたらすみません
0389デフォルトの名無しさん
2009/02/03(火) 19:01:530390デフォルトの名無しさん
2009/02/03(火) 19:02:29>その場合/bin/shが/bin/bashになるのでしょうか?
そら使うシェルが違うんだし/bin/bashになる
でもWindowsでsh/bashスクリプト使用できるの??そこが疑問。
>正直な話、bashって何? 他いろいろ種類あるし何が違うの?
bashはshの拡張シェルでLinuxの標準シェル
shはボーンシェルと言われるもの、汎用的なスクリプトはこいつで書く
csh/tcshはC系シェルでこいつではスクリプトは書かない、理由は「csh-whynot」でググれ
0391デフォルトの名無しさん
2009/02/03(火) 19:12:17書き方がWindowsっぽいけどシェル動かすって。。。
激しくスレ違いだな
0392デフォルトの名無しさん
2009/02/03(火) 20:58:13書いてあったのですが、
System.out.print("テスト");
とだけ書いても普通に表示されました。どういうことなんでしょう?
0393デフォルトの名無しさん
2009/02/03(火) 21:02:05??
どの本?
出力ならSystem.out.print()メソッドだけど?
0394デフォルトの名無しさん
2009/02/03(火) 21:08:17「flushしないと表示されない」でなくて
「flushしない場合は必ずしも表示されるとは限らない」の間違いじゃね?
System#out 見ても必ず自動的にフラッシュされる、とは書いてないし。
0395デフォルトの名無しさん
2009/02/03(火) 21:48:30このページを参考にjavaでmecabを使用しようとしているのですがエラーが出てしまい動きません
ライブラリパス等も一応確認したと思うのですが、初心者なもので
javaのライブラリパスやMeCabのライブラリがどこを挿しているのか等は今ひとつ理解できていないかもしれません
エラー内容は
Exception in thread "main" java.lang.NoclassDefFoundError: net/moraleboost/mecab/Tagger
となっています。
0396デフォルトの名無しさん
2009/02/03(火) 21:50:520397デフォルトの名無しさん
2009/02/03(火) 22:08:30ちょっと古いんだけど、「Javaで学ぶアルゴリズムとデータ構造」という本。
JavaのVersionが古いときの話とかでしょうか。Eclipse3.4でやってますが。
>>396
失礼氏やした
0398デフォルトの名無しさん
2009/02/03(火) 22:15:15細かいけど、一応あってる
0399デフォルトの名無しさん
2009/02/03(火) 22:33:44JFrameで作ったフレーム(親フレーム)から新たにJFrameで作ったフレーム
(子フレーム)を呼び出しました。
その子フレームに「×」ではなくJButtonでフレームを終了させるボタンを
作りたいんですが、どうしたらいいでしょうか?
試しにアクションリスナにSystem.exit(0);を入れてみたら親フレームごと
消えてしまいました・・・。
JFrameのsetVisible(false);を入れて試してみましたが、非表示になってくれませんでした。
0400388
2009/02/03(火) 23:23:27疑問に答えていただきありがとうございました
なお、実機環境はLinuxなので問題ないはずです
>>391さんにも勘違いさせてしまったようなので次に質問があるときは
もう少しわかりやすく書くことを心がけたいと思います
0401デフォルトの名無しさん
2009/02/04(水) 00:05:40classを分けて実装したいのですが上手く行きません
調べてもさっぱりなのですがどのようにすれば上手く行くのでしょうか
0402デフォルトの名無しさん
2009/02/04(水) 00:15:260403デフォルトの名無しさん
2009/02/04(水) 00:53:33eclipseをインストールして、日本語化パックをいれても
うまく日本語表示になりません。中国語になります。
またall in one eclipseをインストールして、表示を日本語に設定しても
(インストール時に表示されるダイアログにより)日本語になりません。
eclipse起動時に中国語になります。
これはどういったことが考えられるんでしょうか?
0404デフォルトの名無しさん
2009/02/04(水) 01:08:02Iteratorインターフェースでコレクションクラスの要素をすべて削除するメソッドを作ったんですが
Iterator it = XXX.iterator();
while(it.hasNext()==true){
it.next();
it.remove();
}
これだとすべての要素が削除されるのか
hasNextでtrueだった要素の次から削除されるのかどっちでしょうか?
0405デフォルトの名無しさん
2009/02/04(水) 01:14:00すべて
それより==trueは、馬鹿に見えるからやめたほうがいい。
0406デフォルトの名無しさん
2009/02/04(水) 01:18:54なんですべてなの?
なんで馬鹿なの?
0407デフォルトの名無しさん
2009/02/04(水) 01:22:44Iterator it = XXX.Iteragor();
while (it.hasNext()) {
Iterator next = it.next();
it.remove();
it = next;
}
になるんでない?
0408デフォルトの名無しさん
2009/02/04(水) 01:26:47日本語化パックが正しいかどうかだ
0409デフォルトの名無しさん
2009/02/04(水) 01:26:540410デフォルトの名無しさん
2009/02/04(水) 01:26:57> なんで馬鹿なの?
オマエだって、
while((it.hasNext()==true)==true){
って書いてあったら頭おかしいって思うだろ?
0411デフォルトの名無しさん
2009/02/04(水) 01:28:17next()はイテレータを進めてその要素のObjectを返す。
0412デフォルトの名無しさん
2009/02/04(水) 01:28:36そこはいいよ
ところでなんですべてなの?
0413デフォルトの名無しさん
2009/02/04(水) 01:29:05されてる。保証できない場合は例外を投げることになってるよ。
0414デフォルトの名無しさん
2009/02/04(水) 01:29:30わかった乙
トン
0415デフォルトの名無しさん
2009/02/04(水) 01:30:06子フレームって別ウィンドウじゃないん?
親フレームにaddで足してるなら、親フレームからremove(comp)で消せないかね?
compは子フレームね
0416デフォルトの名無しさん
2009/02/04(水) 01:32:160417デフォルトの名無しさん
2009/02/04(水) 01:33:37hasNext()がfalseなら、もう次は無いってことだろ。
0418デフォルトの名無しさん
2009/02/04(水) 01:39:590419デフォルトの名無しさん
2009/02/04(水) 01:43:03なるほど。
で、最初の next の呼び出しで得られる要素は
最初の要素になるのかな?
0420デフォルトの名無しさん
2009/02/04(水) 01:47:090421デフォルトの名無しさん
2009/02/04(水) 02:08:58なんでソースを隠したがるのか分からないが、
つたない言葉で説明されてもなんだか分からないよ。
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/8812.zip
0422デフォルトの名無しさん
2009/02/04(水) 02:54:45その中で「再利用性」というものが挙げられていましたが、
オブジェクト指向言語であるJavaでは、
実際どういったクラスオブジェクト(言葉が正しくないかもしれません)が、
どのようにして再利用されているのでしょうか?
再利用できそうなクラスが、一般的に公開され、
利用されたりもするのでしょうか?
それとも、再利用とは言っても、
閉じた組織の中で、似た機能を持たせるときに再利用するだけなのでしょうか?
かなりわかりにくい質問ですが、回答よろしくお願いします。
0423デフォルトの名無しさん
2009/02/04(水) 03:03:01ライブラリとか、フレームワークと呼ばれるものは大体そう。
再利用はオブジェクト指向に限ったことではないが、
きちんと分けて、きれいに並べてあれば、再利用はしやすい。
オブジェクト指向の仕組みは、そういうことを助けてくれる。
0424デフォルトの名無しさん
2009/02/04(水) 03:10:34あなたが使ってるJavaの標準ライブラリが、再利用できるプログラムの代表例
もっと言うと、大抵のプログラムに必要な普遍的な部品を、オブジェクト指向的な発想のもとに集めた物になる
まあ世界中で使われてるだろうね
再利用というのはオブジェクト指向に限った発想ではないけど
特にオブジェクト指向だと、プログラム中から再利用できる部分を切り出しやすい(こともある)、
という程度の意味
0425デフォルトの名無しさん
2009/02/04(水) 03:50:32車輪の再発明状態で敗北感味わうけどしょうがない。
0426デフォルトの名無しさん
2009/02/04(水) 04:16:010427デフォルトの名無しさん
2009/02/04(水) 04:36:510428デフォルトの名無しさん
2009/02/04(水) 04:57:20自分クラスを作成し使用していたら、言語のバージョンアップとともに悲鳴を上げるんですね、わかります。
0429デフォルトの名無しさん
2009/02/04(水) 05:29:57経験あるけど、修正が大変だよねぇ
0430デフォルトの名無しさん
2009/02/04(水) 06:10:13機能拡張で長い間その世話をさせられた。
0431デフォルトの名無しさん
2009/02/04(水) 11:47:14すでにレスが入っているが、
もしその再利用性の説明の重点がクラスの継承に関する物であるならば要注意
現在のオブジェクト指向においては、継承による再利用というのはあまり一般的でない
というか再利用のための安易な継承はトラブルを招きやすいのでむしろ避けた方がいい
で、それ以外の観点の再利用性というのは、とくにオブジェクト指向に限った話ではないので
再利用性というのはあまり意識しなくても良いと思う
まあ、テストに出たら書かざるを得ないがw
0432デフォルトの名無しさん
2009/02/04(水) 16:46:100433デフォルトの名無しさん
2009/02/04(水) 20:28:01{
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のところが違うのはわかるのですが
間違っているところがありましたら教えていただきたいです。初歩的な質問ですいません
0434デフォルトの名無しさん
2009/02/04(水) 20:30:27違うのがわかってるならそこ直してから貼り付けろよ
0435デフォルトの名無しさん
2009/02/04(水) 20:51:51System.out.println("最大値" + sample300(i));
System.out.println("最小値" + sample300(i));
System.out.println("平均値" + sample300(i));
のsample300(i)は何をどうやって最大値と最小値と平均値を見分けて適切に出力してくれてるんだろうね?
ってあたりから疑問に思ってもらいたいね。 せめてさ。
独自仕様のJavaというならもう知らん。
0436433
2009/02/04(水) 20:55:36すいません、そのまま貼ってしまいました。
すでにいろいろ試してはみたのですが・・
0437デフォルトの名無しさん
2009/02/04(水) 20:55:53まあスレ違いだし当該言語でもそんな書き方はしないが。
0438デフォルトの名無しさん
2009/02/04(水) 21:07:12とりあえず横着しないで、sample300メソッドをmax300・min300・avg300の
三つのメソッドに分けるところからやってみれば?
メソッドは基本的に基本型の値orオブジェクトを1個しか返せない。
無理に最大値・最小値・平均値の三つの値を同時に返そうとして
いるからはまるわけで。
0439デフォルトの名無しさん
2009/02/04(水) 23:23:59巨大なのデータ(2ギガ以下)をファイルに出力するプログラムを作ってます.
一度に全ての作業を行うにはかなりの時間がかかるので,一旦作業を中断して再起動後に書き込みを再開できる機能を追加しようと思ってます.
その際に,ファイルの末端に今回はどこまで作業を行ったのかを書き込み,
次回,作業を再開する場合には末端の情報を読み込んで前回の作業を再開させようと考えてます.
なお末端の作業の情報は32バイトの固定長です.
そこで質問がありますが,現在BufferedOutputStreamでファイルの書き出しを行っています.
BufferedOutputStreamの書き込みのポインタを,ファイルの末尾から32バイト戻って追加書き込みする必要がありますが
BufferedOutputStreamのポインタ指定はどうやってやるのでしょうか?
0440デフォルトの名無しさん
2009/02/04(水) 23:39:14これファイルの末尾32バイトが消えちゃうけどかまわないんか?
> BufferedOutputStreamのポインタ指定はどうやってやるのでしょうか?
BufferedOutputStreamじゃ無理。
RandomAccessFile みたいに書き込み位置操作できるクラス使え。
0441デフォルトの名無しさん
2009/02/04(水) 23:47:49protectedメソッドのbufとcount操作すれば運がよければ32バイト巻き戻せるかもしれないけど
必ず32バイト巻き戻せるとは限らない。
確実にやりたいなら>>440が言うようにRandomAccessFile使うほうが無難。
0442デフォルトの名無しさん
2009/02/04(水) 23:48:29○protectedメンバ
0443デフォルトの名無しさん
2009/02/05(木) 00:25:05>441
RandomAccessFileは調べてみたらストリームじゃないのでバッファリングされないようで,
一文字ずつ処理されるようなんですけどそれでギガ単位のファイルを扱うにはちょっと難があります.
何か良い方法はないでしょうか?
>441さんの方法はちょっと怖いので最後の手段にしたいです.
0444デフォルトの名無しさん
2009/02/05(木) 00:35:11件の32バイトは別ファイルに保存でどうだ
0445439
2009/02/05(木) 00:59:1132バイトだけRandomAccessFileで上書きしてそこから先はBufferedOutputStreamで追記することにします.
たしかファイルへの追記はStream関連のクラスで昔やった記憶があるので
多分うまくいくでしょう.
どうもありがとうございました.
0446デフォルトの名無しさん
2009/02/05(木) 01:06:52RandomAccessFileのバイト配列の読み書きじゃダメなのか?
0447デフォルトの名無しさん
2009/02/05(木) 01:38:490448デフォルトの名無しさん
2009/02/05(木) 01:40:16自分もこれを強くリコメンド。
たかだか32バイトのために巨大ファイルの取り回しを無駄に
複雑にする事もないかなと。
0449デフォルトの名無しさん
2009/02/05(木) 02:13:58フレームにパネルを貼り付ける際に、どのフレームに貼り付けるか
という指定はできないのでしょうか?
ボタンの押したときにアクションリスナーの中で2つ目のフレームを作るようなプログラムを作ったのですが、
元々あったフレーム内のパネルが、ボタンを押して作った2つ目のフレームに残ってしまいます
0450デフォルトの名無しさん
2009/02/05(木) 02:38:54これはコードの書き方が悪い気がする。
コンポーネントを張り付けてないフレームを表示したら(setVisible(ture))中身が何もないフレームが出てきたはずだが。
0451デフォルトの名無しさん
2009/02/05(木) 03:18:22ありがとうございました、解決しました。
一つ目のフレームはJFrameをextendしたクラス名を使って
クラス名 frame = new クラス名();
として呼び出していましたが、コンストラクタでパネルを配置していたので、
二つ目のフレームも同様に生成した所、そのコンストラクタがまた呼び出されていたのかもしれません
JFrame frame =new JFrame();
で新しいフレームを試した所、中身のないフレームが表示できました。
0452デフォルトの名無しさん
2009/02/05(木) 06:31:22ご指摘ありがとうございます、また試してきます。
0453デフォルトの名無しさん
2009/02/05(木) 12:00:09public <T> boolean isHoge(T t)
と定義したメソッド内でTのClassを調べたいんだが、どうしたらいいんだろう?
T instanceof Hoge
とかできたらいいのに・・・
0454デフォルトの名無しさん
2009/02/05(木) 12:33:08t.getClass()
0455デフォルトの名無しさん
2009/02/05(木) 15:40:50コードで直接指定されたTの型を知るのは原理的に不可能
0456デフォルトの名無しさん
2009/02/05(木) 15:44:550457デフォルトの名無しさん
2009/02/05(木) 15:47:040458デフォルトの名無しさん
2009/02/05(木) 16:09:21対象ファイルがユーザによって開かれている場合は、その旨のメッセージを出力して終了したいのですが、
対象ファイルがネットワーク上の共有フォルダにあると、ユーザが開いていてもお構いなしにファイルに書き込みをしてしまいます。
ユーザがファイルを開いているかどうかのチェックはできないでしょうか?
0459デフォルトの名無しさん
2009/02/05(木) 16:14:58そんなことはまったくない。Genericsについて勉強した方がいいな。
0460デフォルトの名無しさん
2009/02/05(木) 16:26:06Class<T>なんかいちいち引数に渡さないといけない時点で明らかに無理がある
0461デフォルトの名無しさん
2009/02/05(木) 16:41:51これじゃだめなん?
0462デフォルトの名無しさん
2009/02/05(木) 16:50:18PropertyDescriptor pd = new PropertyDescriptor("hoge", o.getClass());
Method rm = pd.getReadMethod();
Type[] tlist = rm.getGenericParameterTypes();
Typeとやらを取ってこれるようだが
0463デフォルトの名無しさん
2009/02/05(木) 16:52:39断言する。絶対無理。
0464デフォルトの名無しさん
2009/02/05(木) 16:53:49Method rm = pd.getReadMethod();
Type[] tlist = rm.getGenericParameterTypes();
Type t = tlist[0];
if (t.getClass() instanceof fuga) {
}
これで一応望みどおりの処理だろうか?
動かしてないから動くかどうかわからん
0465デフォルトの名無しさん
2009/02/05(木) 17:20:22それ考えたことあるんだけど実際使う場面はなかった。例えばどういうときだと知りたいの?
0466デフォルトの名無しさん
2009/02/05(木) 17:34:08プロパティのパターンに則ってないから、
new PropertyDescriptor がアクセサメソッド見つけられんと思う。
あと、reflection使っても同じだけど、
<T> isHoge(T t) みたいな場合は
T が具体的に何の型かでなくて
T という総称型を使ってるよって情報が得られるだけのような。
0467デフォルトの名無しさん
2009/02/05(木) 17:46:23import 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 {
}
0468デフォルトの名無しさん
2009/02/05(木) 17:48:17Type = 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>ってなに?意味わかんない
0469デフォルトの名無しさん
2009/02/05(木) 18:28:410470デフォルトの名無しさん
2009/02/05(木) 19:10:43と書くのと
import java.io.BufferedReader;
import java.io.File;
・
・
では、どっちが速くなるの
もしかして、コンパイルするスピード以外は変化がないのかい?
0471デフォルトの名無しさん
2009/02/05(木) 19:17:41yes
つか、できたclassファイルを見てみればすぐに分かる事
0472デフォルトの名無しさん
2009/02/05(木) 19:23:540473デフォルトの名無しさん
2009/02/05(木) 19:29:05そういうのいちいち調べてるの?それとも頭の中に入ってるの?
0474デフォルトの名無しさん
2009/02/05(木) 19:45:56それにそんなに特別なクラスがこのスレで出てきたことあったっけ?
0475デフォルトの名無しさん
2009/02/05(木) 19:46:42それが>>467で作ってみたけど無理だったって事じゃね?
メソッド検索時にパラメーターの型を渡さないといけない。
Class#getMethodsで一覧は取れるけど、同じ名前のメソッドはいくつでも作れるし。
this.getClassみたいにthis.getMethodができたらいいのにね
0476デフォルトの名無しさん
2009/02/05(木) 19:56:53thx
0477デフォルトの名無しさん
2009/02/05(木) 20:06:18たしかに <T> boolean isHoge(T t) の T が何かを調べるのは凄く面倒だけど、
>>467 の場合はリフレクションの使い方の部分で間違ってて
宣言してない isMage(GeneSample2) を検索して失敗してるわけで、
>>467 だけから >>453 が面倒だ、とは言えない罠
0478デフォルトの名無しさん
2009/02/05(木) 20:14:000479デフォルトの名無しさん
2009/02/05(木) 20:17:260480デフォルトの名無しさん
2009/02/05(木) 20:17:40>たしかに <T> boolean isHoge(T t) の T が何かを調べるのは凄く面倒だけど、
>>>467 だけから >>453 が面倒だ、とは言えない罠
壮絶に矛盾してないか?
自分のメソッド名も指定しないとメソッドとってこれないし。
自分のメソッドをthis.getClassみたいに取得する方法がないと無理だべ
0481デフォルトの名無しさん
2009/02/05(木) 20:18:420482デフォルトの名無しさん
2009/02/05(木) 20:20:361行目は面倒だと宣言
4行目の面倒だと言えないで矛盾してると思った俺の頭の中がもうだめだ
0483デフォルトの名無しさん
2009/02/05(木) 20:24:05今迄使っていたチャットが表示できなくなったのでjavaを再インストールしました。
ところが、そのチャットのページを開くと
「java アプレットキャッシュをアップグレードしています。
格納されている java アプレットが java SE 6 用に更新されるまでお待ちください。」
という表示が出て、DL進行度のバーみたいなのが途中まで伸びたかと思うとすぐ表示が消えてしまいます
ページを更新するたびにこの表示が出て、なおかつチャットも表示できません。
こういった場合の解決法を教えてください
0484デフォルトの名無しさん
2009/02/05(木) 20:49:01class 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を取得して使いたいんですが
どのように記述すれば良いのでしょうか?
ご指導のほど宜しくお願い致します
0485デフォルトの名無しさん
2009/02/05(木) 20:55:53oj1 を classB のインスタンスに渡す。
0486デフォルトの名無しさん
2009/02/05(木) 21:18:59早速の回答ありがとうございます
質問の仕方が下手くそでしたすみません。
クラスBで下記のように書いた場合
GetterAndSetter object = new GetterAndSetter();
Map mapC = object.getMapA();
oj1の渡し方の記述がわかりません
宜しくお願い致します
0487デフォルトの名無しさん
2009/02/05(木) 21:29:29複数のインスタンスで共通の値を使いたいなら static でクラスに紐付けする。
一つのクラスに対して一つのインスタンスに限定したいなら、「シングルトン (Singleton)」で。
0488デフォルトの名無しさん
2009/02/05(木) 21:44:07意味が分からないんだがメソッド名が欲しいから<T>を知りたいのか?
0489デフォルトの名無しさん
2009/02/05(木) 21:45:32class B {
private GetterAndSetter obj;
public void setGetterAndSetter(GetterAndSetter obj) {
this.obj = obj;
}
public void doSomething() {
Map map = obj.getMapA();
// Your code here...
}
}
0490デフォルトの名無しさん
2009/02/05(木) 21:55:06シングルトンに挑戦してみたいと思います
ご回答ありがとうございました!
0491デフォルトの名無しさん
2009/02/05(木) 21:57:19>TのClassを調べたい
が目的なんだろ
0492デフォルトの名無しさん
2009/02/05(木) 21:58:47いまは意味解らなくていいからシングルトン使うときには常にこれを念頭に置いておくんだぞ
0493デフォルトの名無しさん
2009/02/05(木) 22:08:140494デフォルトの名無しさん
2009/02/05(木) 22:09:190495デフォルトの名無しさん
2009/02/05(木) 22:47:300496デフォルトの名無しさん
2009/02/05(木) 22:52:03なんに使うのか、皆目わからん
0497デフォルトの名無しさん
2009/02/05(木) 23:02:550498デフォルトの名無しさん
2009/02/05(木) 23:07:29javaにはグローバル変数がない→static classで代用、あとは普通にシングルトン実装。
つまり>>493になる。だがまて、>>493から>>492へは不可逆だぞ。
0499デフォルトの名無しさん
2009/02/05(木) 23:39:01こうとか?
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{
}
0500デフォルトの名無しさん
2009/02/05(木) 23:40:14あるいはこうとか?
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{
}
0501デフォルトの名無しさん
2009/02/06(金) 00:03:59やっぱ意味ないよなぁ
ただメソッドの一覧を出したいだけなら>>475でいいし
自分のメソッド情報となると無理やりな実装しかないし
こうやってコネコネ遊んでる分には楽しいけど
0502デフォルトの名無しさん
2009/02/06(金) 00:08:460503デフォルトの名無しさん
2009/02/06(金) 00:09:09class 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>());
って呼び出したいのかな?
0504デフォルトの名無しさん
2009/02/06(金) 00:12:17String ほげ = "ほげ";
みたいなことできたっけ?
0505デフォルトの名無しさん
2009/02/06(金) 00:13:34出来る。
0506デフォルトの名無しさん
2009/02/06(金) 00:15:37まだやってたのか。何時間かかってんだ
0507デフォルトの名無しさん
2009/02/06(金) 00:22:50Java言語仕様の字句構造の識別子の項を参照
0508デフォルトの名無しさん
2009/02/06(金) 00:27:280509デフォルトの名無しさん
2009/02/06(金) 00:40:09>>454>>456でFAだったのに、
>>457あたりが混ぜっ返したからいけないんだろ?
>>499>>500は、
>>477の言う「リフレクションの使い方の部分で間違ってて」の確認かな。
0510デフォルトの名無しさん
2009/02/06(金) 00:41:29ああ、オレは>>467でも>>477でもないよ
0511デフォルトの名無しさん
2009/02/06(金) 02:10:51ランタイムサポートされてればgenericsでできることの幅も広がって
Tの型を動的に取得したりするようなことはかなり重要になるよ
C#とか使ってみたらわかるけどさ
0512デフォルトの名無しさん
2009/02/06(金) 02:16:57Tの型が取れると便利な例って、例えばどんなの?
0513デフォルトの名無しさん
2009/02/06(金) 02:20:27ねーよ
型とか言うな。
0514デフォルトの名無しさん
2009/02/06(金) 02:23:25自分のメソッドに限定しないなら、Class#getMethodsで全部とってくれば、
好きなだけTの型を調べられる。
今のジェネリクスだと、自分のメソッドに限定した時点で、
自分のメソッド名をリテラルで持ってないと使えないし。
C#にはthis.getMethodに相当する物があるんだろうか
0515デフォルトの名無しさん
2009/02/06(金) 02:44:47たとえばTの配列作るのはjavaではClass<T>受けないとできないでしょ
0516デフォルトの名無しさん
2009/02/06(金) 02:59:41こゆこと?
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;
0517デフォルトの名無しさん
2009/02/06(金) 03:09:50だからそれを余計な引数なしでT.getClass()と書けたら便利だという話だろ
0518デフォルトの名無しさん
2009/02/06(金) 03:12:31tにTの派生クラスのインスタンスが渡されるかもしれない
0519デフォルトの名無しさん
2009/02/06(金) 03:16:03余計な引数って↓のt.getClass()のこと?
return (T[]) Array.newInstance(t.getClass(), 100);
T.getClass()は無理だが、自分で↑のメソッド作ったなら引数の型は分かる気が
>>518
Tの配列で返してほしいなら、ジェネリクスの出番も必要なくね?
0520デフォルトの名無しさん
2009/02/06(金) 03:37:120521デフォルトの名無しさん
2009/02/06(金) 04:07:39javaアプレットでオセロプログラムを作ったのですが、リプレイ機能を追加したく
駒の配置を随時外部データに保存するのは可能でしょうか?
ローカルに保存するのは禁止されているらしいので、サーバーなどに保存など
できるのでしょうか?
0522デフォルトの名無しさん
2009/02/06(金) 07:28:18List<T> の toArray()、toArray(T[]) の二つの比較で T[] が余計な引数に該当するんでは?
T[] がない方は Object[] しか貰えないし。
0523デフォルトの名無しさん
2009/02/06(金) 07:29:04できるできないで言えばできる
0524デフォルトの名無しさん
2009/02/06(金) 07:33:29>>499-500って new GeneSample2().isMage(new GeneSample()) すると例外くらうんだけど、
これで確認になってんのか?
0525デフォルトの名無しさん
2009/02/06(金) 07:38:34っていうか巣に帰れ。
メソッドのデフォルト引数を指定するだけで別のメソッド宣言をする必要があったり
クラスメソッドとインスタンスメソッドで同じシグネチャの宣言が出来なかったり
仕 様 で す か ら
0526デフォルトの名無しさん
2009/02/06(金) 07:42:290527デフォルトの名無しさん
2009/02/06(金) 09:03:19アノテーションを勉強してるならそれを駆使すれば出来ないこともないが・・・
0528デフォルトの名無しさん
2009/02/06(金) 18:00:36//MyJava
class MyJava{
public satic void main(String args[]) {
System.out.println("My Java Program");
}
}
これの間違いを教えてくださいorz
警告見てもちんぷんかんですorz
0529デフォルトの名無しさん
2009/02/06(金) 18:01:290530デフォルトの名無しさん
2009/02/06(金) 18:04:14> public satic void main(String args[]) {
×satic
○static
0531デフォルトの名無しさん
2009/02/06(金) 18:05:07なんて警告?(エラーじゃなくて?)でてるの?
0532デフォルトの名無しさん
2009/02/06(金) 18:07:14即レス感謝です。
記述ミスとか最低レベルな自分。やはり吊ってきます
0533デフォルトの名無しさん
2009/02/06(金) 18:20:42String args[]
↓
String[] args
0534デフォルトの名無しさん
2009/02/06(金) 18:25:54推奨はあったっけ。
0535デフォルトの名無しさん
2009/02/06(金) 21:38:32どうすればいい?
できれば参考サイトとかよろ
0536デフォルトの名無しさん
2009/02/06(金) 21:50:23http://casio.jp/
0537デフォルトの名無しさん
2009/02/06(金) 22:01:03ボタンとエディットボックスさえ扱えれば
普通に作れると思われ。
JavaのGUIを扱ってる基本サイトなら
どこでも大抵扱ってると思われ。
0539デフォルトの名無しさん
2009/02/06(金) 22:45:230540デフォルトの名無しさん
2009/02/06(金) 22:52:52マジっすか・・・・
電卓くらいならと思ったんだが
甘いようだなw
0541デフォルトの名無しさん
2009/02/06(金) 22:53:122回押しとか%とか捨てて単純に計算するだけなら大丈夫じゃね?
0542デフォルトの名無しさん
2009/02/06(金) 22:58:413、×、=、で9になったり。
0543デフォルトの名無しさん
2009/02/06(金) 22:58:530544デフォルトの名無しさん
2009/02/06(金) 23:41:360545デフォルトの名無しさん
2009/02/06(金) 23:57:370546デフォルトの名無しさん
2009/02/07(土) 00:37:110547デフォルトの名無しさん
2009/02/07(土) 00:39:000548デフォルトの名無しさん
2009/02/07(土) 00:42:120549デフォルトの名無しさん
2009/02/07(土) 00:50:58eclipseから実行するときに「-Xmx512m」オプションつけて実行してたアプリを、
jarファイルにして、以下のコマンドで動かした。
javaw.exe -jar hoge.jar -Xmx512m
アウトオブメモリーが発生して動かない。
eclipseの「-Xmx512m」をはずしてみたら、jarファイルを実行したのと同じタイミングで落ちる。
PC再起動してみたけど状況変わらず。
アプリのverupしたのが原因かと、古いバージョンのアプリをjarで動かしたけど落ちる。
windowsの設定がどこかまずいのか、jreになにか異変がおきたのか。
何か予想とかヒントとかあったら教えてください。
0550549
2009/02/07(土) 00:53:23二日前はちゃんと動いてたんです。
※eclipseからもjarファイルからも
今日はeclipseからは動くけど、jarファイルからは動かないんです。
開発中はeclipseから動かしてるんで、作業はできるんですが、
このままではeclipseなしで動かなくて切ないです。
0551デフォルトの名無しさん
2009/02/07(土) 00:53:55順番じゃね?
javaw.exe -Xmx512m -jar hoge.jar
0553デフォルトの名無しさん
2009/02/07(土) 01:04:20どうせ聞いてばっかりの教えて君だろ。たまには答えてスレに貢献しろ
0555デフォルトの名無しさん
2009/02/07(土) 01:18:37頑張れ。
通常の四則演算の電卓で難しいのは入力系の扱いね。
小数点の入力制御と、
(3÷3、×3を1にするような)桁落ちに対する精度の保障が難しいのよ。
特に精度保障に関しては、ロジック部(電卓内部の計算機の部分)と
UI部(テンキーと液晶)を分離して設計しないと綺麗にいかない。
初心者の場合、整数演算(四則演算+剰余算)の電卓を作ると楽だよ。
(前述の2項目がいらなくなるから)
その場合でも、表示部、入力部、計算ロジック部を分離して
クラス設計すると勉強になるよ。
いきなり作り出すのではなく、
ラフイメージ&我流でもいいから、
Jude竹とか使ってクラス図とか書いてから作り始めると、色々と見えてくると思う。
0556デフォルトの名無しさん
2009/02/07(土) 02:05:00336からずっと間違ってたんだな
339をみて直したかと思ってたのに
0557デフォルトの名無しさん
2009/02/07(土) 08:47:47ありがとうございます
頑張ってみます
0558デフォルトの名無しさん
2009/02/07(土) 08:55:510559デフォルトの名無しさん
2009/02/07(土) 09:57:49病院で勇気を出して伝えて来い
0560デフォルトの名無しさん
2009/02/07(土) 15:33:490561デフォルトの名無しさん
2009/02/07(土) 15:39:40慣れないと使い辛いが。
0562デフォルトの名無しさん
2009/02/07(土) 16:04:03今自分も電卓作ってる初心者です。
ループ内のreadLineを使って数値・文字列の判断と出力
までは行けたのですが、次の数値の判断で苦戦してます。
例えば、a*b=c
このbのコマンドライン引数として受け取りたいのに、どうしてもaの場所に
入ってしまいます。
何かいい方法はありませんか?
0563デフォルトの名無しさん
2009/02/07(土) 16:07:410564デフォルトの名無しさん
2009/02/07(土) 19:31:04一文字ずつ調べなさい。 初心者が楽しても得るものは少ないぞ?
0565デフォルトの名無しさん
2009/02/07(土) 20:03:03このとき、jarからJXTreeTableを使用するのに必要なクラスファイル以外を削除してトリムしてくれるようなツールはないでしょうか?
0566デフォルトの名無しさん
2009/02/07(土) 20:21:11あるよ
0567デフォルトの名無しさん
2009/02/07(土) 20:29:55どうして他のオブジェクトが参照出来ちゃうの?javaなりの都合があるんですか?
自インスタンスに制限する修飾子って無いんですか?
0568デフォルトの名無しさん
2009/02/07(土) 20:33:420570デフォルトの名無しさん
2009/02/07(土) 20:58:56それないとequals() 時に他インスタンスのprivateなフィールドに触れなくなる。
他の言語もprivateは自インスタンスだけに制限されないものが多い。
0571デフォルトの名無しさん
2009/02/07(土) 21:15:32よく聞かれるんだけど、それがあるとどういうときに役に立つの?
0572デフォルトの名無しさん
2009/02/07(土) 21:16:580573デフォルトの名無しさん
2009/02/07(土) 21:17:44http://pc11.2ch.net/test/read.cgi/tech/1230341243/568
0574デフォルトの名無しさん
2009/02/07(土) 21:28:130575デフォルトの名無しさん
2009/02/07(土) 21:30:45その手の捨て台詞は負け犬の遠吠えっぽく見えるから止めたほうが
0576デフォルトの名無しさん
2009/02/07(土) 21:34:320577デフォルトの名無しさん
2009/02/07(土) 21:36:57javaとjava周辺のカオスなFWに嫌になった人間がrubyやrailsに触れると感動すると言いますね。
0578デフォルトの名無しさん
2009/02/07(土) 21:37:31javaはサブクラスは不可で別インスタンスは可っぽ
0579デフォルトの名無しさん
2009/02/07(土) 21:38:28一応Javaではそれがなくてもスレッド管理は面倒もなく普通にやってるけど。
出来ないのはおまえが無能なだけだろうけど。
他にないの?
0580デフォルトの名無しさん
2009/02/07(土) 21:38:36何だろう・・・具体例に興味があります。
0581デフォルトの名無しさん
2009/02/07(土) 21:38:420582デフォルトの名無しさん
2009/02/07(土) 21:42:48Java5辺りで既に苦し紛れだったけど
もう馬鹿っぽくて笑えてくるんだけど
0583デフォルトの名無しさん
2009/02/07(土) 21:44:16一人でコーディングしてる分には全部publicでもいいんだよ……
複数人でコードいじる時にprivateとかが生きてくるはずなんだが、他インスタンスからアクセスされたら意図しない動作をする可能性がある。
0584デフォルトの名無しさん
2009/02/07(土) 21:46:090585デフォルトの名無しさん
2009/02/07(土) 21:48:490586デフォルトの名無しさん
2009/02/07(土) 21:50:470587!572
2009/02/07(土) 21:51:01wikipediaのjavaの項目によると
>2008年12月現在、ジェームズ・ゴスリンは、「私の勝手な憶測だが」という注意書き付きで、2010年6月以降のリリースを予測している
0588デフォルトの名無しさん
2009/02/07(土) 21:53:19そりゃRubyみたいに同一インスタンスでも動的にメソッドつけたり外したり書き換えたりし放題ならそうかもしれんが、
基本的に静的なJavaで他インスタンスからアクセスされて意図しない動作するってのは
0589デフォルトの名無しさん
2009/02/07(土) 21:56:46ブラックボックス化したつもりの場所で漏れてるわけだから意図しない動作はありえる。
スレッド関係ない。
0590デフォルトの名無しさん
2009/02/07(土) 21:59:00になってるのは、仕様を理解してない奴が悪いだけなんでは?
0591デフォルトの名無しさん
2009/02/07(土) 22:02:37それしか使わなければバグのないプログラム作れそうだけど。
0592デフォルトの名無しさん
2009/02/07(土) 22:08:35規定するのでは。具象クラスの型を持った変数引数は使わないよね。
privateでもパッケージプライベートでも実装への意図せぬアクセスは
実際起こりがちで、それを避けるなら作法としてはこれが一般的だと
個人的には思うのだけど。
0593デフォルトの名無しさん
2009/02/07(土) 22:08:38だから複数人の開発だと全員が意図通りに使ってくれるか分からないからprivateなのにアクセスされると困るねって話。
0594デフォルトの名無しさん
2009/02/07(土) 22:18:32そうは言うけど、あなたはjavaにおいてprivateフィールドとインターフェイスを区別してますか?
0595デフォルトの名無しさん
2009/02/07(土) 22:27:59作っちゃえばいいんじゃね?
0596デフォルトの名無しさん
2009/02/07(土) 22:29:360597デフォルトの名無しさん
2009/02/07(土) 22:36:14インタフェースなんてそもそも強い型付けを持つ言語仕様の欠陥を補うだけのもんだし
rubyじゃ勿論インタフェースなんて要らないしクラス設計で苦労することも無い
クラス設計者が色々と苦労してる時点でjava自体の仕様に問題がある
0598>>565
2009/02/07(土) 22:38:570599デフォルトの名無しさん
2009/02/07(土) 22:40:00他クラスから「使う」分には人数もprivateも関係ないじゃん。
複数人で一つのクラスを開発しているという話であれば起こりうる話ではあるけど
世間的にはそれは普通「話し合いが足りない」というと思う。
0600デフォルトの名無しさん
2009/02/07(土) 22:43:01心配するな。してないのはお前だけだ。
0601デフォルトの名無しさん
2009/02/07(土) 22:52:32関係ないけど (a b +)では違和感感じるけど
日本語にして(a b 足す)だと全く違和感無い。不思議!
0602デフォルトの名無しさん
2009/02/07(土) 22:52:35ヒント:開発メンバーが保守をするとは限らない。
0603デフォルトの名無しさん
2009/02/07(土) 22:54:37a b + c *
なるほど。目から鱗だわ。
0604デフォルトの名無しさん
2009/02/07(土) 23:00:25本当に区別できるのか?結構難しいぞ。
それなら俺もその区別とやらを聞きたいものだな。
0605デフォルトの名無しさん
2009/02/07(土) 23:03:48自演乙
0606デフォルトの名無しさん
2009/02/07(土) 23:04:38いずれは消え去る言語
0607デフォルトの名無しさん
2009/02/07(土) 23:05:59要するにprivateの扱いが原因というより意思疎通に失敗してるだけでは?
0608デフォルトの名無しさん
2009/02/07(土) 23:10:42それを防ぐためのprivateなんだが。 全然通じてないね。
0609デフォルトの名無しさん
2009/02/07(土) 23:10:42というかどう区別がつきにくいのか教えて欲しい。
0610デフォルトの名無しさん
2009/02/07(土) 23:13:05認定失敗って恥ずかしいよね
0611デフォルトの名無しさん
2009/02/07(土) 23:13:09privateの扱い変えれば意思疎通の失敗が完全に防げるんならともかく、
privateの扱い程度で意思疎通で失敗するなら他の件でも意思疎通に失敗してると思うぞ。
0612デフォルトの名無しさん
2009/02/07(土) 23:24:59そのレベルだとメソッド内の変数があっちとこっちで使い方違うとかいっぱい出てきそうだが。
0613デフォルトの名無しさん
2009/02/07(土) 23:32:06「Servlet何とか〜 シンボルが見つかりません」というエラーが大量に出て失敗しました。
javaEEのクラスパスがおかしいのかと思うのですが、解決方法がわかりません。
情報が少なくて申し訳ないのですが、わかる方いましたら教えて下さい。
0614デフォルトの名無しさん
2009/02/07(土) 23:35:35で分かるわけ無いじゃん
0615デフォルトの名無しさん
2009/02/07(土) 23:37:09javadocを生成するクラスではサーブレットを多用しています。
0616613
2009/02/07(土) 23:43:20すみません、今確認できる環境がないので正確に書けないのです。
確かHttpServletやHttpServletRequestなどの一般的なクラスだったと思います。
0617デフォルトの名無しさん
2009/02/08(日) 00:19:230618デフォルトの名無しさん
2009/02/08(日) 00:22:05そうですね
0619デフォルトの名無しさん
2009/02/08(日) 08:48:20って
public class A { }
と何がどう違ってくるか教えてください。
0620デフォルトの名無しさん
2009/02/08(日) 10:00:53継承できないことがわかってれば最適化しやすいからちょっとだけ速くなるかもしれない
0621デフォルトの名無しさん
2009/02/08(日) 10:11:080622デフォルトの名無しさん
2009/02/08(日) 10:34:26>>621
ありがとうございます!
0623デフォルトの名無しさん
2009/02/08(日) 19:11:51ホームページによくある
同時に○人見ています。
みたいなJavaってありますか?
CGIがダメな環境なもので、紹介してください。
0624デフォルトの名無しさん
2009/02/08(日) 19:34:350625デフォルトの名無しさん
2009/02/08(日) 19:44:23ごめんなさい。
おっしゃるとおりで、 javascriptです。
申し訳ないです。
よろしくお願いします。
0626デフォルトの名無しさん
2009/02/08(日) 19:47:55スレタイを読んだら寝ろ
0627デフォルトの名無しさん
2009/02/08(日) 20:04:010628デフォルトの名無しさん
2009/02/08(日) 20:17:14サーバ側で数えていないとなあ
0629デフォルトの名無しさん
2009/02/08(日) 20:19:40おやすみなさい。
0630デフォルトの名無しさん
2009/02/08(日) 23:47:360631デフォルトの名無しさん
2009/02/09(月) 00:00:14聞いたこともない。
0632デフォルトの名無しさん
2009/02/09(月) 00:47:150633デフォルトの名無しさん
2009/02/09(月) 00:57:29サーバサイドJavaScript処理系もあるよ。
0634デフォルトの名無しさん
2009/02/09(月) 01:08:10javaで形態素解析ライブラリを利用しようと思うのですが、
chasenやMeCab、Senとかなり種類がありますよね。
javaで扱いやすい物、動作の早い物というのはどれになるでしょうか?
0635デフォルトの名無しさん
2009/02/09(月) 01:45:41調べる過程でそういうコミュニティーのフォーラムで聞けばヨロシ。
0636デフォルトの名無しさん
2009/02/09(月) 05:05:57次はインストールしても使えない、動かない系が来る
0637デフォルトの名無しさん
2009/02/09(月) 10:05:31そういうのって、結局ソース全部読むハメになるような気がするんだけど、
Java の奴だと読まなくても大丈夫なのかな?
0638デフォルトの名無しさん
2009/02/09(月) 10:31:560639デフォルトの名無しさん
2009/02/09(月) 12:33:55俺がソース読むのは、ドキュメント通りに実装しても動かない時に、
中を除いて引っかかる場所を探すためだな。
0640デフォルトの名無しさん
2009/02/09(月) 15:01:490641デフォルトの名無しさん
2009/02/09(月) 16:26:010642デフォルトの名無しさん
2009/02/09(月) 17:52:530643デフォルトの名無しさん
2009/02/09(月) 18:00:100644デフォルトの名無しさん
2009/02/09(月) 18:09:26スレッドセーフかどうかという点で違う。
あとレガシーじゃないコレクションフレームワークの方は非同期な分パフォーマンスが改善されてる。
0645デフォルトの名無しさん
2009/02/09(月) 18:25:55どっちにしろエラーですって表示されて動かないんなら意味ないじゃん
0646デフォルトの名無しさん
2009/02/09(月) 18:29:08お仕事になると、エラーログ出したり、いろいろしなきゃいけないんよ。
0647デフォルトの名無しさん
2009/02/09(月) 18:39:170648デフォルトの名無しさん
2009/02/09(月) 18:39:300649デフォルトの名無しさん
2009/02/09(月) 18:45:09たまに、エラーが出たら別の処理を試すとかやる必要があると、
まともに書いてやらんといかんけど。
0650デフォルトの名無しさん
2009/02/09(月) 22:09:28いくつかのページで実行にはFXライブラリが必要と書かれているのですが、
サンプルページのWebStartは、jre1.6の環境でも普通に起動します。
jre1.6には既にFXlibが含まれているのでしょうか?
0651デフォルトの名無しさん
2009/02/09(月) 22:12:340652デフォルトの名無しさん
2009/02/09(月) 22:12:480654デフォルトの名無しさん
2009/02/10(火) 00:01:010655デフォルトの名無しさん
2009/02/10(火) 00:09:012.黒文字
3.白文字
これじゃだめなの?
0656650
2009/02/10(火) 00:45:12コンパイルは通ってるんだけど.... (´・ω・` )
0657デフォルトの名無しさん
2009/02/10(火) 01:17:06そろそろ立てませんかJFxスレ
0658デフォルトの名無しさん
2009/02/10(火) 01:30:49ぜんぜんうまくいかない
0659デフォルトの名無しさん
2009/02/10(火) 01:46:030660デフォルトの名無しさん
2009/02/10(火) 01:47:54やりかたが悪いだけ。
太さ、サイズ、傾き、透過やらやってやったらそれなりのものはできる。
0661デフォルトの名無しさん
2009/02/10(火) 01:50:35とりあえず黒の上に白文字で表示してみたんだけど
幅を一緒にすると高さは変化できるけどどっちの文字も横の長さが一緒になっちゃう
もうわからないお・・・(´;ω;、)
0662デフォルトの名無しさん
2009/02/10(火) 03:04:040663デフォルトの名無しさん
2009/02/10(火) 13:20:39valueを複数指定して、そのどちらかが当てはまればlogic:equal内の処理が走るようにしたいのですが
可能でしょうか?
0664663
2009/02/10(火) 13:37:25logic:equal の中に複数valueを定義するだけでいけました。
0665デフォルトの名無しさん
2009/02/10(火) 14:39:44簡単にやるなら
1. 影を(x+n,y-n)の位置に描画
2. 外枠をx+1,x-1,y+1,y-1方向にそれぞれ描画。
3. (x, y)の位置に中の文字を描画。
精密にやるならJava2Dでフォントのアウトラインをshapeとして描画するところからやる。
0666デフォルトの名無しさん
2009/02/10(火) 16:03:34外枠を±1にするとかなりずれが目立つお
横0.3、縦0.4くらいでやってるけどそれでも文字によってはズレが目立つ・・・
とりあえずあと2時間くらいがんばってみるお・・
0667デフォルトの名無しさん
2009/02/10(火) 21:29:220668デフォルトの名無しさん
2009/02/10(火) 22:36:24try {
・・・
} catch (NullPointerException e) { e.printStackTrace(); }
で行番号が出る方法はありますか?
0669デフォルトの名無しさん
2009/02/10(火) 22:54:570670デフォルトの名無しさん
2009/02/10(火) 22:54:57ガッ!
0671デフォルトの名無しさん
2009/02/10(火) 22:55:43略された時だけだ、このうつけめ。
0672デフォルトの名無しさん
2009/02/10(火) 22:56:28BASIC 以下のクソ言語?
0673デフォルトの名無しさん
2009/02/10(火) 23:18:540674デフォルトの名無しさん
2009/02/10(火) 23:20:06なのだけど、javaと一緒で -g オプションつけたら出るんじゃないの?
0675デフォルトの名無しさん
2009/02/10(火) 23:21:04確認、javaFXのことだよね?
0676デフォルトの名無しさん
2009/02/10(火) 23:34:300677デフォルトの名無しさん
2009/02/10(火) 23:37:210678デフォルトの名無しさん
2009/02/11(水) 00:25:470679デフォルトの名無しさん
2009/02/11(水) 01:58:352個したいんだけど
0680デフォルトの名無しさん
2009/02/11(水) 02:00:51日本だから
0681デフォルトの名無しさん
2009/02/11(水) 02:04:380682デフォルトの名無しさん
2009/02/11(水) 02:24:15なに言ってんだよ!ゴミはお前のことだろw
0683デフォルトの名無しさん
2009/02/11(水) 02:31:54& でつなげればできるお!!!
(Generics の型指定の場合)
0684デフォルトの名無しさん
2009/02/11(水) 09:24:070685デフォルトの名無しさん
2009/02/11(水) 11:54:53windowsを終了させる機能を追加するにはどうすればいいの?
ひとまず、implements ActionListenerしてみたが、よくわからん
0686デフォルトの名無しさん
2009/02/11(水) 11:56:470687685
2009/02/11(水) 12:04:490688デフォルトの名無しさん
2009/02/11(水) 12:06:54アプリケーションは終了せずに?
0689デフォルトの名無しさん
2009/02/11(水) 12:40:07public void close() {
if (getWindowListeners() != null && getWindowListeners().length != 0) {
for (WindowListener l: getWindowListeners()) {
l.windowClosing(new WindowEvent(this, WindowEvent.WINDOW_CLOSING));
}
}
dispose();
}
0690デフォルトの名無しさん
2009/02/11(水) 12:41:480691デフォルトの名無しさん
2009/02/11(水) 12:46:42そうですね、アプリケーションの終了です
言葉が足りませんでした
>>689
参考にします
>>690
その発想は無かった
とにかく、ヒントをもらったので調べてみます
thx
0692デフォルトの名無しさん
2009/02/11(水) 13:25:20チェック全部いらね
0693デフォルトの名無しさん
2009/02/11(水) 14:52:26調べたのですが見つからず、結局文字数を読み込んでreplaceRangeで置き換えるという方法で代用したのですが
どのような時でも、汎用的に動作するのかというのが不安なので
0694デフォルトの名無しさん
2009/02/11(水) 15:29:16でいいのでは……
0695デフォルトの名無しさん
2009/02/11(水) 15:46:290696デフォルトの名無しさん
2009/02/11(水) 15:48:290697デフォルトの名無しさん
2009/02/11(水) 21:57:26String obj;
if(obj == null){
System.out.println("objはnullです");
}
とすると、シンタックスエラーになるのは何故ですか?
0698デフォルトの名無しさん
2009/02/11(水) 22:01:19デフォルト値で初期化される事が保証されてるのはクラス変数とインスタンス変数。
局所変数はデフォルト値で初期化されないから使用する前に明示的に初期化しておかないとコンパイルエラーになる。
0699デフォルトの名無しさん
2009/02/11(水) 22:17:27その中でyoutube検索をしていたら、javaScriptが無効になっているようなので有効にして下さいとゆう表示がでます
しかしインターネットオプションを見てみると有効になっているのです
ちなみにただインターネットでyoutubeを検索してみると正常に検索等が出来るのです。
ただ左下に黄色の三角の中に!マークがでて、ページでエラーが発生しましたと出ます
この間まではWoopie Video DeskTopも普通に使えていました。
youtubeもjavaがどうとかゆう表示はでませんでした。
全くの初心者で訳が分かりません・・・
プラウザがどうとかありますが、プラウザもなんのことやらって感じです・・・。
誰か助けてくださいお願いします・・・。
0700デフォルトの名無しさん
2009/02/11(水) 22:24:030701デフォルトの名無しさん
2009/02/11(水) 22:26:35→ このスレがひっかかる
→ とりあえず質問する
じゃね?
0702デフォルトの名無しさん
2009/02/11(水) 22:35:46ちなみにWoopie Video DeskTop javaScriptで検索したら一件目に答えっぽいのがでてきたから
今回のはただの釣りだな。
0703デフォルトの名無しさん
2009/02/11(水) 22:42:180704デフォルトの名無しさん
2009/02/11(水) 22:53:10ほんと意地悪なやつらだな
0705デフォルトの名無しさん
2009/02/11(水) 22:54:50>>702は無視ですか、そうですか。
0706デフォルトの名無しさん
2009/02/11(水) 23:10:500707デフォルトの名無しさん
2009/02/11(水) 23:20:24いや質問したのは俺じゃないけど
お前らは何かと意地悪する癖があるから、そういうの
よくねーと思うし
0708デフォルトの名無しさん
2009/02/11(水) 23:26:41知ってたら教えて下さい。
今の総理大臣って誰ですか?
↑このスレでこういう質問されたらどう思う? >>699は全く同じことやってるわけだが。
分かるか? こういうのは知ってるかどうかが問題じゃないんだ。
何の為にスレが細分化されているか考えてからそういうレスなさい。
0709デフォルトの名無しさん
2009/02/11(水) 23:28:35検索キーワード教えてるんだから十分じゃん
0710デフォルトの名無しさん
2009/02/11(水) 23:29:32でも委員長もそういうのよくねーって言ってるよ?
0711デフォルトの名無しさん
2009/02/11(水) 23:33:18何委員長かによる。
学級委員長と図書委員長には逆らえない。
ところでJavaでexe形式のファイルってどうやって作るの? eclipseとか確かexeだったよね。
0712デフォルトの名無しさん
2009/02/11(水) 23:33:31「お前ら」って、意思統一された固定メンバーの集団だとでも?
0713デフォルトの名無しさん
2009/02/11(水) 23:37:06int num = 5; みたいな変数の扱い方の様に、条件式を格納できる変数など
ありますでしょうか?下記みいな使い方ができるものがあれば良いのですが。
xxx zyoukensiki_A = (100 <= num) || ( num <= 200)
ご教授宜しくお願いします。
0714デフォルトの名無しさん
2009/02/11(水) 23:38:23とりあえずその間違った日本語の使い方正してからこい
0715デフォルトの名無しさん
2009/02/11(水) 23:39:27メソッドでいいやん。
static boolean zyoukensiki_A ( int num){return (100 <= num) || ( num <= 200);}
0716デフォルトの名無しさん
2009/02/11(水) 23:39:41java exeでググったらexewrapってのが1番にきた
これは無料で使えそうだ
>>707
検索キーワードでも十分だろ?
しかし、その検索キーワードは違う気がする。
そこら中のHPに埋め込まれてる「javascriptを使用しています、全ての機能を有効にするには〜」って言葉が引っかかってるw
youtube板とかソフト板のそれっぽいスレで質問した方が早いだろうな
【DL】Woopie Video DeskTop2【ニコニコ、Youtube】
ttp://pc11.2ch.net/test/read.cgi/software/1222354743/
ここにちょうど同じ質問がでてる、こっちで回答待ちするのがいいと思われる。
0717デフォルトの名無しさん
2009/02/11(水) 23:40:160718デフォルトの名無しさん
2009/02/11(水) 23:42:46static boolean 条件式A ( int num){return (100 <= num) || ( num <= 200);}
0719デフォルトの名無しさん
2009/02/11(水) 23:43:30サーチエンジンが使えない人かもしれないだろ
今もまだお前らからの答えを待ってるかもしれないし
なんでそういう考えができないのかなぁ
0720デフォルトの名無しさん
2009/02/11(水) 23:43:520721デフォルトの名無しさん
2009/02/11(水) 23:46:19サーチエンジン使えなくてどうしてここにくるんだよw
それにサーチエンジン使えないとしても、そうレスすりゃいいだけだ。
0722デフォルトの名無しさん
2009/02/11(水) 23:46:34そこまでやるとダサカッコイイな。
>>719
はいはい、そうだね。 けど>>708を108回音読してね。
0723デフォルトの名無しさん
2009/02/11(水) 23:48:25ぐぐって分からなければ、また質問してくるだろう。
0724デフォルトの名無しさん
2009/02/11(水) 23:52:22gcjで出来るらしい
使ったことないから詳しくは分からん
0725デフォルトの名無しさん
2009/02/11(水) 23:54:05個別の11人かw
0726デフォルトの名無しさん
2009/02/12(木) 00:17:55になっててダウンロードできません
もうダウンロードできないんでしょうか?
0727デフォルトの名無しさん
2009/02/12(木) 00:43:43http://java.sun.com/j2se/1.4.2/ja/download.html
0728デフォルトの名無しさん
2009/02/12(木) 00:45:05\/ ● 、_ `ヽ
/ \( ● ● |つ
| X_入__ノ ミ 俺は釣られないクマ ・・・
、 (_/ ノ
\___ノ゙
/ 丶' ⌒ヽ:::
/ ヽ / /:::
/ /へ ヘ/ /:::
/ \ ヾミ /|:::
(__/| \___ノ/:::
0729デフォルトの名無しさん
2009/02/12(木) 01:36:33\/ ● 、_ `ヽ
/ \( ● ● |つ
| X_入__ノ ミ クマーーー
、 (_/ ノ
\___ノ゙
/ 丶' ⌒ヽ:::
/ ヽ / /:::
/ /へ ヘ/ /:::
/ \ ヾミ /|:::
(__/| \___ノ/:::
0730デフォルトの名無しさん
2009/02/12(木) 06:08:00ぐぐるはたまに調子悪くなるので、あんまり依存しすぎると危険だ。いきなり終了した時の事も考えて使うべき。
使う分には、1.4で十分な事も多い。
0731デフォルトの名無しさん
2009/02/12(木) 21:03:390732デフォルトの名無しさん
2009/02/12(木) 22:35:15↓のようにすると上書きされてしまいます
どなたか、知識をお貸しください
BufferedWriter bw = new BufferedWriter(new FileWriter(new File(fileName)));
bw.write(text);
0733デフォルトの名無しさん
2009/02/12(木) 22:49:070734デフォルトの名無しさん
2009/02/12(木) 22:52:36FileWriterのAPIドキュメントのコンストラクタのところを穴があくほど見れ。
0735デフォルトの名無しさん
2009/02/12(木) 22:55:41わかりました
ありがとうございます
0736デフォルトの名無しさん
2009/02/13(金) 00:27:12http://cobertura.sourceforge.net/
テストコードの網羅性なんかが視認できてすごく便利なんだけど、
>if ( param > 0 ) {
> flag = !flag;
>}
なんていう、否定代入?の式なんかが
未テストって判断されちまうくさい。。。
0737デフォルトの名無しさん
2009/02/13(金) 03:43:44javaの仮想マシンの最適はかなりアホみたいに書いてたました.
例えば
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の鉄則」の最適化の話って今のコンパイラにも適応すべき鉄則なんでしょうか?
0738デフォルトの名無しさん
2009/02/13(金) 04:44:420739デフォルトの名無しさん
2009/02/13(金) 09:36:31どこまで最適化を行うかはJVMの実装任せ
0740デフォルトの名無しさん
2009/02/13(金) 10:20:25http://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
0741デフォルトの名無しさん
2009/02/13(金) 12:34:56よめよ
0742デフォルトの名無しさん
2009/02/13(金) 14:56:19多重ループ展開しまくってるんだが?
0743デフォルトの名無しさん
2009/02/13(金) 15:16:521 + a + 2 は最適化してくれない。
0744デフォルトの名無しさん
2009/02/13(金) 16:26:560745デフォルトの名無しさん
2009/02/13(金) 18:26:550746デフォルトの名無しさん
2009/02/13(金) 18:42:390747デフォルトの名無しさん
2009/02/13(金) 18:46:120748デフォルトの名無しさん
2009/02/13(金) 19:05:140749デフォルトの名無しさん
2009/02/13(金) 21:36:46その本、どこのアホが書いたの?
0750デフォルトの名無しさん
2009/02/14(土) 00:02:010751デフォルトの名無しさん
2009/02/14(土) 06:35:06XREA&CORESERVERでの共有SSLサーバー対応できるのでしょうか?
それとクレジットカード決算についてなのですが
暗号化(?)みたいにしないとデフォじゃまずいですよね?
そこら辺の事を書いてあるサイト教えて頂けませんでしょうか?
よろしくお願いします。
0752デフォルトの名無しさん
2009/02/14(土) 06:55:580753デフォルトの名無しさん
2009/02/14(土) 07:25:34ありがとうです。web板行きます。
0754デフォルトの名無しさん
2009/02/14(土) 12:05:22javaコンソールから次世代java-pluginを使うようにしてIEにjava-pluginを有効にしてもドラッグアウトできないんだが。
0755デフォルトの名無しさん
2009/02/14(土) 13:07:300756デフォルトの名無しさん
2009/02/14(土) 14:31:470757デフォルトの名無しさん
2009/02/14(土) 15:07:24ブラウザが、うざくて閉じたいときにどうか?
0758赤西仁
2009/02/14(土) 16:33:30PSのアークザラッド�Uというタイトルのゲームの、ゲーム画像(歩行画像など)を抽出したいのですが、
かれこれ1年ほど経ちますが、なかなかうまくいきません。
*もちろん抽出した画像は個人範囲内で利用するつもりです。
◆試してダメだったこと
ネット上からダウンロードできる、ありとあらゆる抽出系ツールを試した。
(ちなみに他のゲームはほとんど抽出可能)
◆教わったこと
・アークザラッド�Uは独自の画像形式を使っているから抽出できない。
・PS上で表示されてるということは絶対に摘出はできるはず。
・ttp://www.gradius2.com/index.php?UID=1174775153
◆抽出は不可能ではないということを知ったとき
2ちゃんねるで質問したところ、
ある方が実際にキャラクターの歩行画像を抽出して
私が立てたスレにアップしてくださいました。
スクリーンショットじゃダメなんです。どうか皆さん、お力をお貸しください。お礼は絶対にします。
0759デフォルトの名無しさん
2009/02/14(土) 16:36:020760デフォルトの名無しさん
2009/02/14(土) 16:44:23>>755 のとおりHTMLタグを書いて、
Alt を押しながらアプレットをドラッグする。
HTMLタグを書く必要があるので、
既存のアプレットを何でもドラッグできるわけではない。
0761デフォルトの名無しさん
2009/02/14(土) 20:20:45マルチは低学歴w
0762デフォルトの名無しさん
2009/02/16(月) 00:15:18文字列を入力して「Blowfish」で暗号化。
暗号化した文字列を一度ファイルに出力。
そして、出力したファイルの文字列を読み込んで復号するというプログラムを作っているのですが、
読み込みの時点でjavax.crypto.BadPaddingExceptionというエラーが出てしまいます。
おそらくブロックサイズが合っていないか何かのエラーだと思うのですが、
解決方法がわかりませんでした。
申し訳ありませんが、よろしくお願いします。
0763デフォルトの名無しさん
2009/02/16(月) 01:35:00何が聞きたいのかすら分からない。
例外の意味を知りたいならググればいいし、
書いたプログラムが間違っているかどうかなら、間違っているんだろう。
それ以上の何が言えると思っているんだ?
0764デフォルトの名無しさん
2009/02/16(月) 01:43:050765デフォルトの名無しさん
2009/02/16(月) 01:44:050766デフォルトの名無しさん
2009/02/16(月) 01:47:15その場合、解決方法は机の脇のテディベアに聞くといいよ
0767デフォルトの名無しさん
2009/02/16(月) 01:47:31誰に聞いたんだよ!
0768デフォルトの名無しさん
2009/02/16(月) 02:08:58私は誰に質問したのでしょうか?初心者ですがよろしくお願いします。
0769デフォルトの名無しさん
2009/02/16(月) 11:27:42一般論だけど、
Blowfishはブロック暗号なので、ある特定サイズ(×n)のデータしか暗号
化&複合できず、足りない部分にパディングを入れる必要がある。そのへ
んで何かミスをするとBadPaddingExceptionが起きる。
0770デフォルトの名無しさん
2009/02/16(月) 12:27:55知ったかぶりさん、恥かいちゃったねw
0771デフォルトの名無しさん
2009/02/16(月) 12:41:240772デフォルトの名無しさん
2009/02/16(月) 12:46:26読んでも意味が分からないなら、無理してレスするなよ
0773デフォルトの名無しさん
2009/02/16(月) 14:12:50知らないならでしゃばらないでください。
0774デフォルトの名無しさん
2009/02/16(月) 14:29:390775デフォルトの名無しさん
2009/02/16(月) 15:14:45ふつ、匿名掲示板で質問するのは、「知ってる人がいたら教えてください」ってことだろ?
なんで、何が聞きたいのかすら分からないヤツがわざわざ出てくるの?
あまいに聞いたんじゃ無いぞ〜〜www。脳みそカラッポだな。
それとも夜中の1時に寝ぼけて、ここを自分のブログと勘違いしたのか?
アフォすぎる。知らないなら出てくるなよ。
0776デフォルトの名無しさん
2009/02/16(月) 15:15:490777デフォルトの名無しさん
2009/02/16(月) 15:48:07まぁ落ち着けや。
0778デフォルトの名無しさん
2009/02/16(月) 17:05:03>>769が中身無いって分かってんだよね?
0779デフォルトの名無しさん
2009/02/16(月) 17:10:180780デフォルトの名無しさん
2009/02/16(月) 17:12:590782デフォルトの名無しさん
2009/02/16(月) 20:38:480783デフォルトの名無しさん
2009/02/16(月) 20:46:110784がちゃがちゃ
2009/02/16(月) 20:56:24このような HashMap を作ることは可能でしょうか?
だれか優しい人おおしえください。
0785デフォルトの名無しさん
2009/02/16(月) 21:02:340786デフォルトの名無しさん
2009/02/16(月) 21:20:590787デフォルトの名無しさん
2009/02/16(月) 21:35:110788がちゃがちゃ
2009/02/16(月) 21:48:58しかし、JSP/Servretにて、
「org.apache.jasper.JasperException: An exception occurred processing JSP page」
というエラーがでる。
0789デフォルトの名無しさん
2009/02/16(月) 22:06:020790デフォルトの名無しさん
2009/02/16(月) 22:09:40じゃぁ最初っからそう書けよ。
なんで情報を小出しにする?まだ他に何か隠してることがあるんじゃないのか?
0791デフォルトの名無しさん
2009/02/16(月) 22:18:030792デフォルトの名無しさん
2009/02/16(月) 22:36:08可能です。
でいいだろ。ごちゃごちゃ言わずに答えれば良いんだよ。
0793デフォルトの名無しさん
2009/02/16(月) 22:39:590794デフォルトの名無しさん
2009/02/16(月) 22:58:59もう遅いよ
0795デフォルトの名無しさん
2009/02/16(月) 23:45:27お前が来るのが遅いのが悪いんだ
俺は俺の好きにする
0796デフォルトの名無しさん
2009/02/17(火) 00:09:29メニューを選択させてそれに対応する処理を行いたい時に、
switch (menu) {
case 0: method0(); break;
case 1: method1(); break;
みたいにスイッチ文を使うとしますよね?
その際、一つ一つの処理が長いから再利用性はないけど、
それぞれのメソッドに独立させたいとする。
そういう時って、同じクラスのprivate staticメソッドで実現させるんですか?
オブジェクト指向って関数がクラスと関係してるから、
何か不自然に感じてしまうんですけれど・・・。
Cのような手続き言語でそのようなことをしても
全く違和感はないのですが・・・。
0797デフォルトの名無しさん
2009/02/17(火) 00:11:160798デフォルトの名無しさん
2009/02/17(火) 00:43:44menu0.addAction(new Action0());
menu1.addAction(new Action1());
getSelectedMenu().doAction();
みたいに書ける
0799デフォルトの名無しさん
2009/02/17(火) 01:09:34知らないならレスしなくていいです。
0800デフォルトの名無しさん
2009/02/17(火) 01:09:470801デフォルトの名無しさん
2009/02/17(火) 01:18:120802デフォルトの名無しさん
2009/02/17(火) 01:28:40| ノ\ ヽ |
/ ●゛ ● | |
| ∪ ( _●_) ミ j
彡、 |∪| | J
/ ∩ノ ⊃ ヽ
( \ / _ノ | |
.\ “ /__| |
\ /___ /
0803デフォルトの名無しさん
2009/02/17(火) 02:13:050804デフォルトの名無しさん
2009/02/17(火) 02:15:41Strategyパターンはアルゴリズムを選択的に実行するためのもので
Commandパターンは手続きとデータをカプセル化するためのものだぞ?
>>798はCmanndパターンだぞ。
0805デフォルトの名無しさん
2009/02/17(火) 02:22:330806デフォルトの名無しさん
2009/02/17(火) 03:06:590807デフォルトの名無しさん
2009/02/17(火) 04:45:41ttp://java.sun.com/developer/onlineTraining/
オンライン文書だけどここらへんのチュートリアルとか
0808デフォルトの名無しさん
2009/02/17(火) 10:59:11書庫内書庫ってtmpディレクトリ作って解凍してやるしかないよね?
0809デフォルトの名無しさん
2009/02/17(火) 20:51:210810デフォルトの名無しさん
2009/02/17(火) 20:54:150811デフォルトの名無しさん
2009/02/17(火) 21:03:48本当に基本的なことなんですが、
以下のような式があります。
B_ = (B_ & 0xFE) & 0xFF;
これは結果的にこの式と同じではないでしょうか?
B_ = (B_ & 0xFE) ;
もっというと
B_&=0xFEとはなりませんでしょうか?
0812デフォルトの名無しさん
2009/02/17(火) 21:28:17調べて来いって言われたんだろ
0813デフォルトの名無しさん
2009/02/17(火) 21:31:57B_の型って何だ?dojaでは何かの型なのか?
0814デフォルトの名無しさん
2009/02/17(火) 21:31:58知らないならレスしないでください
0815デフォルトの名無しさん
2009/02/17(火) 21:45:410816デフォルトの名無しさん
2009/02/17(火) 21:56:32実際に動かしてから聞いてください。
0817デフォルトの名無しさん
2009/02/17(火) 22:15:11int です。
どう計算しても値が違うものにならないような気がして…
0818デフォルトの名無しさん
2009/02/17(火) 22:21:53のコンパイルを使用としたら、無検査どうこうと怒られたんで下記のようにしてみたんだけど問題無いでしょうか?
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));
}
}
}
0819818
2009/02/17(火) 22:23:15いまいち総称型の位置が正しいか不安で・・
特に
static void addData(Set<Integer> set) {
あたりの使い方が気になっています。
他の解決方法もあればお願いします。
0820813
2009/02/17(火) 22:49:32B_がintなら同じじゃねーのかな…。
ていうかよく考えたらB_がbyteだったらエラー出まくりだよな…。
iモードなんたらってスレみたら、
たしかに69の奴が「ぜんぜん違う」と断定してるな。
ほんとに違うのか???
Java上級者の方、意見求む。
0821デフォルトの名無しさん
2009/02/17(火) 22:56:43intとbyteのビット数はどうなん?
byteは最大値FF
intは最大値FFFFFFFF
>ていうかよく考えたらB_がbyteだったらエラー出まくりだよな…。
byteとintをビット演算してエラーでるっけ?
0822デフォルトの名無しさん
2009/02/17(火) 22:59:10その人が何を言ってるのか意味不明ですが、ていうか同じですけどw
(B_ & 0xFE) & 0xFF
B_& 0xFF & 0xFE & 0xFF
0823デフォルトの名無しさん
2009/02/17(火) 23:14:55public 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();
}
}
}
0824823
2009/02/17(火) 23:16:23動かしてみれば一発じゃんって事で動かしたが、エラーでないまま最後まで通ったよ
0825823
2009/02/17(火) 23:17:350826813
2009/02/17(火) 23:49:34スマソ、適切にキャストしたらエラー出んかった…
エラーが出たのはキャストしてなかったからだった…
B_がbyteの場合は、
B_=(byte)((B_&0xFE)&0xFF);
B_=(byte)(B_&0xFE);
ダッタ。で、&0xFEの時点ですでに8〜31までの上位ビットは切り捨てられているわけだから、
&0xFEの後に&0xFFしても意味ないはず…。
ていうか>>823スゲェな…。
すべてはiモード携帯電話用〜スレの69の発言がおかしいんじゃねーかw
69め…ブツブツ。
0827デフォルトの名無しさん
2009/02/17(火) 23:56:40-1として解釈されるパターンと255として解釈されるパターンがあるから……
ってどっちでもビット演算的には同じか。
0828デフォルトの名無しさん
2009/02/18(水) 00:29:130829823
2009/02/18(水) 00:42:530830デフォルトの名無しさん
2009/02/18(水) 00:46:060831811
2009/02/18(水) 00:46:41やっぱり結果的には一緒っぽいですよね…
0832デフォルトの名無しさん
2009/02/18(水) 01:55:17キャスト
0833デフォルトの名無しさん
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);
}
}
}
0834デフォルトの名無しさん
2009/02/18(水) 09:48:020835デフォルトの名無しさん
2009/02/18(水) 09:51:57なるほど!
0836デフォルトの名無しさん
2009/02/18(水) 12:21:08自分で作らないで java.util.logging を使ってあげてください。
0837デフォルトの名無しさん
2009/02/18(水) 13:13:28分かる方がいらっしゃったら返答お願いします
0838デフォルトの名無しさん
2009/02/18(水) 13:22:01java6から利用可能と聞きました。
JAVA FXは利用しないやり方を知りたいです。
よろしくお願いします。
0839デフォルトの名無しさん
2009/02/18(水) 13:36:00危険だから公開はしないと思うぞ。
でもMicrosoftMoneyに取り込める所はあるから、
同じプロトコルを使えば可能なのかも。
0840デフォルトの名無しさん
2009/02/18(水) 13:41:51update10以降とかじゃなかったっけ?
AWTUtilties#setWindowOpacity(Window,float)とかだったと思う。
0841デフォルトの名無しさん
2009/02/18(水) 13:55:09総称型を使ってるからキャストはいらないんじゃね?
>>818のソースで動いてるし、問題あるか知りたいんだろ。
0842デフォルトの名無しさん
2009/02/18(水) 14:09:43大丈夫っぽいね
無検査〜はジェネリック使わないとバシバシ警告だしてきてウザイやね
0844デフォルトの名無しさん
2009/02/18(水) 16:00:25BBSをListで作る練習をしていて、例題に
public Writing[] list() throws BbsException{
~~~~~~~~~~~~~~~
}
という記述があったのですが、波線のところはどういうことをしているのでしょうか?
Writingクラスは別にあります。
0845デフォルトの名無しさん
2009/02/18(水) 16:05:44戻り値はWriting[]型で引数なしのlistという名前のメソッドを定義しますよと伝えてるだけです
0846884
2009/02/18(水) 16:27:00ありがとうございました。
0847デフォルトの名無しさん
2009/02/18(水) 17:13:370848デフォルトの名無しさん
2009/02/18(水) 21:55:11例えば単純な引き算で、1.0 - 0.8 = 0.19999・・ となってしまいますが
これを解決するのに BigDecimalを使うというのをネットで見つけました。
でも単純な引き算を行うのにも以下のようにどのような演算をしてるのがわかり難くなってしまいました。
new BigDecimal(String.valueOf(1.0)).subtract(・・・)
浮動小数点演算で丸めがおこらないようにするには
このようなわかり難いコーディングがデフォなのでしょうか?
何か良い方法がありましたら教えてくださいm(_ _)m
0849デフォルトの名無しさん
2009/02/18(水) 23:15:32多数派:誤差があっても気にしない。
神経質な業界:言語自体、十進演算をする実装のものを選ぶ。
科学技術:誤差込みで計算した上で、きちんと誤差管理する。
ってところかなあ。
0850デフォルトの名無しさん
2009/02/18(水) 23:18:13質問しといておまえは何様のつもりだ?
0851デフォルトの名無しさん
2009/02/18(水) 23:40:25あくまでJavaだけしか使えないなら
https://eval.dev.java.net/
みたいに計算式をパースしてやる手法ぐらいしか知らん。
0852デフォルトの名無しさん
2009/02/18(水) 23:45:46new BigDecimal("1.0").subtract(・・・)
てすればいいんじゃないのかな?
0853デフォルトの名無しさん
2009/02/18(水) 23:46:190854デフォルトの名無しさん
2009/02/18(水) 23:53:54必要な桁で丸めるとか、
あらかじめゲタを履かせる(10倍して演算後、10で割る)とか。
0855デフォルトの名無しさん
2009/02/19(木) 01:15:12配列を一つずつ増やしていくにはどうすれば良いんでしょうか??
キーボードから数字を入力して全ての数字の入力が終わったら0を入力するとします。
その次々と入力されてくる数字を一つずつ配列に格納したいのですが上手くいきません。
数字がいくつ入力されるか分からないので配列の数を最初から定義する事は出来ません。
そこで数字が一つ入力される度にループを使って配列の数を一つずつ増やしその配列に数字を入力させるようにしたいんですが。
hairetsu[]++;
だと[]に++は使えませんというエラーメッセージが出ます。
どなたか教えて下さい。
どうぞよろしくお願いします。
0856デフォルトの名無しさん
2009/02/19(木) 01:27:58Javaの配列は動的にサイズを増やせないよ。
java.util.ArrayList等を使うと良いぞ。
0857デフォルトの名無しさん
2009/02/19(木) 01:36:53配列の数はhairetsuという配列しか定義していないので1個しかありません。
配列の要素の数はhairetsu.lengthで得ることができますが、読み取り専用なので変更できません。
新しく要素数の多い配列を作って今までの配列の内容をコピーした上で新しい要素も代入するか、
ArrayListクラスなどの可変長リストを配列代わりに使うようにしましょう。
もし新しく要素数の多い配列を作ってコピーする場合、使っているJDKのバージョンが6なら
java.util.ArraysというクラスにcopyOfというメソッドがあるのでこれを使ってみてください。
0858デフォルトの名無しさん
2009/02/19(木) 13:32:32ど〜いうときに使うと便利なんですか?
0859デフォルトの名無しさん
2009/02/19(木) 13:37:48判定でtrue、false、他にもあればな〜って時。
intの0,1,2..nを使えばいいじゃん?って思うかもしれないけど、そしたら意図した値以上の数値が来たら、困るだろう?
0860デフォルトの名無しさん
2009/02/19(木) 14:48:07定数の代わりに使う。
数値や文字列だと定義されてない値をリテラルで指定するようなバカがあらわれるが、
enumなら定義されてない値は指定できない。
0861デフォルトの名無しさん
2009/02/19(木) 15:37:570862デフォルトの名無しさん
2009/02/19(木) 15:45:28俺
0863デフォルトの名無しさん
2009/02/19(木) 15:50:160864デフォルトの名無しさん
2009/02/19(木) 18:40:39必要になってから使えばいいじゃん。
0865デフォルトの名無しさん
2009/02/19(木) 19:56:560866デフォルトの名無しさん
2009/02/19(木) 19:57:14JAVAの本を読んでいるとよくこの名前のパッケージを見るのですが、中身は全部ただの箱というか、
属性とその属性を操作する振る舞いがあるだけで違いが無いように見えます。
Domainには自身/自身の属性を渡して何かの処理を依頼するような振る舞いが定義されていることがあるので
他の2つと比べて少し毛色が違うくらいはわかるのですが…
長文を読んでくださってありがとうございました。
よろしくお願いいたします。
0867デフォルトの名無しさん
2009/02/19(木) 19:59:290868デフォルトの名無しさん
2009/02/19(木) 20:00:43さるでも解るように教えてください。
このままでは落ちてしまう
0869デフォルトの名無しさん
2009/02/19(木) 20:08:090870デフォルトの名無しさん
2009/02/19(木) 20:09:210871デフォルトの名無しさん
2009/02/19(木) 20:10:09たぶんですけど、「Click Here !」ってところを全神経を集中してクリックするとたぶん答えが出ると思いますよ。
0872デフォルトの名無しさん
2009/02/19(木) 22:03:010873デフォルトの名無しさん
2009/02/20(金) 00:46:00状態数が2つしかなくとも、真、偽の意味が持たせられないなら
真偽値でなく、enumを使う。
シングルトンにも使う。いちいち privateコンストラクタを書かなくてすむし、
シリアライズなどの見かけによらない複雑怪奇な実装がタダで得られる。
0874デフォルトの名無しさん
2009/02/20(金) 01:14:08ボタンを押すたびに桁を増やす処理で躓いてます。
0875デフォルトの名無しさん
2009/02/20(金) 01:23:000876デフォルトの名無しさん
2009/02/20(金) 12:07:19という解釈は間違っていないですか?
JVMの内部では、これらのクラスも全てClassクラスを型にして作られたオブジェクトとして扱っているのでしょうか?
0877デフォルトの名無しさん
2009/02/20(金) 12:51:50間違っている。Object クラスならまだ言いたいことがわからないでもないが。
どこからそういう知識を仕入れたんだ?
0878デフォルトの名無しさん
2009/02/20(金) 12:53:54間違ってる。
StringもExceptionも自作クラスもObjectクラスを基にして作られたオブジェクトっていうなら合ってる。
0879デフォルトの名無しさん
2009/02/20(金) 12:56:49間違ってる。StringクラスもExceptionクラスも自分で定義するクラスも、実はObjectクラスのインスタンスである。
0880デフォルトの名無しさん
2009/02/20(金) 13:18:04間違っていない。
Stringクラス、(つまりString.class、Class.forName("java.lang.String"))は
Classクラスのインスタンス。
0881876
2009/02/20(金) 13:20:33>>878
>>879
ありがとうございます。この解釈は間違っているのですね。。
実はrubyしか知らない素人PGなのでjavaをこれから勉強しようと思っていたんです。
rubyだと
String.class => Class
MyClass.class => Class
のように全てのクラスはClassクラスのインスタンスです。
Javaも同じなのかな、と自分の勝手な妄想でした。
rubyのClassクラスの役目とObjectクラスの役目を、javaではObjectクラスが両方担っている感じでしょうかね。
0882876
2009/02/20(金) 13:22:070883デフォルトの名無しさん
2009/02/20(金) 13:24:04Stringオブジェクトは、Objectクラスを継承したStringクラスのインスタンス
String.classはインスタンスがなくても使える
0884デフォルトの名無しさん
2009/02/20(金) 13:46:110885デフォルトの名無しさん
2009/02/20(金) 13:58:27星空の下にある物だよな?
0886876
2009/02/20(金) 14:06:06JVM内部でクラスがどのように扱われているかを知りたいのです。
たとえばRubyの場合、Stringクラスという情報がClassクラスのインスタンスとして保持されています。
0887デフォルトの名無しさん
2009/02/20(金) 14:09:09これだけじゃ抽象的過ぎて何がしりたいのかわからん
0888デフォルトの名無しさん
2009/02/20(金) 14:11:09ただしreflectionといって型情報をクラスとして扱う方法が提供されている。
そのひとつがClassクラス。
他言語にはオブジェクトを生成するのに別のオブジェクトを雛形に使うものがある。
0889876
2009/02/20(金) 14:22:42具体的にいえばクラスのロード時にJVMが行うことです。
というか今ぐぐってみたら見つかった。
http://www.ibm.com/developerworks/jp/java/library/j-dyn0429/
やっぱり最初にjava.lang.Classクラスのインスタンスが生成されて他クラスの元になっているようです。
rubyと同じですね。
0890デフォルトの名無しさん
2009/02/20(金) 14:24:44最も効率的な方法ってどんなんでしょう?
今は、
Integer[] integer = new Integer[2];
integer[0] = i[0];
integer[1] = i[1];
なんて書いてるんですが。。。
0891デフォルトの名無しさん
2009/02/20(金) 14:27:00はたしてその変換にどういう意味があるのかは別として
for文でまわせよ
0892デフォルトの名無しさん
2009/02/20(金) 14:30:49何を効率的と考えるのかによる。
外部ライブラリ使えるなら
org.apache.commons.lang.ArrayUtils.toObject(new int[]{1, 2});
とかでもいいし。
0893デフォルトの名無しさん
2009/02/20(金) 14:34:42はたまたコーディング量の効率を上げたいのか。
0894デフォルトの名無しさん
2009/02/20(金) 14:35:140895デフォルトの名無しさん
2009/02/20(金) 15:15:430896デフォルトの名無しさん
2009/02/20(金) 16:03:02とりあえず簡易的に「メモ帳へ文字列を書き込む」
というプログラムを書いたのですが、メモ帳が起動するだけで
文字列の送出をしてくれません。
//外部アプリの実行
ProcessBuilder builder = new ProcessBuilder();
builder.command("notepad.exe");
Process pr = builder.start();
//出力する文字列の定義
String[] cmd = new String[2];
cmd[0] = "test";
cmd[1] = "Hellow java";
//外部アプリに文字列を送出
BufferedWriter writer = new BufferedWriter(
new OutputStreamWriter(
pr.getOutputStream()
)
);
for(int i=0; i<cmd.length; i++){
writer.write(cmd[i]);
writer.newLine();
writer.flush();
}
こんな感じでやろうとしてます。
どなたか教えてください。
0897デフォルトの名無しさん
2009/02/20(金) 16:17:510898デフォルトの名無しさん
2009/02/20(金) 16:28:410899896
2009/02/20(金) 17:23:22jniというものを使うんですね。
C経験がないので敷居が高く感じますが、
勉強してみます。
0900デフォルトの名無しさん
2009/02/20(金) 18:46:53java.lang.Classは形式的なハンドルみたいなもんであって
本当にjavaのオブジェクトとしてクラスが読み込まれるわけじゃないぞ
0901デフォルトの名無しさん
2009/02/20(金) 20:56:08遅くなって申し訳ありません!
解答ありがとうございました。
0902デフォルトの名無しさん
2009/02/20(金) 22:10:08そうか、やっとわかりました。
>>885 は「星空の下のデイスタンス」(ジ・アルフィー)のつもりでボケたのだが
>>894 は「星屑のステージ」(チェッカーズ)だと勘違いした。
そゆことですよね?
0903デフォルトの名無しさん
2009/02/20(金) 23:27:27たぶんその理解は違う。
ルビーで言うインスタンスとジャヴァで言うインスタンスを区別してからじゃないか?
何も知らないのにIBMのその記事読むと頭おかしくなっちゃうよw
0904デフォルトの名無しさん
2009/02/20(金) 23:33:28jniだとしても、notepadがstdinを受け付けないんじゃ意味ないんじゃないの?
0905デフォルトの名無しさん
2009/02/20(金) 23:34:590906デフォルトの名無しさん
2009/02/21(土) 00:01:59>>877,878,879 とか 903 はインスタンスとクラスの区別がちゃんとついてないだろ?
だから Class クラスのインスタンスというものの意味がわかってない。
0907デフォルトの名無しさん
2009/02/21(土) 00:35:04総量サイズって取得できますか?
ヒープの使用量なら取得できるのですが、、
0908デフォルトの名無しさん
2009/02/21(土) 00:41:20インスタンスとクラスは全然違うと思うんだが、逆に聞きたいんだが区別がつかないところなんかあるのか?
rubyのcハッキング本読んで、その意見をいうならまた別の意味で興味深いけどw
0909デフォルトの名無しさん
2009/02/21(土) 00:43:080910デフォルトの名無しさん
2009/02/21(土) 00:48:39もちろん実装はそんなに簡単じゃなくて,Classは単なるIDでリフレクションの窓口にすぎないけど
そういう風に考えてよい,そういう風に見えるように意図してある,という話
0911デフォルトの名無しさん
2009/02/21(土) 00:59:330912デフォルトの名無しさん
2009/02/21(土) 01:50:48LL文法一発で読めるようなコードになってんのかな?
Pascalみたいにさ
0913896
2009/02/21(土) 02:33:29>>904 >>905
仰る通り、このプログラムでは標準入出力からの
操作は必要としていません。
それならば無理はないって解釈で良いんですかね。
あと、>>909 のレスは自分についてのコメントなんでしょうか?
まだSendMessageとかについて理解してなくて、
コメントの意味すらちゃんと理解できないもので・・
0914デフォルトの名無しさん
2009/02/21(土) 03:18:03ttp://homepage2.nifty.com/igat/igapyon/diary/2005/ig051228.html
つぎにnotepad sendmessageで検索して上のサンプル改造しておわり
0915デフォルトの名無しさん
2009/02/21(土) 03:42:38よっぽど難しいこと考えてると思ったけど、ここまでひねくれてるとは・・・ビックリしたw
0916デフォルトの名無しさん
2009/02/21(土) 03:49:29それぞれ比較するとどんな特徴があるのでしょうか?
0917デフォルトの名無しさん
2009/02/21(土) 04:49:110918デフォルトの名無しさん
2009/02/21(土) 08:19:290919デフォルトの名無しさん
2009/02/21(土) 09:05:310920デフォルトの名無しさん
2009/02/21(土) 10:44:16両方とも使ってみろ。自分の手になじむほうを使うのがよい。
0921デフォルトの名無しさん
2009/02/21(土) 13:21:12各種フレームワークについて、まとめてあるサイト/本はありませんか。
一覧表ぐらいのものでも構いません。
どのフレームワークを使うか決めなければならなくなったのですが、
調べようにも足がかりになるサイトが見つからなくて困っています。
0922デフォルトの名無しさん
2009/02/21(土) 13:23:24自分で使ってみて判断するもんじゃないか?
その能力が無い人間が、判断するのか?
0923デフォルトの名無しさん
2009/02/21(土) 13:25:25いえ、どういう選択肢があるか知りたいだけです。
ですから一覧表程度のものでいいんです。
0924デフォルトの名無しさん
2009/02/21(土) 13:42:40そういう時は自分で調べながら一覧表作れば、他の誰かが追随してくれる。
0925デフォルトの名無しさん
2009/02/21(土) 13:49:260926921
2009/02/21(土) 13:57:24良いページが見つからないので、グーグルさんを使って
片っ端から書き出してみようと思います。
ありがとうございました。
0927デフォルトの名無しさん
2009/02/21(土) 14:09:00大差ないってことですかね。
じゃあ書籍が多いEclipseにしますか。
0928デフォルトの名無しさん
2009/02/21(土) 14:10:400929デフォルトの名無しさん
2009/02/21(土) 14:12:03理由をぜひ
0930デフォルトの名無しさん
2009/02/21(土) 14:12:14eclipseのポトペタはなんか、プラグイン適当にいれても動かなかったりするから困る
0931デフォルトの名無しさん
2009/02/21(土) 14:17:12CollabNet is currently down for scheduled maintenance.
0932デフォルトの名無しさん
2009/02/21(土) 14:19:13プラグイン相互のまとまりといったものにはかけている。
netbeansの場合はすぐ使える。詰め合わせセットがはじめからデフォという感じ。
斜に構えて違いを言うなら
Sunが思い描いてるjavaを体験したいならnetbeans
javaを取り巻く現実を見たいならeclipse
0933デフォルトの名無しさん
2009/02/21(土) 14:46:520934デフォルトの名無しさん
2009/02/21(土) 18:30:24メソッドがあります。
そのメソッドの引数はbyte[]の配列でした。
こういったときはbyte[]を使うメリットはあるのですか?
私はObjectかStringでよいかと思うのですが。
0935デフォルトの名無しさん
2009/02/21(土) 19:13:250936デフォルトの名無しさん
2009/02/21(土) 20:14:10少しわからないことがあるので教えていただけないでしょうか
現在メインクラスにてPlayerクラスとEnemyクラスのペイントを読み出して描画しています
で、メインクラスにてボタン入力の際の値をPlayerクラスに渡して
プレイヤーキャラの描画位置を移動させています
そして敵の描画位置をプレイヤーキャラの現在の座標に向けて動かすようにしたいので
プレイヤーキャラの座標をEnemyクラスに渡したいのですがうまくいかず困っています
メインからPlayerクラスに値を渡す場合
public class Main extends Canvas{
private Player player;
Main(){
player = new Player();
}
として
キー入力の判定後
player.setDirect(1);
としてPlayerクラスに値を渡し
Playerクラスにて
public void setDirect(int d){
muki = d;
}
とやって受け取りうまくいっているのですが
0937デフォルトの名無しさん
2009/02/21(土) 20:14:51Enemyクラスに渡す際
Playerクラスにて
public class Player{
private Enemy enemy;
public Player(){
enemy = new Enemy();
}
プレイヤーの移動処理後
enemy.setTarget(px);
Enemyクラスにて
public void setTarget(int tx){
targetx = tx;
}
としているのですがうまくいきません
どうすればPlayerクラス内の値をEnemyクラスに渡せるのでしょうか?
0938デフォルトの名無しさん
2009/02/21(土) 22:34:52渡せてるのかどうかは、どうやって判断しているのですか?
0939936
2009/02/21(土) 22:39:24エミュレーターで起動してます
メインクラスからプレイヤークラスへ渡したときは普通に起動でき
組んだとおりに動きましたが
その後プレイヤークラスからエネミークラスへデータを渡すようにしてみたところ
エラーでエミュレーターがすぐ閉じてしまいました
Java自体3年ほど前に基礎を軽く勉強した程度なので
↑の方法で渡せるのかってのもいまいちわかってない状態です
メインクラスからプレイヤークラスへ渡したのと同じようにやってみたのですがうまくいかなかったので
やり方が間違っているのでしたら教えていただければと思います
0940デフォルトの名無しさん
2009/02/21(土) 22:57:47エラーによってエミュレータが閉じたことをもって、「渡せていない」と判断したのですね?
そのエラーはどのようなエラーでしたか?
0941デフォルトの名無しさん
2009/02/21(土) 23:04:00java.lang.NullPointerException
at Player.paint(+301)
at Main.paint(+25)
at com.nttdocomo.ui.Display$1.run(+186)
Player
と出ています
Player内のpaint処理内にプレイヤーの座標移動処理があり
その中に
enemy.setTarget(px);
と入れているのでたぶんそこでうまくいっていないんだと思いますが
>>937に描いてある内容自体は間違っていないのでしょうか?
0942デフォルトの名無しさん
2009/02/21(土) 23:13:27937 を見る限り NullPointer が発生する要素は見あたりません。
enemy.setTarget(px); に限って NullPointer が発生する可能性を探れば
メンバ初期化忘れ、null 途中代入、スコープ内変数による上書きなどでしょうか。
0943デフォルトの名無しさん
2009/02/21(土) 23:38:40精神的ブラクラ貼るな!
0944デフォルトの名無しさん
2009/02/22(日) 00:12:420945デフォルトの名無しさん
2009/02/22(日) 00:39:230946デフォルトの名無しさん
2009/02/22(日) 01:00:010947デフォルトの名無しさん
2009/02/22(日) 01:01:42基本が出来ていないから書籍等読んでやり直せ
どうせ3年間ろくにプログラム書いてないんだろ
0948デフォルトの名無しさん
2009/02/22(日) 01:03:47内容的には詳しく書いてあるほうが好みなので、
「プログラミング言語Java 第4版」がよさそうだったのですが、
とにかく訳がだめのようなので躊躇しています。
0949デフォルトの名無しさん
2009/02/22(日) 01:06:46紙芝居ゲーのエンジンなら作れるようになったけどなぁ。
HTMLパーサなんてもう二度と作ってやらねぇ('A`)123要素目
0950デフォルトの名無しさん
2009/02/22(日) 01:11:59プログラミング言語Java 第4版の2版を読んだけど、
amazonレビューとは違って、訳がひどいとは感じなかった。
版を重ねてマシになったのかも?
0951デフォルトの名無しさん
2009/02/22(日) 01:12:29appletで画像を描画する際
画像の位置をint型でなくfloatもしくはdouble型で指定したいのですが
可能でしょうか?
0952デフォルトの名無しさん
2009/02/22(日) 01:43:00この配列の大きさを変えたいのです。7→100という感じに。
配列の拡張をするにはどうすればよいのでしょうか?
0953デフォルトの名無しさん
2009/02/22(日) 01:46:07第3版も同じ人が訳しているのですが、訳の評価は悪いですが、
本としてはそこまで評価は悪くないようですね。
読めない程度でなければ買ってみます。
そのほかにも何か読んでおいたほうがよい本はありますか?
目的としては、言語としてのJavaが分かればそれでよいです。
0954デフォルトの名無しさん
2009/02/22(日) 01:49:00新しく配列作ってその配列にaaaの内容をSystem#arraycopy()かなんかでこぴってaaaに新しい配列の参照を代入すればいいんでない?
Javaの配列は固定長だから、サイズが変わるような用途ならListを使うといいよ。
0955デフォルトの名無しさん
2009/02/22(日) 01:52:50HTMLパーサとレンダリングもかよ。
タグは少しだけというのでも、全部自作というならそれはそれで凄いは。
少し改造して自作XMLパーサにすればおk。
0956デフォルトの名無しさん
2009/02/22(日) 04:29:14aaa = java.util.Arrays.copyOf(aaa, 100);
0957デフォルトの名無しさん
2009/02/22(日) 06:48:53お前がプログラマーとして優秀かどうかは分からないけど、人間として最低なのはよく分かった
0958デフォルトの名無しさん
2009/02/22(日) 07:52:310959デフォルトの名無しさん
2009/02/22(日) 08:05:30何でPlayerがEnemyを持っているのか設計の意図が分からん。
ソースの抜粋しか提示してないから具体的に何をやってるかも分からんが、
Playerのコンストラクタで生成したEnemyのインスタンスとは違う
初期化されていないEnemy型の変数を参照しようとしてぬるぽになったりしてるんじゃないのか?
0960デフォルトの名無しさん
2009/02/22(日) 10:32:36消えないなと思ってたんだけど、変なコード支援を参考に
ArrayList<String[]> records = new ArrayList<String[]>();
こう書いたら消えた。いろいろサイト見てもこんな書き方してるとこ
無いんだけど、いつからこんな書き方するようになったの?
0961デフォルトの名無しさん
2009/02/22(日) 10:46:400962デフォルトの名無しさん
2009/02/22(日) 10:59:350963デフォルトの名無しさん
2009/02/22(日) 11:06:000964デフォルトの名無しさん
2009/02/22(日) 11:33:24VideoBoxというものがありますが
これをzoomeというサイトに投稿した動画に対応させる方法はありますか?
zoome→ttp://www.zoome.jp/
もしスレ違いでしたら、誘導お願いします。
すみませんがよろしくお願いします。
0965デフォルトの名無しさん
2009/02/22(日) 11:59:39JavaScriptスレに行け。
0966デフォルトの名無しさん
2009/02/22(日) 13:33:01この文字コード(iso-8859-1)は何をあらわしているのですか?
0967デフォルトの名無しさん
2009/02/22(日) 14:24:49ぐぐれ。
文字集合と符号化方式について調べましょう。
レポートにして提出ね。
0969936
2009/02/22(日) 16:26:54とりあえず受け渡しができていることをわかりやすいように
プレイヤーと向きを連動させてみようと思ったのですが
即終了してしまい、受け渡し後の数値を宣言時に入れておくと終了はしないのですが
うまく受け渡しができなくて向きの変化がありあませんでした
一応ソースはこんな感じなのですがどう改善すればよいのでしょうか・・・
ttp://www2.uploda.org/uporg2037898.zip.html
0970デフォルトの名無しさん
2009/02/22(日) 16:38:28そこなおせハゲ
0971デフォルトの名無しさん
2009/02/22(日) 16:45:180972デフォルトの名無しさん
2009/02/22(日) 16:47:37パスも知らせないとはひでえ釣りだな
0973デフォルトの名無しさん
2009/02/22(日) 16:53:21「うまく受け渡しができません」って聞くつもりか、この知恵遅れ
0974936
2009/02/22(日) 17:04:37パスはjavaです
NullPointerExceptionって出るのは受け渡せてないからなのでは?
受け渡す前にその変数に数値を指定しておけばNullPointerExceptionは出ないので
ただ、受け渡せてないから操作しても変化がなくてもうどうすればいいのやらって感じで
1度受け渡し方法さえわかれば応用でできると思うので
今回だけよろしくお願いします
0975デフォルトの名無しさん
2009/02/22(日) 17:08:24少なくともeclipseのプラグイン開発関連のソースで、
こんな書き方してるものには出会わなかったが。
0976936
2009/02/22(日) 20:14:24まじめに困ってるんで誰か助けてください・・・
0977デフォルトの名無しさん
2009/02/22(日) 20:42:21というかデバッガで追えばNPEの原因くらい特定できるだろ。
0978デフォルトの名無しさん
2009/02/22(日) 20:45:000979936
2009/02/22(日) 20:54:30期限がないからとりあえず今の対処法が知りたいんだ
0980デフォルトの名無しさん
2009/02/22(日) 20:58:060981デフォルトの名無しさん
2009/02/22(日) 21:07:070982デフォルトの名無しさん
2009/02/22(日) 21:12:57期限に余裕がなくなった理由しだいでは助けてやる。
理由を言え。
0983デフォルトの名無しさん
2009/02/22(日) 21:17:00見て思ったのは
>enemy.setTarget(px);
enemyがnullなんじゃねーか?
0984デフォルトの名無しさん
2009/02/22(日) 21:23:56でも、actionPerformedの中でifを使ってどのボタンから命令が来たのかを判断させている
これじゃ、見にくくてしょうがない
普通はこういう時、どうやって解決しているの?
教えてエロい人!!
0985デフォルトの名無しさん
2009/02/22(日) 21:26:35まんま同じ事してます。
ボタンの数だけif文があるだけで、特に見にくいと思わんけどな。
ボタンの判定だけやって、処理は別に書いてそれを呼ぶだけ。
0986936
2009/02/22(日) 21:30:37グループ製作で
それが始まった時期にインフルエンザ
インフルエンザ治ったら来年度から行く就職先で仕事
で、インフルエンザで寝込んでる間に
電話でJavaできるか聞かれて
高校のときに少しやったと答えたら
iアプリの作成に課題が決定していて
勝手に入れられてたグループのメンバーが
プログラミングのフローチャートを考えることすらできないような底辺レベルの学生
俺もJavaは専攻してないし知識は3年前に工業高校で習うレベルの基礎だけ
で、そんなのに決められていたことを知らされずに
仕事が終わって先々週学校行ったらほかのヤツができないからって理由で俺がプログラミング全部やることに
で、eclipseでのiアプリ作成環境の準備やら何やらで時間食ったりで
あとバイトとかもあるしで
空いてる時間でちょくちょくやってたけど
1箇所うまくいかなくてどう改良すればいいのかわからなくて昨日から詰まってる
0987デフォルトの名無しさん
2009/02/22(日) 21:31:41ヌルポが出てるって事は何かがヌルなんだから、
System.out.printlnでも使って何がヌルか探せないのか?
0988デフォルトの名無しさん
2009/02/22(日) 21:40:37ぶっちゃけ君も底辺レベルだから、
他人の事を悪し様に言うのは止したほうがいいぞ。
0989デフォルトの名無しさん
2009/02/22(日) 21:46:200990デフォルトの名無しさん
2009/02/22(日) 21:47:18もうすぐできるからちょっと待ってて
0991デフォルトの名無しさん
2009/02/22(日) 21:52:27無くなってやんの
0992デフォルトの名無しさん
2009/02/22(日) 21:58:480993936
2009/02/22(日) 22:03:09ttp://www3.uploda.org/uporg2038748.zip.html
パスはさっきと同じでjavaです
>>988
確かにそうですね
全部俺にやらせて遊んでるからそう思ってたけど
javaに関しては自分も無知すぎるので同じですね・・・
>>992
就職先はjava関係ないんでたぶん大丈夫・・・
0994デフォルトの名無しさん
2009/02/22(日) 22:06:21汚れ仕事が回されてきそうな彼の困りキャラぶりを思うと泣ける
強く生きろ
0995デフォルトの名無しさん
2009/02/22(日) 22:16:00ボタンの数だけリスナー作ればいい
(複数のボタンで使うなら一時変数に入れる)
button1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) { ... }
});
button2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) { ... }
});
基本的に同じ処理で、内部で呼ぶメソッドの引数が違うとかなら、
getClientProperty/putClientPropertyでも使えばいい
(メンバ一覧眺めて適当に使えそうなのを見繕っただけなので、
こういう用途が正統かどうかは知らん)
0996デフォルトの名無しさん
2009/02/22(日) 22:26:57BoxRoomMainで作ったenemyをPlayerにわたなさあかんやろ。
どこでヌルポってるのかはわからん
0997936
2009/02/22(日) 22:29:420998936
2009/02/22(日) 22:35:21BoxRoomMainで作ったenemyを渡す場合どういった記述をすればいいんでしょうか?
ヌルポになっちゃってるのはたぶん2重でnewしてるせいで
Playerでやったときのほうがうまくいってなくて
Playerから渡すはずの値が入る変数のところでおかしくなってるんじゃないかと思うんです
ただそれをどう記述しなおせばいいのかわからなくて・・・
ちなみに
>>997は自分じゃないです
なんかアップされてるの消されたり意地の悪い人がいるみたいですが
基礎が全部叩き込まれてなくて
とりあえずの対処法が知りたいってのはダメなんですか?
0999デフォルトの名無しさん
2009/02/22(日) 22:40:02そもそもヌルポってるなら「何がヌル」なのか追跡しなきゃ
>>987の方法はやってるのか?
とりあえずの対処法っても、iモードのソースなんてわけわかんね。
あと、どうやって渡すかって、渡すためのメソッド作るんだよ、セッターってんだよ。
player = new Player();
enemy = new Enemy();
↓
player = new Player();
enemy = new Enemy();
player.setEnemy(enemy); // セッター通じてenemyを渡す
やってることはsetTargetと大差ねーよ
1000デフォルトの名無しさん
2009/02/22(日) 22:48:0210011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。