【初心者】Java質問・相談スレッド98【大歓迎】

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
過去ログ、関連スレッド、よくある質問とその回答、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
http://www.wikiroom.com/java/

これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、
wikiからのリンクをおたどりください。

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 http://www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。

前スレッド
【初心者】Java質問・相談スレッド97【大歓迎】
http://pc10.2ch.net/test/read.cgi/tech/1170391493/

/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */
また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。

JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。http://pc10.2ch.net/hp/

次スレは>>980あたりで。
2デフォルトの名無しさん:2007/02/18(日) 17:30:04
ずるしてらくしてかれいに2げっとかしらかしら〜
3デフォルトの名無しさん:2007/02/18(日) 17:35:24

  小 面 童  /   ,、r'";;;;;;;;;;;;;;;;;;;;;;;;;;;;;`';,、    ,r';;r"           _ノ
  わ が 貞  L_ /;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\ ,';;/             )     何
  っ .許 が  //;;/´         `' 、;;;;;;;;,,l;;'            /ヽ  と と
  ぱ さ.    /.,';/              ヽ;;;;,l;L_      .,,、,--ュ、 ';;;;;;;;;i な 童
  ま れ   l |;|┌--‐フ  ┌----、、   |;ヾr''‐ヽ,  ,、ィ'r-‐''''''‐ヽ ';;;;;;く !! 貞
  で る   i  |l ~~__´ 、   ``'__''''┘  |;;;;;l rO:、;  ´ ィ○ヽ    'i;;;;;厶,
  じ の   l _|. <,,O,> 〉   <,,O,,>    |;;;;;| `'''"/   `'''''"´     !;;;;;;;;ヽ
  ゃ は   ._ゝ'|.    /   、       |; ,'  /   、        |;;;;;;;;;;;;;レ、⌒Y⌒ヽ
  ぞ    「 | |    (    )       .ソ l  ,:'   _ ヽ       .|;;;;;;;//-'ノ
        ヽヽ |    _,ニ ニ,,,,,_        ', ゞ,' '"'` '"       i;;;;;i, `' /
⌒レ'⌒ヽ厂 ̄  `| ,、ィ-‐''__'''‐-`,、     ''  ', i、-----.、       `''"i`'''l
人_,、ノL_,iノ!   ',   :i゙''''''''''`l'  ` _人__人ノ_ヽ ヾ゙゙゙゙ニニ'\        ,'  ト、,
      /    ヽ.   L__」   「 止 笑 L_ ヽ〈    i|          Vi゙、
ハ ワ  {.     ヽ.  -、、、、 '  ノ  ま い  了゙, ,ヽ===-'゙ ,'     ,   // ヽ
ハ ハ   ヽ.     ハ       )  ら が  |  ',.' ,  ̄ , '    ノ  /./    ヽ,
ハ ハ    >  /|ヽヽ、___,,,,、 'く  ん    > ヽ.  ̄´   / ,、 ' /     / \
ハ ハ   /  ノ. | ヽ       フ      /  ノ:lゝt-,-‐''" / ,.ィ゙     /

4デフォルトの名無しさん:2007/02/18(日) 17:36:30
                    ,/.゙゙゙ ゙.";;ヽゞ゙''-、、、     ,..-'"´ ̄\
                     /___, -一ァソ;ゞ-;:ii>;,,,,,゙ 、   _」  ,/´   ヽ
                ,-‐¬  ̄---┘'7ノ"     ヾミ! <. `i´  ,.-''´   ヽ
          , -‐ ''"  し' '´_ /,ィ!ヘー'       iミ;! `r‐ヘ. 〈   ,.-''" ヽ
       ,r/      __   ,イソ           iミ;! ヽ `''ヽ_〈 r┬  |
      / ||ヽ  -'     / ̄ ) ,.==、、_  ,__,,,..、、、 i;;リ   ヽ、__ゝ-'  ノ >>1乙であります!
    ,r '   ヾ、  ,-、____ , ノiト´  _ィェァ了 (ェoヮ、 /!7    /       /
  / ヽ    `ー−ソ     Yl.|    ´!| |!`    ! ! }   /      /
. /    \_   /        レl    /u__,ゝ    i:l‐'  /       /
         ̄/             li  / _二' _、〉  i l   /      /
        /           ヽ   ´  ̄  `  i/  ,/ゝ____/
      /            __/\ゝ、   ,  ノ/ト、\:./井井井井;;/
     /            J |:井\ー --''"/井ヽ ヽ井井井井/
      ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|::|. |井井\  . /井井 | |井井井;;:/
\___________):| |井井井\/井井井| |井井井/
                /::| |井井 井井 井井井| |井井/
               / 井| |井井,ノー-'-ー---‐'--'ー'´
             /井井 | |井/
           /\井井 .| |;;'"
          /     \井.|::/
          |     \<
           ヽ       \
            `ヽ、      \_
                `ヽ、      !
                  `ヽ、   ノ
                     )  (
                 _ _ _ノ   )
                (_(_(_(_(_ノ
5デフォルトの名無しさん:2007/02/18(日) 17:37:35
      ☆ チン     マチクタビレタ〜
                        マチクタビレタ〜
       ☆ チン  〃  ∧_∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
        ヽ ___\(\・∀・) < 新スレまだ〜?
            \_/⊂ ⊂_ )   \_____________
          / ̄ ̄ ̄ ̄ ̄ ̄ /|
       | ̄ ̄ ̄ ̄ ̄ ̄ ̄|  |
       |   D B    |/

6デフォルトの名無しさん:2007/02/18(日) 17:57:16
     ∧_∧
ピュ.ー (  ^3^) <エェー これからも僕を応援して下さいNE(^3^)。
  =〔~∪java~〕
  = ◎――◎                      山崎&サン

7デフォルトの名無しさん:2007/02/18(日) 18:34:58
DBパフォ厨UZEEEEEEEEEEEEEE!!!!!!!!!!!!!!!!!
8デフォルトの名無しさん:2007/02/18(日) 18:52:18
エロい人、面白いソースあpして!
9デフォルトの名無しさん:2007/02/18(日) 19:00:07
              クソスレか!

       / ̄ ̄ ̄\   ミ  ,、 ____
     /    _ノ   \     // _ノ   ヽ_\
.     |     ( ●)(●)  /っ( >)  (<)\
      |  ,. ヽ  (__人__)_/ /:::::⌒(__人__)⌒::::: \ ←>>1
.      | / /   ` ⌒´ノ__ノ    |r┬-/     |
       / /         }   ノ      ` ̄'´      ノ、
      〈 <        }__//|             /\\__
        iヽヽ.__,、    /=u'  ヽ         ノ  `u=
      ヽ.ヽ  < __ノ       \ __ /
       `ヽ\_>、         //   \\
         ) ) ))        \\   //
         (´  ̄`ヽ`ヽ     / ̄  )  (   ̄\
         ̄ ̄ ̄  ̄      ̄ ̄ ̄    ̄ ̄ ̄
10デフォルトの名無しさん:2007/02/18(日) 19:09:16
会社の研修で課題を出されており、困っています。
どなたか、教えていただけると有難いです。

[課題]
入力した整数値をもとに1から入力した値の合計を求めて出力するプログラムを作成

*整数値以外(文字含)を入力した場合はメッセージを出力し、再度、整数値の入力を求めること。
*合計の出力の後に処理を終了するかメッセージを表示し、入力を求めること。
(「1」が入力されたら処理を終了し、「1」以外が入力されたら再度、整数値の入力を求めること。)
*入力される整数値は、6ケタまでとする。それ以上は、エラーメッセージを表示し、再度入力を求めること。

という上記課題を、会社の研修で渡されました。
try〜catchを使わず、mainメソッドのみでソースをつくることは可能でしょうか?
私、Javaの研修を始めて2週間程度でして、全然わかっていません・・・。
何をどうすればどうなるかも良く分からないので、出来れば詳しい解説等教えていただけると幸いです。
宜しく御願いします。

11デフォルトの名無しさん:2007/02/18(日) 19:13:42
>>10
しつこいって。
12デフォルトの名無しさん:2007/02/18(日) 19:15:22
>>10
> 会社の研修で課題を出されており、困っています。

お願いだから就職辞退してください。
13デフォルトの名無しさん:2007/02/18(日) 19:17:53
              マルチか!

       / ̄ ̄ ̄\   ミ  ,、 ____
     /    _ノ   \     // _ノ   ヽ_\
.     |     ( ●)(●)  /っ( >)  (<)\
      |  ,. ヽ  (__人__)_/ /:::::⌒(__人__)⌒::::: \ ←>>10
.      | / /   ` ⌒´ノ__ノ    |r┬-/     |
       / /         }   ノ      ` ̄'´      ノ、
      〈 <        }__//|             /\\__
        iヽヽ.__,、    /=u'  ヽ         ノ  `u=
      ヽ.ヽ  < __ノ       \ __ /
       `ヽ\_>、         //   \\
         ) ) ))        \\   //
         (´  ̄`ヽ`ヽ     / ̄  )  (   ̄\
14デフォルトの名無しさん:2007/02/18(日) 19:49:55
>>10
>try〜catchを使わず、mainメソッドのみでソースをつくることは可能でしょうか?

可能。
15デフォルトの名無しさん:2007/02/18(日) 19:58:03
コンパイルが通るかどうかまでみとらん。
あとは自分で考えれ。
main()
{
int i = 1;
int add = 0;
int xxx = 0; // 任意入力値は自分で考えろ

for ( i = 1 ; i < xxx ; i++ )
{
add = add + i;
}

// ここでadd変数を出力
// 出力方法も自分で調べろ
}
16デフォルトの名無しさん:2007/02/18(日) 20:05:29
正規表現でマッチさせて、Integer.parseInt で良いような希ガス。throws 使えば OK。
17デフォルトの名無しさん:2007/02/18(日) 20:07:13
そのレベルはまだ無理だろな
18デフォルトの名無しさん:2007/02/18(日) 21:22:32
初めてJavaを勉強するのですが、JDK1.5と1.6では、やはり最新の1.6を入れるべきですか?

本屋でざっと見た感じではまだ1.6についての本があまりなく1.5が中心なのですが。
19デフォルトの名無しさん:2007/02/18(日) 21:27:43
iアプリを作っているんですが、ソースをアップロードしてわからない行などを
指定すればご解答いただけますでしょうか?
20デフォルトの名無しさん:2007/02/18(日) 21:31:12
>>19
まかせろ
21デフォルトの名無しさん:2007/02/18(日) 21:36:23
>>19
こっちの方が相応しいかも
http://pc10.2ch.net/test/read.cgi/tech/1164168601/l50
2219:2007/02/18(日) 21:39:50
ありがとうございます。お願いします。

http://www.rupan.net/uploader/download/1171802118.zip

です。

まず1点目は、EnemyBoxクラスを10個配列で作っていまして、
Setting関数で初期配置を決め、Move関数で動かしていますが、
10個作っているにもかかわらず、一つしか出ません。
もしくは、10個全部同じ所に出ているのかもしれませんが。

自分は実はJAVAが苦手でして、見苦しいコードになっているかと思われますが、
よろしくお願いします。
2319:2007/02/18(日) 21:41:22
あ、そうですか?
どうしましょう。
20番さんと21番さんは同じ方でしょうか?
もし違う方で20番さんもそうおっしゃるならそういたします。
2419:2007/02/18(日) 21:45:32
なんだか上手くダウンロードできないので別のところで・・。
http://read.kir.jp/file/read67342.zip
25デフォルトの名無しさん:2007/02/18(日) 22:00:33
HelloUniverse.javaっていうファイルを起動させたいのですが、(SunMicroSystemsのオープンソース)
j2sdkとjava3Dをインストールしても起動しません。
他に何か必要でしょうか?
(XP SP2使用です)
26デフォルトの名無しさん:2007/02/18(日) 22:31:43
>>25
貴方が行った起動手順は?
2719:2007/02/18(日) 22:39:11
誘導されたほうで新たに質問してきます。
こちらでの質問は終了します。
ありがとうございました。
28デフォルトの名無しさん:2007/02/18(日) 22:51:03
>>25
echo %PATH%をここに貼り付けろ
29デフォルトの名無しさん:2007/02/18(日) 22:51:55
Javaで作られたアプリケーションソフトウェアは
LimeWireとオラクルのインストーラー以外で何があるのでしょうか?
30デフォルトの名無しさん:2007/02/18(日) 22:55:54
>>29
えぷちゃん^^
31デフォルトの名無しさん:2007/02/18(日) 22:57:14
     ∧_∧
ピュ.ー (  ^3^) <エェー これからも僕を応援して下さいNE(^3^)。
  =〔~∪java~〕
  = ◎――◎                      java&サン
32デフォルトの名無しさん:2007/02/18(日) 23:15:30
コンパイル時に、JDBCで使用しているSQLの構文チェックをかけることができる
LIBなりjarありませんか??
33デフォルトの名無しさん:2007/02/18(日) 23:22:05
コンパイル時ってjavacに食わせたときってこと?
ライブラリが登場するタイミングじゃないと思うが。
34デフォルトの名無しさん:2007/02/18(日) 23:23:54
これはまたバカな人が現れました
35デフォルトの名無しさん:2007/02/18(日) 23:28:29
>>26
eclipse3.2です

>>28
すみません、意味がわかりません orz
36デフォルトの名無しさん:2007/02/18(日) 23:34:06
なんだってー(AA略
37デフォルトの名無しさん:2007/02/18(日) 23:34:51
javaで書かれたSQL構文チェッカーということです。
38デフォルトの名無しさん:2007/02/18(日) 23:45:41
>>29
Tomcat
39デフォルトの名無しさん:2007/02/18(日) 23:48:15
>>32
EclipseのプラグインQuantumDBによるSQLエディタによるチェックはどうですか?
http://www63.tok2.com/home2/jd4/eclipseQuantumDBplugin.html

つか、SQLは拡張子SQLで保存して
専用のツールでチェックした方がいいんでない?


それと、もう一ついいのがある。テスティングフレームワークJUnitを
拡張子して使うDBUnit。これでSQL構文が正しく実行されたかどうかをチェックできる。
http://muimi.com/j/test/dbunit/

それに、このDBUnit、Eclipseのプラグインもある。

40デフォルトの名無しさん:2007/02/18(日) 23:49:22
>>35
Eclipseを使っているならecho %PATH%はいらないな。

だが、Eclipse上でプログラムを起動したのか、
それとも、コマンドプロンプト上で起動したのかはっきりしないことでは
回答しづらい。
41デフォルトの名無しさん:2007/02/18(日) 23:58:27
>>38
ワロタ
42デフォルトの名無しさん:2007/02/19(月) 00:29:29
>>40
あ、すみません。
eclipse上で実行しようとしています
43デフォルトの名無しさん:2007/02/19(月) 00:35:39
Java3Dをインストールしているならなぜそのライブラリをパスに通さない!
44デフォルトの名無しさん:2007/02/19(月) 00:57:18
Java初心者ではありませんが、ム板初心者というとこで御容赦を。
どーもJ2EEのWebアプリのチューニングをやらされるらしいのだが、JMater関連の書籍とかありませんかね?
いちおー、今は無きJavaWorldの2005/12と2006/10、JavaPressのVol.43とWEB+DB PRESSのVol.34は抑えてありますが、これ一通り読んであとはドキュメント読んで手を動かすのが一番でしょうかね?

アプリケーションのアーキテクチャに関しては、大体ドコを弄ればいいかは検討ついてるんだけどね。ちゃんとベンチマークとって性能評価したことは無いんですよ(^^;
45デフォルトの名無しさん:2007/02/19(月) 01:00:57
>>44
JMeterね。古い本なら、技術評論社だったかな、雑誌タイプの本で
Jakarta Projectっていう本に載ってたと思う。
46デフォルトの名無しさん:2007/02/19(月) 02:46:18
perl内でJAVAを使うにはJavaというCPANモジュールを使えば使えるのですが
JAVA内でperlを使うにはどうやればいいでしょうか?
47デフォルトの名無しさん:2007/02/19(月) 02:56:26
>>45
typoスマソ(^^;
だいぶ古いなぁ……3年くらい前の本?(^^;
買った覚えはあるんだけど、何処にしまったかな?
まずは探してみますが、一冊の本として纏まった形ではなさそうですね。
あのあとAmazonでも探したのですが、やはりなさそうです。
48デフォルトの名無しさん:2007/02/19(月) 09:31:59
>>46
外部コマンドとしてPerlスクリプトを呼び出したいのか、
Perlで定義したサブルーティンやパッケージを直に使いたいのか、
どっちだ。
49デフォルトの名無しさん:2007/02/19(月) 15:15:46
JWindowをフルスクリーンで表示
「alt」+「tab」で切り替えて他のアプリを表示
「alt」+「tab」で切り替えてJWindowをフルスクリーンに復旧
この復旧した時のイベントを拾いたいのですが
どうやって拾えばいいのかがよく分かりません。

FocusListenerのfocusGainedではなさそうだし・・・。
50デフォルトの名無しさん:2007/02/19(月) 15:18:45
>>49
試してないけど、WindowStateEventは来ない?
51デフォルトの名無しさん:2007/02/19(月) 15:20:01
あああ、WindowEventのWINDOW_ACTIVATED とか、_DEICONIFIED
あたりかもー。
試して報告よろしくー。
52デフォルトの名無しさん:2007/02/19(月) 15:20:01
>>49
WindowListener の windowActivated
5349:2007/02/19(月) 15:35:42
まだ事象をまとめきれてはいないのですが
JWindowでnew JWindow(Frame owner)のコンストラクタを使用しています
JWindowにWindowListener,WindowFocusListener, WindowStateListenerを実装して実行したところイベントは何も拾えず・・・。
コンストラクタで渡したFrame ownerにもWindowListener,WindowFocusListener, WindowStateListenerを実装したところ
Frame owner側で
windowStateChanged
windowGainedFocus
windowStateChanged
windowLostFocus
の順に呼ばれるという結果になりました。
ありがとうございました。
もう少しソースを見直して理解を深めます。
54デフォルトの名無しさん:2007/02/19(月) 15:58:01
     ∧_∧
ピュ.ー (  ^3^) <エェー これからも僕を応援して下さいね(^3^)。
  =〔~∪java~〕
  = ◎――◎                      java&サン

55デフォルトの名無しさん:2007/02/19(月) 16:16:37
>>47
そんなにむずいかあれ?

とりあえず使ってみなよ。

そっから判断すべき
5644:2007/02/19(月) 16:34:07
>>55
らぢゃ。まぁ、とりあえず動かすなら、Windows+Tomcat単体でもいいんだしね。
まずは動かしてみまする。
57デフォルトの名無しさん:2007/02/19(月) 16:58:00
>>49
ComponentEventは?
58デフォルトの名無しさん:2007/02/19(月) 17:08:49
>>56
あれってマウスで簡単に扱えるソフトウェアだったと思うけどな。
59デフォルトの名無しさん:2007/02/19(月) 17:17:47
>>49
ActionEventは?
60デフォルトの名無しさん:2007/02/19(月) 17:18:26
>>49
AdjustmentEventは?

61デフォルトの名無しさん:2007/02/19(月) 17:19:11
>>49
ContainerEventは?
62デフォルトの名無しさん:2007/02/19(月) 19:13:05
Classにある変数と値の一覧を取得したいのですが、どうやればできるのでしょうか?

public class dataClass {

private String valueA;
private int valueB;

public String getValueA() {
return valueA;
}
public void setValueA(String valA) {
this.valueA = valA;
}

valueBのSet/Get

}

Eclipseの変数見たいな感じで取得できないものかと悩んでいます。
ご存知の方が居られましたら、御教授のほどよろしくお願いします。
63デフォルトの名無しさん:2007/02/19(月) 19:15:52
64デフォルトの名無しさん:2007/02/19(月) 20:28:06
テキストファイルを参照して、その中にある一定の文字列がある場合に
なにか処理を行うにはどうすればいいのでしょうか?

ファイルから文字列を探す方法が分からなくて悩んでいます
65デフォルトの名無しさん:2007/02/19(月) 20:32:51
ファイルの最後に到達するまで、1行ずつ文字列に読む。
66デフォルトの名無しさん:2007/02/19(月) 20:34:25
>>65
ということはBufferedReaderを使えばいいんでしょうか?
67デフォルトの名無しさん:2007/02/19(月) 20:46:10
原理的にはそういうこと。

対象テキストが、フォーマットの定まった設定ファイルのたぐいなら、
作業を簡略化する何らかのライブラリがあるかもしれないけど。
68デフォルトの名無しさん:2007/02/19(月) 20:52:24
JRE 5.0 Update 11をWindows XPにインストールしようとすると、
「変換するときにエラーが発生しました。
指定された変換のパスが有効であることを確認してください。」
と言われてインストールできません。

http://www.java.com/ja/download/help/error_applying_transforms.xml
にある解決策の1番目は試しましたが、解決しませんでした。
2番目はJRE 5.0の場合はどこをどう変えればいいのかわからず、試してません。

ちなみにUpdate 10は正常にインストールできます。
69デフォルトの名無しさん:2007/02/19(月) 21:30:59
2番目は要はコマンドラインでダウンロード&インストールしてるだけだな。

http://java.sun.com/j2se/1.5.0/ja/download.html
こっちから落としてクリーンインストールしてみるとか。

70デフォルトの名無しさん:2007/02/19(月) 22:00:29
JDK6のweeklyビルドで出てた問題だね。
そのときは、ロケールの問題だったはず。

インストーラに引数を渡して解決できたはずだけど・・・
というか、JDKを試してみるというのは?
71デフォルトの名無しさん:2007/02/19(月) 22:00:30
>>63
あからさまにわざとまわりくどいことを教え込んで
>>62を苛めるところが凄いなw
72デフォルトの名無しさん:2007/02/19(月) 22:01:04
>>67
分かりました
教えていただきありがとうございます
73デフォルトの名無しさん:2007/02/19(月) 22:02:20
Jakarta Commons I/Oを使いたくなってくるねえ
74デフォルトの名無しさん:2007/02/19(月) 23:19:52
ArrayListやHashMapをnewする時に、ArrayList list = new ArrayList(); ではなく、
List list = new ArrayList(); というようにインターフェースで宣言するのは何故なのでしょうか?

メソッドの引数ならば分かるのですが、ローカル変数でやる意味が感じられません。
何か違いが分かる良い例は無いでしょうか?
75デフォルトの名無しさん:2007/02/19(月) 23:38:38
>>74
ArrayListで組んで見たが、結局remove多用するので遅くて仕方がない
という状況になった時、Listで宣言していれば、この行を
List list = new LinkedList();
とするだけで改良できる訳で
76デフォルトの名無しさん:2007/02/19(月) 23:47:37
すいません・・・他の板で質問したら誰も答えてくれず、このスレで聞けば天才多いから教えてくれるって聞いてやってきますた。
ほんと素人でくだらない質問なんですけど質問していいですか?
77デフォルトの名無しさん:2007/02/20(火) 00:03:43
>>76
ここでも答えが得られないかもしれないけど、どーぞ。
断り入れずに最初から書いてれば1回で済んだのに。
78デフォルトの名無しさん:2007/02/20(火) 00:08:07
>>77
ありがとうございまつ( ;∀;)
いや、あまりにも初心者で低レベル質問しにくくて・・・。

カレンダーオブジェクト.gettime()ってやるとそのカレンダーオブジェクトにセットされた値でDateオブジェクト生成されるんでしょうか?


79デフォルトの名無しさん:2007/02/20(火) 00:14:09
>>78

  小 面 童  /   ,、r'";;;;;;;;;;;;;;;;;;;;;;;;;;;;;`';,、    ,r';;r"           _ノ
  わ が 貞  L_ /;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\ ,';;/             )     何
  っ .許 が  //;;/´         `' 、;;;;;;;;,,l;;'            /ヽ  と と
  ぱ さ.    /.,';/              ヽ;;;;,l;L_      .,,、,--ュ、 ';;;;;;;;;i な 童
  ま れ   l |;|┌--‐フ  ┌----、、   |;ヾr''‐ヽ,  ,、ィ'r-‐''''''‐ヽ ';;;;;;く !! 貞
  で る   i  |l ~~__´ 、   ``'__''''┘  |;;;;;l rO:、;  ´ ィ○ヽ    'i;;;;;厶,
  じ の   l _|. <,,O,> 〉   <,,O,,>    |;;;;;| `'''"/   `'''''"´     !;;;;;;;;ヽ
  ゃ は   ._ゝ'|.    /   、       |; ,'  /   、        |;;;;;;;;;;;;;レ、⌒Y⌒ヽ
  ぞ    「 | |    (    )       .ソ l  ,:'   _ ヽ       .|;;;;;;;//-'ノ
        ヽヽ |    _,ニ ニ,,,,,_        ', ゞ,' '"'` '"       i;;;;;i, `' /
⌒レ'⌒ヽ厂 ̄  `| ,、ィ-‐''__'''‐-`,、     ''  ', i、-----.、       `''"i`'''l
人_,、ノL_,iノ!   ',   :i゙''''''''''`l'  ` _人__人ノ_ヽ ヾ゙゙゙゙ニニ'\        ,'  ト、,
      /    ヽ.   L__」   「 止 笑 L_ ヽ〈    i|          Vi゙、
ハ ワ  {.     ヽ.  -、、、、 '  ノ  ま い  了゙, ,ヽ===-'゙ ,'     ,   // ヽ
ハ ハ   ヽ.     ハ       )  ら が  |  ',.' ,  ̄ , '    ノ  /./    ヽ,
ハ ハ    >  /|ヽヽ、___,,,,、 'く  ん    > ヽ.  ̄´   / ,、 ' /     / \
ハ ハ   /  ノ. | ヽ       フ      /  ノ:lゝt-,-‐''" / ,.ィ゙     /


80デフォルトの名無しさん:2007/02/20(火) 00:42:08
>>78
getTime()な。
APIリファレンスにもそう書いてあるし、
Calendar c = Calendar.getInstance();
c.set(2015, 1, 20, 0, 0, 0);
System.out.println(c.getTime().getClass() + ":" + c.getTime());
みたいなテストプログラム書けばすぐ分かることじゃないか。
初心者だからこそ、ちょっとした疑問は面倒がらずテストプログラムを自分で書いて確かめるんだ。
81デフォルトの名無しさん:2007/02/20(火) 00:44:13
>>74-75
用途はそんなもんじゃないな。

メソッド抽出というリファクタリングを
するとき、あとからListのところがメソッドの引数に
なるかもしれんだろう。そういうときにも役立つ。

わかってるかもしれないけど、これも見るといい。
http://javafaq.jp/S014.html#S014-01

ほかにもメリットとしては、何かのときに、ListからArrayListへと
ダウンキャストする必要がないということだね。

どれもこれもリファクタリングやコード拡張、訂正のときに
大きな意味をもつ、だから、よって型はArrayListではなく、Listのほうがいいということ。
「インタフェースに対してプログラミングをする」という言葉の意味もそこにある。

82デフォルトの名無しさん:2007/02/20(火) 00:46:55
>>78
Dateというのは、java.util.Dateとjava.sql.Dateのどっちのことかな?

前者のDateはお勧めしないな。
83デフォルトの名無しさん:2007/02/20(火) 00:47:08
Calendarインスタンスは内部的に「とある時」を保持している。
その「とある時」を暦法に従って進めたり戻したりして変化させ、
変化した結果を得る日付計算機だと思うといい。
84デフォルトの名無しさん:2007/02/20(火) 00:48:54
>>81
いや、俺もそうは思ってるんだが
>>74はローカル変数に限定して言っている。
俺もローカル変数ならどっちでもいいかなと思う。
どこにも渡さないならArrayListのほうがわかりやすい気が。
85デフォルトの名無しさん:2007/02/20(火) 00:50:34
だがコードを分割するときに備えて(ry
86デフォルトの名無しさん:2007/02/20(火) 00:50:50
>>82
あんたがお勧めじゃなくても標準のクラスライブラリのCalendar#getTime()はjava.util.Dateしか返さん
87デフォルトの名無しさん:2007/02/20(火) 01:08:05
>>82
           ,, -──- 、._ 
        .-"´         \. 
        :/   _ノ    ヽ、_ ヽ.:
        :/  o゚((●))  ((●))゚oヽ:
      :|       (__人__)    |: 
      :l        )  (      l:
      :` 、       `ー'     /:  
       :, -‐ (_).        /
       :l_j_j_j と)丶─‐┬.''´
          :ヽ   :i |:
             :/  :⊂ノ|:


88デフォルトの名無しさん:2007/02/20(火) 01:29:24
DQのモンスターみたいなAAだな…
89デフォルトの名無しさん:2007/02/20(火) 01:49:26
>>82
もう来るなよw
90デフォルトの名無しさん:2007/02/20(火) 02:43:39
>>74
おまいが作った高貴なビジネスロジックが
たかがListの実装クラスごときに依存するのは我慢ならないだろ
91デフォルトの名無しさん:2007/02/20(火) 03:11:03
詳細が全体に依存するのが、オブジェクト指向プログラミング
全体が詳細に依存するのが、構造化プログラミング
92デフォルトの名無しさん:2007/02/20(火) 06:16:15
>>62
値や変数のリスト?
既存クラスなら>>63とかになるかもだけど
自作クラスならHashmap使ってみるとか
93デフォルトの名無しさん:2007/02/20(火) 06:39:56
ある文字列から、
ファイル名には使えない文字(\ / : * 等)
を全て消す(""に変換する)にはどうしたらよいのでしょうか?
94デフォルトの名無しさん:2007/02/20(火) 09:36:41
使えない文字の集合が分かっているなら正規表現でreplaceAll
でいいんじゃない?

WindowsだといろいろあるけどMac(OSX)やUNIXでは / と NUL
以外の文字はすべて使える。

95デフォルトの名無しさん:2007/02/20(火) 09:49:22
ジャバって洗浄剤だよね。なにがプログラミングと関係あるのですか?教えて下り
96デフォルトの名無しさん:2007/02/20(火) 09:52:01
9762:2007/02/20(火) 14:36:23
>>63
レスありがとうございます。

参考にやってみたのですが、どうもprivateだと取得できないようです。
dataClassにgetVariableList()というメソッドをつくって取得したいのですが、

public String[] getVariableList(){

String[] rtn;

String[0] = "valueA=" + valueA;
String[1] = "valueB=" + valueB;

return rtn;
}

の様に書いていかなければならないのでしょうか?
変数が増えてもgetVariableList()を変更しないで良い方法はないものでしょうか?
98デフォルトの名無しさん:2007/02/20(火) 14:48:17
>>97
List<String> list = new ArrayList<String>();
for(Field field : this.getClass().getDeclaredFields()){
 list.add( field.getName() + "=" + field.get(this) );
}
return list.toArray(new String[list.size()]);

クラスフィールド抜かしたい場合は field.getModifiers() でなんとかする。
継承したフィールドを扱いたい場合は 親クラスまで辿れ。
99387:2007/02/20(火) 14:48:42
自分が作ったプログラムを、自分が作ったインターフェース上で動かすのは、
どのようにすればいいのでしょうか。
たとえば、System.out〜でコンソールに何か文字を表示させるプログラムを、
そのまま自分が作ったインターフェースに表示するように組み合わせるって
感じです。
なんか説明へたで申し訳ありませんが、よろしければ、意見等お願いします。
100デフォルトの名無しさん:2007/02/20(火) 14:52:47
> たとえば、System.out〜でコンソールに何か文字を表示させるプログラムを、
> そのまま自分が作ったインターフェースに表示するように組み合わせるって
> 感じです。

何が言いたいのかわからん。
101デフォルトの名無しさん:2007/02/20(火) 14:54:02
インターフェースっつーのは Java の interface のことなのか、UIのことなのか。
102387:2007/02/20(火) 14:56:39
ウィンドウです。
すいません変な言い方して。
103デフォルトの名無しさん:2007/02/20(火) 14:57:18
>意見等お願いします。
死ねばいいと思うよ
104デフォルトの名無しさん:2007/02/20(火) 15:03:48
>>102
Runtime.exec で実行して、getInputStream() やら
getErrorStream() やらから得たデータを TextArea に垂れ流す、って感じか?

System.out の出力を TextArea に垂れ流すようにしておいてから、
reflection で main 呼んでもいいけど、複数扱うのとかが面倒くさい。
105デフォルトの名無しさん:2007/02/20(火) 15:04:09
javaでマクロを作成しようと頑張ってるんだが
特定のウィンドウの座標を求めるにはどのようにすれば…
ご指南願います
106デフォルトの名無しさん:2007/02/20(火) 15:06:04
<pack>
L__ <pack_a>→ a.class
L__ <pack_b>→ b.class

質問です、上図のようなフォルダ構成で
<pack_a>フォルダのクラスaから
<pack_b>フォルダのクラスbをインポートさせたいのですが
それぞれ、package、inportの記述はどのようにすればよいのでしょうか?
107387:2007/02/20(火) 15:09:25
>>102

なるほど・・・
単純なものではなかったんですね・・・
勉強不足でした。
108デフォルトの名無しさん:2007/02/20(火) 15:17:26
>>99
コンソールに流すプログラムの方を修正する。
具体的には入出力部分を抽象化した、コアモジュールにしてしまう。
あとはそのモジュールを使うプログラムを二つ作る。
(画面から使う版とコンソールで使う版。)
109デフォルトの名無しさん:2007/02/20(火) 15:21:44
>>105
getLocation() もしくは getLocationOnScreen() じゃなくて?

>>106
package pack_a;
import pack_b.b;
110デフォルトの名無しさん:2007/02/20(火) 15:31:39
>>97
> >>63
> レスありがとうございます。
> 参考にやってみたのですが、どうもprivateだと取得できないようです。
ばか、getterメソッド作れば取得できるだろ。
valueBはgetterメソッドを作っていないから取得できないが。
111デフォルトの名無しさん:2007/02/20(火) 15:32:29
106です。
おっしゃるとおりにやりましたが
読み込んでくれませんでした。
この場合クラスa側もパッケージ宣言がいるのでしょうか?

クラスパスの設定とかも必要なのでしょうか?
112デフォルトの名無しさん:2007/02/20(火) 15:32:36
>>98
わざわざtoArray使うくらいなら

シグニチャをpublic List<String> getVariableLit()
にしたほうがいい
113デフォルトの名無しさん:2007/02/20(火) 15:32:02
質問です
コマンドプロンプトを起動&コマンドラインを引数として渡し
実行したいのですが、

try {
Runtime rt = Runtime.getRuntime();
rt.exec(cmd.exe);
} catch (IOException ex) {
ex.printStackTrace();
}
としてもコマンドプロンプトを起動できません。どうしてでしょうか?
114デフォルトの名無しさん:2007/02/20(火) 15:35:24
>>111
ためしにやってみればわかることだろう。
なぜ実行しない?
115デフォルトの名無しさん:2007/02/20(火) 15:35:56
>>113
起動できなかったときのメッセージには

何と書いてあった?
116デフォルトの名無しさん:2007/02/20(火) 15:37:36
>>111
パッケージ (Java言語)
http://ja.wikipedia.org/wiki/%E3%83%91%E3%83%83%E3%82%B1%E3%83%BC%E3%82%B8_(Java%E8%A8%80%E8%AA%9E)
117デフォルトの名無しさん:2007/02/20(火) 15:37:56
>>111
ちゃんとパッケージルートから javac しないと見つけてくれなかったような。

ひょっとして、
package pack.pack_a;
import pack.pack_b.b;
なんだろか?
118デフォルトの名無しさん:2007/02/20(火) 15:38:59
http://ja.wikipedia.org/wiki/パッケージ_(Java言語)

リンクURLが途中で途切れているぞ
119デフォルトの名無しさん:2007/02/20(火) 15:39:11
>114さん
>111ですが、ためしにとはどのようなことですか?
コンパイルしたら
パッケージ pack_b は存在しません。
というエラーがでました。
おねがいします。
120デフォルトの名無しさん:2007/02/20(火) 15:40:17
121113:2007/02/20(火) 15:41:15
>>115
何もメッセージが無く、何も起こりませんでした。
NotePad.exe は起動出来たので、NotePad.exe が置いてあるフォルダに
cmd.exeをコピーしてみたのですが、やはり何も起こりませんでした
122デフォルトの名無しさん:2007/02/20(火) 15:42:06
>>119
> >114さん
> >111ですが、ためしにとはどのようなことですか?

悪いが気にしないで呉。

>この場合クラスa側もパッケージ宣言がいるのでしょうか?

このことについて言いたかっただけ。

クラスパスには カレントディレクトリを意味する.(ドット)を入れているか?
もしいれていなければ試してみて
123デフォルトの名無しさん:2007/02/20(火) 15:43:21
>>119
プログラムを実行するとき、どのディレクトリで実行している?

packのひとつ上で実行しているか?
124デフォルトの名無しさん:2007/02/20(火) 15:44:14
>>121
おれのコマンドプロンプトでcmdと入力するとこう出力されるぞ。
こんなのとは違わないか?

>cmd
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
125デフォルトの名無しさん:2007/02/20(火) 15:44:50
>>113
つーかそれコンパイル通るのかよ。

rt.exec( "cmd.exe" );
126デフォルトの名無しさん:2007/02/20(火) 15:45:19
>>121
絶対パスを用いて、
%SystemRoot%\system32\cmd.exe
のようにしてみてはどうだろうか?
127デフォルトの名無しさん:2007/02/20(火) 15:46:00
>>113
IOExceptionだけでなくExceptionも最後にきゃっちしておこう
128デフォルトの名無しさん:2007/02/20(火) 15:48:18
投げやりな回答者が一人いる
129デフォルトの名無しさん:2007/02/20(火) 15:48:48
>>122
>>119です。
.はクラスパスに入っていました。
ソース見てください。
<class a>
package pack_a;
import pack_b.*;

public class a{

int a;
}
<class b>
package pack_b;

public class b{

System.out.println("クラスBです。");
}
130デフォルトの名無しさん:2007/02/20(火) 15:50:43
>>123
実行は<pack_a>
でやってます。
131デフォルトの名無しさん:2007/02/20(火) 15:51:44
>>129
なんだ、パッケージ名にpackが入ってないじゃないか。

ディレクトリ構成をもう一回確認すべき。

packディレクトリ上でプログラムを実行するならそれでもかまわないけど
packの親ディレクトリで実行するならエラーがでて当然
132デフォルトの名無しさん:2007/02/20(火) 15:52:37
>>130
ハイ駄目。却下。もしpack_aで実行したければ、クラスパスに../pack_aを
追加城って話になってしまう。いますぐに


cd ../../を実行しろ
133デフォルトの名無しさん:2007/02/20(火) 15:53:00
winでは/を\に変更するように
134デフォルトの名無しさん:2007/02/20(火) 15:57:38
>132
今回は<pack_a>内で実行をさせたいのですが、
その場合はクラスパスを../pack_a
にすればいいのですか?
いまからやってみます
135デフォルトの名無しさん:2007/02/20(火) 16:01:48
クラスパスに../packを設定しましたが
パッケージ pack_b は存在しません
となりました。
XPですから再起動はしなくてもいいんですよね?
ちなみに
<pack>は<pack_a><pack_b>の親になります。
136デフォルトの名無しさん:2007/02/20(火) 16:04:51
>>134
だからそれはお勧めしない。
もうそれ以上クラスパスを追加しないほうがいい。

クラスパスは ドット(.)だけにすべき。


だからディレクトリを移動しろ
137デフォルトの名無しさん:2007/02/20(火) 16:05:31
>>135
どこでクラスパスを設定しているのか?
コマンドプロンプト上でやってるのかそれとも他でやっているのか?


というかクラスパス設定するな。
ディレクトリ移動しろ
138デフォルトの名無しさん:2007/02/20(火) 16:05:47
>>129
> public class b{
> System.out.println("クラスBです。");
> }
コンパイルエラーだな。
139デフォルトの名無しさん:2007/02/20(火) 16:06:13
>>135
そうしたければパッケージ名を
pack_aではなく pack.pack_aと変えろ。
ついでにbのほうも
140デフォルトの名無しさん:2007/02/20(火) 16:07:00
>>138
そういえばそうだ、
コンパイルエラーがでているから見つからないと
言っているのかも知れないし。
141デフォルトの名無しさん:2007/02/20(火) 16:07:41
結論としては、<pack_a>からは
class bのインポートは不可なのですか?

クラスパスの設定はシステムのプロパティより
環境変数の設定項目よりやってます。
142デフォルトの名無しさん:2007/02/20(火) 16:09:16
>>141
キミには無理だったって事でFAにしたいんだが。
143デフォルトの名無しさん:2007/02/20(火) 16:14:00
パッケージなんて長くやってりゃ慣れるのになぜいまそこでハマる必要あるのか
144デフォルトの名無しさん:2007/02/20(火) 16:14:44
いや、普通の頭があれば、入門者でもハマったりしないから。
145デフォルトの名無しさん:2007/02/20(火) 16:19:31
eclipse なり netbeans なり使えよもう
146デフォルトの名無しさん:2007/02/20(火) 16:24:22
>>141
だからクラスパスは無視して人の話を聞いて、
ディレクトリを移動してから実行し直せと言っているんだよ。

147デフォルトの名無しさん:2007/02/20(火) 16:26:11
まったく、こういう融通が効かない奴は頭に来るな。

>>129
> package pack_a;
> import pack_b.*;

そもそここの時点で間違えているといっているのに

package pack.pack_a;
import pack.pack_b;

こう書き直せと何度言ったらわかる、このクソガキは。
148デフォルトの名無しさん:2007/02/20(火) 16:28:39
クラスパスを弄らなくても
ディレクトリを変えるだけで済むものを

コンパイルするときに、どうせクラスbもコンパイルしていないんだろ
その時点で終わってる。

そもそもclass aと class bとの間には一体どんな依存関係があるのか。
どちらかがどちらかのクラスをちゃんと参照しているとでもいうのか?
149デフォルトの名無しさん:2007/02/20(火) 16:31:01
>>147
やってみましたが
-------------------------------------
a.java:2: シンボルを見つけられません。
シンボル: クラス pack_b
場所 : pack の パッケージ
import pack.pack_b;
-------------------------------------
こうなります。

ディレクトリを移動させたらうまくいくのは
わかるのですが、
これを<pack_a>内で実行させたいんです。。。
150デフォルトの名無しさん:2007/02/20(火) 16:33:35
>>149
>ディレクトリを移動させたらうまくいくのは
>わかるのですが、

ほんとかよw

問題の切り分けの意味でディレクトリを移動してやってみろ
現状を総合すると移動してもたぶんうまくいかない

それが解決してからやりたいようにやったほうが早いね
151デフォルトの名無しさん:2007/02/20(火) 17:14:10
>>149
ディレクトリ移動方法わかっているのか?

「カレントディレクトリ」の意味わかってるか?
cdコマンドがどういうものかわかっているか?
..(ドット二つ)や.(ドット)の意味わかってるか?
152デフォルトの名無しさん:2007/02/20(火) 17:15:56
>>149
なぜpack_a(正確にはパッケージ名はpack.pack_a)で実行させたいことに拘るのか理解できない。
mainメソッドを持ったクラスがそのパッケージ内にあるというならわかるが。



とりあえず、ディレクトリ移動についてはコマンドプロンプトで

cd


と入力して

エンターして
その内容をここに貼り付けてみろ。
153デフォルトの名無しさん:2007/02/20(火) 17:26:26
諦めろ
106は他人の言葉に聞いて理解する適性を欠いている
こんな詰まらないことで何時間やり取りしてんだ
154デフォルトの名無しさん:2007/02/20(火) 17:47:44
まわりくどいこと言ってないで早く解決策を教えてください。
155デフォルトの名無しさん:2007/02/20(火) 18:32:01
何を考えているのかはっきりしないやつにいわれてもな
156デフォルトの名無しさん:2007/02/20(火) 20:07:51
かなり基礎的な質問だと思いますが、すみません
今file.txtを読み込んで、abcという文字列があればそれを表示する、
というものを作っているのですが、どうにも上手くいきません。
どなたか間違いを指摘してください

import java.io.*;

class BufferedReaderTest {
public static void main(String[] args) {
try {
FileReader in = new FileReader("file.txt");
BufferedReader br = new BufferedReader(in);
String line;
while (line == "abc") {
System.out.println(line);
}
br.close();
in.close();
} catch (IOException e) {
System.out.println(e);
}
}
}
157デフォルトの名無しさん:2007/02/20(火) 20:14:18
それじゃあ1行目がabcじゃなかったら終了するじゃんか

while( ( line=br.readLine() ) != null ){
  if( line.indexOf( "abc" ) > -1 ) {
    System.out.println(line);
  }
}
158デフォルトの名無しさん:2007/02/20(火) 20:23:38
そのコードだと1行も読んでないし、lineが初期化されないから
コンパイル通らない。
159デフォルトの名無しさん:2007/02/20(火) 20:35:04
JavaScriptには、以下のように置き換え処理の途中でマッチした文字(文字列)を
次々と拾い、各自処理する方法があるのですが、同様の処理はJAVAでも
可能でしょうか。

function test1(str1){

return str1.replace(/[abc]/g,test2);

}

function test2(str2){

if(str2=="a") return "{"+str2+"}";
if(str2=="b") return "("+str2+")";
else return "["+str2+"]";

}

alert(test1("qwertyuiopasdfghjklzxcvbnm"));
160156:2007/02/20(火) 20:37:10
>>157,158
ありがとうございます
やっぱり基本的なことができてませんね・・・
またしっかりと学んでみます
161デフォルトの名無しさん:2007/02/20(火) 20:42:46
>>159
可能。
162デフォルトの名無しさん:2007/02/20(火) 20:46:27
>>159
とりあえずString型のAPI仕様読んでもっと複雑なことがやりたかったらjava.util.regexを見ろ
163デフォルトの名無しさん:2007/02/20(火) 21:09:31
すいません。クラスパスが通ってません。
ありがとうございます。
164デフォルトの名無しさん:2007/02/20(火) 21:31:18
質問です。
String 型の変数に以下の文字列がはいっています。
C:\Documents and Settings\Administrator\workspace\dat.xml
dat.xml の部分を削除したいのですがどのようにしたらよいでしょうか。
165デフォルトの名無しさん:2007/02/20(火) 21:35:53
>>164
String s="C:\Documents and Settings\Administrator\workspace"
166164:2007/02/20(火) 21:39:16
>>165
ファイルパスが毎回固定では無いのでその方法は出来ないです
167デフォルトの名無しさん:2007/02/20(火) 21:41:09
>>166
dat.xml は固定なのか?
168デフォルトの名無しさん:2007/02/20(火) 21:42:09
じゃFileにしてディレクトリ名とれよハゲ
169164:2007/02/20(火) 21:42:27
>>167
固定じゃないです。
170デフォルトの名無しさん:2007/02/20(火) 21:43:28
たぶん、>>168 がやりたいことなんだろうなぁ・・・
171デフォルトの名無しさん:2007/02/20(火) 21:43:42
質問小出しにすんなやハゲ
172デフォルトの名無しさん:2007/02/20(火) 21:44:31
この馬鹿質問者め!
173164:2007/02/20(火) 21:46:16
自己解決しました!
174デフォルトの名無しさん:2007/02/20(火) 21:50:33
>>168を参考にした場合も自己解決っていうのか?
175164:2007/02/20(火) 22:04:53
参考にしてませんが何か?
>>168=>>174.自演は見苦しいですよw
176デフォルトの名無しさん:2007/02/20(火) 22:05:46
>>150ですが、解決しました。"$0"ですか。
ありがとうございました。
177デフォルトの名無しさん:2007/02/20(火) 22:06:07
じゃあどう解決したかソース貼ってみろよw
178164:2007/02/20(火) 22:07:20
本当に初心者なので、168を読んでメソッドを調べ
ようやく解決しました。ありがとうございました。
179デフォルトの名無しさん:2007/02/20(火) 22:07:38
>>176

>>150じゃなくて>>159の間違いです。訂正します。
18068:2007/02/20(火) 22:19:24
>>69 のリンク先からたどってjre-1_5_0_11-windows-i586-p.exe
(jre-1_5_0_11-windows-i586-p-s.exeではない)をダウンロードして実行
したらうまくインストールできました。
ありがとうございました。
181デフォルトの名無しさん:2007/02/20(火) 22:22:23
やさしいJAVAの次におススメな本教えて
182デフォルトの名無しさん:2007/02/20(火) 22:34:04
Effective Java
183デフォルトの名無しさん:2007/02/20(火) 23:44:47
質問させてください。
特定のサイズのデータが入っていない(?)ファイルを作る方法はありますでしょうか?
XPでいう「fsutil file createnew ファイルパス サイズ」です。
よろしくお願いします。
184デフォルトの名無しさん:2007/02/20(火) 23:59:20
先程までコンパイル出来ていたファイルが、
突然コンパイル出来なくなってしまいました。
コンパイル済みのclassファイルをjadを使って逆コンパイルし、
それを再びコンパイルしようとしても、
「シンボルを見つけられません。」と出て全く作業ができません。どうしたらいいのでしょう?
185デフォルトの名無しさん:2007/02/21(水) 00:11:54
>>183
Windows特有のブツをWindows以外のOSでも利用可能はJavaに
期待することは間違ってる。

どうしてもやりたければRuntimeクラスを使え
186デフォルトの名無しさん:2007/02/21(水) 00:12:55
>>184
絶対にお前のやり方が悪い。
パス間違えてるだろ。
さっきのパッケージがどうこうと質問してる奴と同じ。
187デフォルトの名無しさん:2007/02/21(水) 00:13:33
>>183
http://www.microsoft.com/technet/prodtechnol/windowsserver2003/ja/library/ServerHelp/3dd141a8-57b8-4bd8-81dd-69c515fd059f.mspx?mfr=true
createnew
指定した名前とサイズのファイルを作成します。内容はゼロで構成されます。
普通にStreamで0書き込んどけハゲ
188185:2007/02/21(水) 00:18:50
自己解決しました!
189デフォルトの名無しさん:2007/02/21(水) 00:19:20
ひたすらゼロで埋まってるということはsparseファイルでなくてもいいのか。

190デフォルトの名無しさん:2007/02/21(水) 00:34:44
>>188
???
191184:2007/02/21(水) 00:55:19
javaの入門系サイトにあったプログラムです

ファイル名:BufferedReaderTest.java

import java.io.*;

class BufferedReaderTest {
public static void main(String[] args) {
try {
FileReader in = new FileReader("file.txt");
BufferedReader br = new BufferedReader(in);
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br.close();
in.close();
} catch (IOException e) {
System.out.println(e);
}
}
}

これでも「シンボルを見つけられません。」と出て全く作業が出来ません。
ファイルは C:\java の中にあり、コマンドプロンプトにも C:\java> と出ています。
192デフォルトの名無しさん:2007/02/21(水) 01:15:07
みつかんないシンボルは何行目の何?
大抵は綴りミス。
193デフォルトの名無しさん:2007/02/21(水) 01:20:05
>>191
JDKを再インストールしてください
194184:2007/02/21(水) 01:20:10
>>192
BufferedReaderTest.java:7: シンボルを見つけられません。
シンボル: コンストラクタ BufferedReader(java.io.FileReader)
場所 : BufferedReader の クラス
BufferedReader br = new BufferedReader(in);
^
BufferedReaderTest.java:9: シンボルを見つけられません。
シンボル: メソッド readLine()
場所 : BufferedReader の クラス
while ((line = br.readLine()) != null) {
^
BufferedReaderTest.java:12: シンボルを見つけられません。
シンボル: メソッド close()
場所 : BufferedReader の クラス
br.close();
^
.\BufferedReader.java:7: シンボルを見つけられません。
シンボル: コンストラクタ BufferedReader(java.io.FileReader)
場所 : BufferedReader の クラス
BufferedReader br = new BufferedReader(in);
^
.\BufferedReader.java:9: シンボルを見つけられません。
シンボル: メソッド readLine()
場所 : BufferedReader の クラス
while ((line = br.readLine()) != null) {
^
.\BufferedReader.java:13: シンボルを見つけられません。
シンボル: メソッド close()
場所 : BufferedReader の クラス
br.close();
^
というように出ます。数時間前まではうまく言ったんですが・・・
195デフォルトの名無しさん:2007/02/21(水) 01:30:17
>>194
PCも疲れてるんだよ。PCをリブートしろ。
それでも直らなければJDKを再インストール。
196デフォルトの名無しさん:2007/02/21(水) 01:32:52
>>194
ありがとうございます、わかりました
長々とした質問すみませんでした
197196:2007/02/21(水) 01:33:35
訂正
>>195です。ありがとうございました
198デフォルトの名無しさん:2007/02/21(水) 01:34:06
ちなみに191に貼られたコードをコピペしてコンパイルしたら
問題なくできた。

ReaderはJDK1.1以降だが、まさかJDK1.0だったりはしねーよな。
199デフォルトの名無しさん:2007/02/21(水) 01:48:49
>>198
エラーメッセージを見る限り、
FileReaderはちゃんとjava.ioパッケージだってことを認識してるので、
JDK1.0ではないと思うよ。FileReaderも1.1からだ。
なにかのはずみにJVM環境が狂ったんじゃないかい?
200デフォルトの名無しさん:2007/02/21(水) 01:52:14
>java -versiom
201デフォルトの名無しさん:2007/02/21(水) 01:52:38
ソースコードに全角文字
202デフォルトの名無しさん:2007/02/21(水) 01:53:36
クラスがpublicでない
203デフォルトの名無しさん:2007/02/21(水) 01:54:05
わかった。これだ。
> .\BufferedReader.java:7: シンボルを見つけられません。
BufferedReaderTest.javaじゃなくてBufferedReader.javaってファイルが作られてる。
たぶん、まちがって、BufferedReader.javaも作ったんだろう。
java.io.BufferedReaderじゃなくて、デフォルトパッケージのBufferedReaderを見てるからエラーに。
204デフォルトの名無しさん:2007/02/21(水) 01:55:13
java -versionヲ、ニュウリョクセヨ
205デフォルトの名無しさん:2007/02/21(水) 01:58:47
>>203
それだ。
206デフォルトの名無しさん:2007/02/21(水) 02:00:34
単にBufferedReaderTest.javaをBufferedReader.javaにコピーしただけでは>>194は再現しない。
わざわざ、BufferedReader.javaの方のクラス名をBufferedReaderにすると再現した。
これが原因だな。解決方法は単にBufferedReader.javaを削除するだけだ。
207デフォルトの名無しさん:2007/02/21(水) 02:02:51
質問です。
Javaを使って、Internet Explorerや
Outlook Expressといったアプリケーションを自動で起動させることは出来るでしょうか?
208デフォルトの名無しさん:2007/02/21(水) 02:06:15
>>207
自動っていうのがどの程度自動なのか分からないけど、
単にjavaから起動したいってことなら、
Runtime#execかProcessBuilder#startを使えば起動させられる。
詳細はAPIドキュメント参照のこと。
209208:2007/02/21(水) 02:10:32
あと、JDK6ならjava.awt.Desktopも有用。
210デフォルトの名無しさん:2007/02/21(水) 02:12:08
>>208
おお、有り難うございます。
ちなみにJavaをつかってOutlook Expressを自動で起動させて、
さらにメールを検索させるといったAppleScriptみたいなことは出来ないでしょうか?
211デフォルトの名無しさん:2007/02/21(水) 02:12:26
任意のアプリケーションなら>>208

最新のJavaにはjava.awt.Desktopというクラスもあって
mail(URI), mail()
browse(URL)
edit(File)
open(File)
print(File)
なんていう限定的なことなら出来たりする。
212デフォルトの名無しさん:2007/02/21(水) 02:14:09
>>210
そこまでいくとOEをWSHとかで操作(出来る?)しないといかんのかな。

213デフォルトの名無しさん:2007/02/21(水) 02:16:53
うをー、みなさん有り難うございます。
勉強してきます。
214デフォルトの名無しさん:2007/02/21(水) 02:18:03
>>210
それは起動したアプリケーションとのインタフェース次第じゃないかな。
外部のプログラムからコントロールするインタフェースをOEが持っているなら、
それをJavaから呼び出すことができるなら可能だけど。
JDK6のDesktopでも、起動するだけなら当然可能だけど、
複雑な操作になると、メール関係はメール作成ウインドウを表示させるのが精一杯っぽい。
215210:2007/02/21(水) 02:31:15
javaって駄目ですね。。
216デフォルトの名無しさん:2007/02/21(水) 02:35:35
各環境を抽象化して公約数的な機能から実装されてきてるから仕方ない。
得手不得手はどんな言語でもあるし、全てをJavaでやる必要はないよ。
217デフォルトの名無しさん:2007/02/21(水) 02:37:20
>>203
おまえ、頭いいな
218184:2007/02/21(水) 18:40:29
皆さんありがとうございます!
ようやくコンパイルに成功して先へ進めます。
本当にありがとうございました
219デフォルトの名無しさん:2007/02/21(水) 19:08:23
ちょっとスレ違いかもしれんが聞いてみたくなった
パスワードの生成ボタンがついたテキストエディタ(メモ帳)
お前らなら何時間で作れる?
生成ボタンを押すとプロント画面にアルファベットだけの8桁のパスワードが
10行表示され、プロントに表示されたパスワードをエディタに入力して名前をつけて保存する
だけプログラム。何故こんな質問をするのかは聞かないでくれ・・・。
220デフォルトの名無しさん:2007/02/21(水) 19:15:16
メモ帳としての機能はどの程度なのよ?
JTextAreaそのものの機能+ファイル読み書きだけなら1時間かからんと思うけど。

あと、プロントって何? prompt? front?

221デフォルトの名無しさん:2007/02/21(水) 19:20:00
>>220
普通のメモ帳にパスワード生成ボタンだけがついたもの
機能といっても文字の保存しかできない・・・。
あとコマンドプロントの画面な
222デフォルトの名無しさん:2007/02/21(水) 19:33:12
なんでエディタが必要なんだよ。
コマンドラインから直接ファイルを生成するコンソールアプリでいいじゃん。
223デフォルトの名無しさん:2007/02/21(水) 19:39:17
>>222
俺に聞くな俺に
なんでメモ帳に生成ボタンつけてしかもアルファベットで8文字足らずのパスワードを
わざわざプロント画面に表示させてそこから手入力でメモ帳に保存なんて・・・
学校で一番重要な単位でこんなプログラムを作品として提出した人がいるらしい・・・。
224デフォルトの名無しさん:2007/02/21(水) 19:43:23
>>223
> 俺に聞くな俺に
じゃあ誰に聞けっていうんだよ。住所氏名電話番号晒せ。

>学校で一番重要な単位でこんなプログラム
汁かボケ。テメエがそいつに聞いてこいよ。

ちゃんと結果報告しろよ?
225デフォルトの名無しさん:2007/02/21(水) 19:51:57
>手入力でメモ帳に保存
まて。自動挿入じゃなく、画面見ながら手動で打ち込むのか?全くもって意味不明なんだが。
つーかそれで単位取れるのか?

#ところでプロントじゃ無くてプロンプトじゃね?
226デフォルトの名無しさん:2007/02/21(水) 19:54:21
俺に聞くな俺に
227デフォルトの名無しさん:2007/02/21(水) 19:57:47
>>224
>>225
先輩から聞いた話しなんでこれ以上詳しく話せと言われても無理だし
その人とは面識もない、ただ来年俺も同じ単位とらなくちゃいけないから
実際どの程度の時間で作れるのか知りたかっただけだスマン
この板を参考にしつつ勉強に励むよノシ
228デフォルトの名無しさん:2007/02/21(水) 20:03:37
>>227
たぶんその人はプログラムだけじゃなくて美味しいカレーのレシピも添えて提出したんだと思われ。
229デフォルトの名無しさん:2007/02/21(水) 20:05:20
罵声の途中に失礼します。

サーブレット関連のパッケージが存在しないらしいのですが、何が原因なのでしょうか?非常に困っております。エロい人よろしくお願いいたします。
230デフォルトの名無しさん:2007/02/21(水) 20:08:08
>>229
おまえのインストール方法が問題に決まってる
231デフォルトの名無しさん:2007/02/21(水) 20:17:18
来期の履修科目の選択中に、ある科目の単位取得の難易度を先輩に
尋ねたところ、「こうやってパスした」といわれたのだが、それは
どの程度の難易度なのかを知りたい、ということなのね。
232デフォルトの名無しさん:2007/02/21(水) 20:22:48
>>231
違う、ダメと思われるそのプログラムですら作れないから
1年前の今のうちから必死に勉強しようってことです(´・ω・`)
233デフォルトの名無しさん:2007/02/21(水) 20:28:18
>>232
ここで作業工数聞いても『回答者のレベル』と『君のレベル』が違うから参考にならないんじゃないかな?
234デフォルトの名無しさん:2007/02/21(水) 20:34:07
>230悔しいがテメーの言う通りだ!再インスコしたらコンパイルできたぜ。だが、今度はトムキャットが動かない…カカロットめッ・∀・)
235デフォルトの名無しさん:2007/02/21(水) 20:35:06
>>234
OSを再インストールするんだ
236デフォルトの名無しさん:2007/02/21(水) 20:39:10
>235
再インスコじゃなくて新しくXPからVisteを導入してもいいの?
237デフォルトの名無しさん:2007/02/21(水) 20:43:36
さきにトムキャットが動かない理由を突き止めろハゲ!
238デフォルトの名無しさん:2007/02/21(水) 20:54:48
バレンタインデーにチョコあげたのに、その言い草はなんだ!それに、ハゲじゃない、M剃りいれてるんだよ・∀・)ノ
239デフォルトの名無しさん:2007/02/21(水) 21:22:27
トムとキャットがStartServiceしなひ…トランクスめッ!
240デフォルトの名無しさん:2007/02/21(水) 22:11:25
>>232
必死に勉強すればあんなもん半年くらいで作れるようになるよ。
今まで他の処理系でプログラミング経験あるなら多分1ヶ月もかからん。
241デフォルトの名無しさん:2007/02/22(木) 00:20:05
>>219
犯罪の匂いがする。
そういうのはJavaよりもC/C++屋のほうが
お得意で大好きな分野だろう。
242デフォルトの名無しさん:2007/02/22(木) 00:21:11
>>227
なんだ。そういうことか。犯罪かと思った。
だが、お前の勘違いかも知れないし、
評価方法が違うだけかも知れん。
243デフォルトの名無しさん:2007/02/22(木) 00:21:48
>>229
環境を明示しないやつの
質問にはいちいち答えていられないので却下
244デフォルトの名無しさん:2007/02/22(木) 00:22:48
>>232
もしかすると、駄目プログラムを作った香具師を
評価した教官は、ろくいにソースコードを読めなかった可能性がある。
245デフォルトの名無しさん:2007/02/22(木) 00:23:56
>>239
ジョークではなく本気で言ってるなら、
まずはTomcatのバージョンや環境を明示すべきだ
246デフォルトの名無しさん:2007/02/22(木) 01:02:46
文字列の比較でindexOfを使っているのですが、
比較するときに大文字と小文字の区別を無くすにはどうしたらいいのでしょうか?
247デフォルトの名無しさん:2007/02/22(木) 01:04:52
toLowerCase
toUpperCase
248デフォルトの名無しさん:2007/02/22(木) 01:06:08
ある文字列の最後の文字を消すにはどうしたらいいのでしょうか。
249デフォルトの名無しさん:2007/02/22(木) 01:07:40
Javaの文字列(String)は変更できない(immutable)ので、
「先頭から末尾の1文字の手前まで」の部分文字列(substring)を
作る。


250デフォルトの名無しさん:2007/02/22(木) 01:07:52
JToolTipを改行するやり方をここで聞く前にググッてたけど
日本語ページだと解決方法がひとつも見つからないのに、
Web全体だとあっさりみつかるのな。
日本の使えなさは異常。
251246:2007/02/22(木) 01:07:54
>>247
ありがとうございます
試してみます
252デフォルトの名無しさん:2007/02/22(木) 01:15:48
>>250
ぐぐってないけど、<html> <br> でいいんだよな。


253デフォルトの名無しさん:2007/02/22(木) 01:20:35
>>246
Stringの辞書的順序の大小比較ならcompareToIgnoreCase、
二つのStringが等しいかどうかの判定だけならequalsIgnoreCaseで、
大文字小文字の区別なしで比較できる。
もし比較に独自の基準を使っていて、indexOfで比較を実装しているということなら、どちらも使えないけど。
254246:2007/02/22(木) 01:41:55
>>247
試して損しました
>>253
試してみます
255246:2007/02/22(木) 01:51:38
>>254
これ自分じゃないです
>>247
どうも、上手くいきました
>>253
試してみましたが、うまくいきません。

String str = line;
if(str.equalsIgnoreCase( "aaa" ) ){
System.out.println(line);

のようにしているのですが、何も表示されずに終了してしまいます。

String str = line.toUpperCase();
if(str.indexOf( "aaa" ) != -1){
System.out.println(line);

このようにすれば上手くいくのですが・・・
256255:2007/02/22(木) 01:55:30
すみません、下のほうは
if(str.indexOf( "aaa" ) != -1){
ではなく
if(str.indexOf( "AAA" ) != -1){
です
257デフォルトの名無しさん:2007/02/22(木) 01:57:37
>>246
Jakarta Commons LangのStringUtilsクラスを使うというてもあるぞ
258デフォルトの名無しさん:2007/02/22(木) 01:57:57
Windowsでjarでかためたアプリケーションをダブルクリックで起動すると
Could not find the main classのエラーがでるけど、
コマンドプロンプトから起動するとエラーがでない場合ってどんな原因が考えられますか?
259デフォルトの名無しさん:2007/02/22(木) 01:58:53
// toUpperCaseのとこ、toLowerCaseのような気がする。

つまり、
"aaa"に一致するか? は成り立たず、
"aaa"を含んでいるか、は成り立つってことだよね。

前か後に余計な文字が付いてるのではない?
改行とか。(readLineだと付かないはずだけど)
260デフォルトの名無しさん:2007/02/22(木) 01:59:49
最近>>254みたいな態度でかくて生意気な奴多いよな。
2chだけでなくリアルにこういう無礼な馬鹿がいる。
こういうやつは、恩知らずだからあとから仕返しされて泣く馬鹿だが名
261デフォルトの名無しさん:2007/02/22(木) 02:00:53
>>258
たぶん、コマンドプロンプトから
> java クラス名
なら起動できるんだよな?

jarのダブルクリックがダメなら、コマンドプロンプトから
> java -jar そのjar
でもたぶん起動できないはず。

jarの中のMANIFEST.MFにMain-Class: エントリがないんだろうね。
262デフォルトの名無しさん:2007/02/22(木) 02:01:00
>>258
マニフェストファイルが無い
263デフォルトの名無しさん:2007/02/22(木) 02:01:22
>>258
マニフェスト以外に、JNLPファイルがない
264246:2007/02/22(木) 02:02:32
すみません、質問が悪かったです
表示する文字列は"abcaaabbb"のようなものです
だからequalsIgnoreCaseを使ってもできなかったんですよね
お騒がせしました
265デフォルトの名無しさん:2007/02/22(木) 02:03:51
>>255
lineとstrを間違えている
266デフォルトの名無しさん:2007/02/22(木) 02:04:15
いや間違えてなかった
267デフォルトの名無しさん:2007/02/22(木) 02:04:35
>>260
>>255
騙りだろ。ヒマなやつもいるもんだな
268258:2007/02/22(木) 02:07:51
なぜか java -jar Hoge.jar ではちゃんと起動できるんですよ。
いままでこんなことなかったから不思議。
1.6にしたことにかんけいあるとか?

JNLPってはじめて聞きましたがWeb系?
ローカルで使うアプリなのでたぶん関係ないです。
269デフォルトの名無しさん:2007/02/22(木) 02:14:03
>>268
ならMANIFESTはあるわけね。

クラスファイルのバージョン違いとかありそうな気がするんだけど、
*.jarに関連づけられているjava vmと
コマンドプロンプトで使われるjava vmは同じなのかね。
270デフォルトの名無しさん:2007/02/22(木) 02:17:39
>>269
今JDK, JREともに1.6しか入ってないですし、1.6でしか作成していないので一緒のはずですが。
271デフォルトの名無しさん:2007/02/22(木) 02:30:13
>>260
べろべろばー      うほほほほ
   おチンチンびろーん ∩___∩
   ∩___∩      | ノ  ○─○ヽ_∩__∩ おばびげぶがべべべ
   | ノ      ヽ/⌒)  /  /3   3 |      ヽ
  /⌒) (゜)   (゜) | .|   |    ( _●_) |o⌒  ⌒o|
 / /   ( _●_)  ミ/∩―−、   |∪| /⌒(_●_)⌒ ミ
.(  ヽ  |∪|  / / (゜) 、_ `ヽ ヽノ |   |∪|  /
 \    ヽノ /  /  ( ●  (゜) |つ  ∩.  ヽノ∩
  /      /  | /(入__ノ   ミ   | ノ⌒  ⌒ヽ
 |   _つ  /    、 (_/    ノ  /  (。)(゜)|
 |  /UJ\ \   \___ ノ゛ ─ー|  (⌒_●⌒)ミ
 | /     )  )    \       _彡、/ |U  UU_/
 ∪     (  \     \     \   | |     ||
        \_) あびゃばばばだーん . .| |nn _nn||  あひゃひゃひゃひゃひゃ

272デフォルトの名無しさん:2007/02/22(木) 02:58:02
じゃばっておもしろいよねーー
ここの回答者の皆さんくらいのレベルになれば、
もっと面白くなるのかな。がんばろーっと
273デフォルトの名無しさん:2007/02/22(木) 03:00:04
>>270
うーん、わからん、降参だ。
274デフォルトの名無しさん:2007/02/22(木) 07:10:33
>>270
関連付けの設定はどうなってる?
コマンドプロンプトのjava -version で出てくる文字列は何?
275デフォルトの名無しさん:2007/02/22(木) 10:10:53
googleの検索結果を取得したくて、下みたいに書いてみたけど
なぜだかgetInputStream()するときにサーバから403を返されてしまう。
ほかのサイトは大丈夫なんだけど、なぜ?

URL objURL = new URL("http://www.google.co.jp/search?hl=ja&q=java&lr=");
URLConnection objURLCnn = objURL.openConnection();
InputStream inputStream = objURLCnn.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(inputStream, "JISAutoDetect"));
276デフォルトの名無しさん:2007/02/22(木) 10:12:08
そんなことはgoogleに聞いてください
277デフォルトの名無しさん:2007/02/22(木) 10:12:44
>>271



         F  U  C  K  '  i  n  C  h  o  n  !
278デフォルトの名無しさん:2007/02/22(木) 10:23:35
Google APIを使わないやつはお断りってことじゃない?
279デフォルトの名無しさん:2007/02/22(木) 10:30:56
>>275
URLエンコードしていないということはないかね?

&や=記号などが混ざっているのがもの凄く気になるし
280デフォルトの名無しさん:2007/02/22(木) 10:31:32
ユーザーエージェントを登録してからアクセスすればうまくいくってことはないかね?
281デフォルトの名無しさん:2007/02/22(木) 10:34:04
>>270
JARの中に入ってるクラスパスはどうなっている?

マニフェストファイルの中身はどうなってる?

JARはちゃんとJARコマンドなどで圧縮したか?

>>268
Java Web Startはローカルでも使える。

ただのJavaアプリダウンローダーみたいなものだと思えばわかりやすい。
XML形式でJNLPファイルを書き、そこにSwingアプリファイルのリンクとJVMのバージョンなどを
記述しておけばいい


282デフォルトの名無しさん:2007/02/22(木) 10:35:05
エクスプローラなどで「ファイルの関連づけ」設定を見るべきだな
283デフォルトの名無しさん:2007/02/22(木) 10:44:14
>>281
コマンドプロンプトからは起動できると書いたでしょ。
あなたバカですか
284デフォルトの名無しさん:2007/02/22(木) 10:49:32
>>258
> Could not find the main classのエラーがでるけど、
それ、どこに出てるの?

ダブルクリックって javaw 使うはずだからコンソールに出ないと思うし。
285デフォルトの名無しさん:2007/02/22(木) 10:55:57
>>275
>>280が正解。Googleは、User-Agent 要求ヘッダを見てアクセスをはじいている。
システムプロパティ http.agent を、IEなどのよく知られたブラウザのそれに合わせて
設定するといい。システムプロパティの設定は、
java.lang.System#setProperty(String, String)で可能。

そういえば、2年くらい前にも同じ質問があったのを思い出した。
286275:2007/02/22(木) 11:28:07
>>285
取得できました。ありがとう。
287デフォルトの名無しさん:2007/02/22(木) 12:02:04
>>283
しかし、万が一のことを考えて慎重に!慎重に!分析しないと。
コマンドプロンプトで起動できるからといってJARの内部がまったく問題ない
とは限りませんよ。
あなたはせっかちですか?
288デフォルトの名無しさん:2007/02/22(木) 12:04:04
Could not find the main class
と出た時点で、JARのマニフェストファイルが怪しいとは
思わないのか。
289デフォルトの名無しさん:2007/02/22(木) 12:04:38
ディレクトリを変えて実行して駄目だったら
クラスパスに頼りすぎていた可能性大。

マニフェストが怪しい可能性
290デフォルトの名無しさん:2007/02/22(木) 12:17:40
今日javaはじめたクソな私から質問です。
テキストファイルの名前を ファイル名.java にしたのにJAVAファイルになってくれません
ダレカタスケテ
291デフォルトの名無しさん:2007/02/22(木) 12:24:27
292デフォルトの名無しさん:2007/02/22(木) 12:30:08
意味不明です
293デフォルトの名無しさん:2007/02/22(木) 12:31:48
>>290
コマンドプロンプトで拡張子が表示されるならば、気にすることではない。


というか、しゃらくせえ!

ちまちまいちいち百済ねえことを気にしてんじゃねえぞゴルァ!

294デフォルトの名無しさん:2007/02/22(木) 12:45:31
java -jar Hoge.jar ではちゃんと起動できると書いたでしょ。
あなたたち「クラスパス」しか言えないんですか
295デフォルトの名無しさん:2007/02/22(木) 12:51:35
Windowsの使い方の質問は受け付けてませんから。
296290:2007/02/22(木) 12:53:53
速レスありがd
コマンドプロンプトでみたところ
「ファイル名.java.txt」
となっていてコンパイルエラーが起きます
いわく、エラー ファイル名.javaを読み込めません
エラー1個
297デフォルトの名無しさん:2007/02/22(木) 12:55:13
ren ファイル名.java.txt ファイル名.java
298デフォルトの名無しさん:2007/02/22(木) 12:56:07
>>294
コマンドラインから実行できてダブルクリックで実行できない場合は >>282が正しい
メニューのツール->フォルダオプション->ファイルタイプタブを選択->
拡張子JARを選択後、詳細設定->アクションの欄のopenを選択、編集ボタンをクリック。

アクションを実行するアプリケーションを
"C:\Program Files\Java\jre1.5.0_09\bin\javaw.exe" -jar "%1" %*
の用に書き換える jre1.5.0_09の部分はインストールしているJREで書き換える。
299290:2007/02/22(木) 13:06:50
>>297
できた!!!! ありがとうみんな!! 
300デフォルトの名無しさん:2007/02/22(木) 13:20:01
またメモ帳でヘマしたか
301デフォルトの名無しさん:2007/02/22(木) 14:21:06
コマンドラインからだろうと、
-jarオプション付きで動かすとCLASSPATHも-cpも見ないから
クラスパスは関係なくなるよね。
302デフォルトの名無しさん:2007/02/22(木) 14:38:37
テンプレ
javaへのパスが通っていない。
.txt拡張子のせいでコンパイルできない。
これ以外の質問はgoogleをお使いください
303デフォルトの名無しさん:2007/02/22(木) 14:48:26
>>294

>>284に答えろよクズ
304デフォルトの名無しさん:2007/02/22(木) 15:29:33
javaファイルをコンパイルしてできたclassファイルを元のjavaファイルに戻す方法はあるのでしょうか?
教えてください。
305デフォルトの名無しさん:2007/02/22(木) 15:34:29
>>303
ダイアログ以外のどこにでると出ると思ったのですか?お馬鹿さん
306デフォルトの名無しさん:2007/02/22(木) 15:35:24
>>304
無い。

不完全でよければ judo とか jad とかみたいな逆コンパイラはあるけど。
307デフォルトの名無しさん:2007/02/22(木) 15:38:13
>>305
ダイアログの内容は全部書け。

ついでに、>>298 あたりの関連付けの情報も。
308デフォルトの名無しさん:2007/02/22(木) 15:38:38
>>304
過去スレぐらいよめよクズ
309デフォルトの名無しさん:2007/02/22(木) 15:42:58
>>301
JARの中にあるマニフェストはクラスパスを参照する事ができる機能がある。
JARの中のどのディレクトリにclassを置くかという指示をする。
310デフォルトの名無しさん:2007/02/22(木) 15:49:51
>>304
public class Quine {
public static void main(String[] args) {
char c=34;
System.out.println(s+c+s+c+';'+'}');
}
static String s
="public class Quine { public static void main(String[] args) { char c=34;System.out.println(s+c+s+c+';'+'}');}static String s=";
}

まず上記をQuine.javaという名前のjavaファイルにする。
そしてjavaファイルをコンパイルしてできたクラスファイルを java Quine.java で実行。
そうすると元のjavaファイルとほぼ同じものが得られる。
もっと完全に元のjavaファイルに戻したければQuine.javaを1行で書く。
(2ちゃんの書き込み制限があるから上では適宜改行した)
311デフォルトの名無しさん:2007/02/22(木) 15:51:50
これはつまらない。。。
312デフォルトの名無しさん:2007/02/22(木) 15:54:05
キーン?
313デフォルトの名無しさん:2007/02/22(木) 15:55:41
食いねえ。だろうな
314デフォルトの名無しさん:2007/02/22(木) 15:57:32
寿司?
315デフォルトの名無しさん:2007/02/22(木) 15:58:26
s+c+s+c かw
316デフォルトの名無しさん:2007/02/22(木) 16:03:30
s〜c〜Quine〜 か。天才だな
317デフォルトの名無しさん:2007/02/22(木) 16:08:22
>>309
それはJARファイル内のリソースを参照する話であって、
>>301が言ってるのは
「java -jar で起動した場合は環境変数CLASSPATHや-cpオプションが無視される」
って話。
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/tooldocs/windows/java.html#-jar
318デフォルトの名無しさん:2007/02/22(木) 16:23:40
>>307
もう少し詳しそうな人が来ればね。
319デフォルトの名無しさん:2007/02/22(木) 17:07:30
JAVA始めて一ヶ月ぐらいの初心者なんですが、インターネットで文法がデータベース上に一杯あるサイトを探しています。しかし、どんだけ探してもそのようなサイトは見つかりません。

上級者の方々は、文法をどのようにして探していますか?やはりリファレンス本を買わなければいけませんか?
教えて下さい(___)
320デフォルトの名無しさん:2007/02/22(木) 17:10:36
321デフォルトの名無しさん:2007/02/22(木) 17:13:12
322ぴゅあ:2007/02/22(木) 17:17:05
>>318
わちきならちゃんとROMってますよ
323デフォルトの名無しさん:2007/02/22(木) 17:38:53
>>310
ウィラード・ヴァン・オーマン・クワイン という哲学者に関する問題か?
324デフォルトの名無しさん:2007/02/22(木) 17:40:45
自己出力プログラムと自己参照プログラム
http://www.ice.nuie.nagoya-u.ac.jp/~h003149b/lang/quine.html

なるほど
325デフォルトの名無しさん:2007/02/22(木) 17:41:34
>>319
Codezine
Jakarta
326デフォルトの名無しさん:2007/02/22(木) 17:42:11
SourceForge
327デフォルトの名無しさん:2007/02/22(木) 18:02:34
すいません、ちょっと教えてください

String str = "aa";
str += "123";
str += "456";

ってやったときstrにはStringオブジェクトが三つ入ってますよね?
このStrに入ってる三つのオブジェクトへの参照用IDを見るにはどうしたらいいんですか?
outprintだとaa123456ってでるだけでわからなくて・・orz
328デフォルトの名無しさん:2007/02/22(木) 18:06:22
リテラル...
329デフォルトの名無しさん:2007/02/22(木) 18:24:54
>>327
> ってやったときstrにはStringオブジェクトが三つ入ってますよね?
入ってない。
330デフォルトの名無しさん:2007/02/22(木) 18:45:46
>>329
入ってないんですかぁ。
じゃあオブジェクトは一つしか入ってないんですか?

str += "456";
の時、コンパイラが内部で、

str = new StringBuffer().append(str).append("456").toString();
ってやってますよね?
このtoString()の戻り値っていうのはchar型の文字なんですか?
それともストリングオブジェクトが返ってきてるんですか?
API読むと「文字列表現」を返すメソッド。 ってあるんですけど、どういう風に文字列表現かえしてるのかわからなくて。
331デフォルトの名無しさん:2007/02/22(木) 18:48:09
>>330
リテラルで検索した上で言ってるんだろうな?
332デフォルトの名無しさん:2007/02/22(木) 18:49:37
キーワード: リテラル、コンスタントプール
333デフォルトの名無しさん:2007/02/22(木) 18:57:14
>>327
アホ。

+=の意味を勉強してから出直せ
334デフォルトの名無しさん:2007/02/22(木) 18:58:02
>>332
最後がコンスタンティノーブル(現イスタンブール)かと思った
335デフォルトの名無しさん:2007/02/22(木) 18:58:39
キーワード(オスマン)、リテラル(トルコ)に陥落されるコンスタンティノーブル

336デフォルトの名無しさん:2007/02/22(木) 18:58:59
>>330
Javadoc嫁。
337デフォルトの名無しさん:2007/02/22(木) 19:00:33
指定したテキストファイルの指定した行だけを
書き換えるにはどうしたらいいんですか?
338デフォルトの名無しさん:2007/02/22(木) 19:10:01
>>337
Apache Antの<copy>タスクと<filter>タグ
339330:2007/02/22(木) 19:12:09
あーもしかして、new StringBuffer().appendの部分で新しいstrの中のstringオブジェクトの値を引数にして、StringBufferオブジェクト作って、appendしてその参照用IDをstrに上書きしてるってことなんでしょうか?
340デフォルトの名無しさん:2007/02/22(木) 19:12:29
1行読む-->指定行なら書き換え-->1行書き出す
をくりかえせばいんでね
341デフォルトの名無しさん:2007/02/22(木) 19:16:11
>>339
append()は戻り値がvoidなので新たにオブジェクトを作らない。
よーく考えろ。
342デフォルトの名無しさん:2007/02/22(木) 19:17:04
しかもstrはString型だがStringBufferじゃないし
343デフォルトの名無しさん:2007/02/22(木) 19:17:50
Javaコンパイラが自動最適化を行ってるから
コンパイラによってどうなってるかわからんぞ
344デフォルトの名無しさん:2007/02/22(木) 19:18:10
toString()がどうやったらcharを返すのか知りたいものだ
345デフォルトの名無しさん:2007/02/22(木) 19:19:13
346デフォルトの名無しさん:2007/02/22(木) 19:19:19
>>330
> それともストリングオブジェクトが返ってきてるんですか?
> API読むと「文字列表現」を返すメソッド。 ってあるんですけど、どういう風に文字列表現かえしてるのかわからなくて。

JDKをインストールしたディレクトリのsrc.zipを開いて嫁
347デフォルトの名無しさん:2007/02/22(木) 19:19:54
>>345
津くっとる津くっとるw
348デフォルトの名無しさん:2007/02/22(木) 19:20:42
>>341
> append()は戻り値がvoidなので新たにオブジェクトを作らない。
ウソは良くない。
349デフォルトの名無しさん:2007/02/22(木) 19:23:48
>>339
str = new StringBuffer().append(str).append("456").toString();

new StringBuffer() → ここでStringBufferオブジェクトができる

new StringBuffer().append(str) ここで strの内容がStringBufferオブジェクトに入る。
                         strが123であるなら StringBufferの中身の文字列は123

new StringBuffer().append(str).append("456")で 456がStringBufferの123と連結しStringBufferオブジェクトに123456が入る。


new StringBuffer().append(str).append("456").toString()
で123456がStringBuffer型からString型に変換されて strには123456という文字列が代入される。
350330:2007/02/22(木) 19:24:43
てことは>>339で正解なんでしょうか?
351デフォルトの名無しさん:2007/02/22(木) 19:25:59
toString()はすべてのクラスが持つメソッド。

"" + オブジェクト

とやると

暗黙の内に "" + オブジェクト.toString()に変換される。

print文などで調べてみればtoString()がなんたるかがわかるかもしれない。
とくにListやHashMapのtoString()を調べてみれば新たな発見があるかも知れない。
352デフォルトの名無しさん:2007/02/22(木) 19:26:56
>>350
そう思い込みたければそう思っていればいい。
厳密には違うがな
353デフォルトの名無しさん:2007/02/22(木) 19:27:36
ヒント
Stringクラスは不変。
StringBufferクラスは可変
354330:2007/02/22(木) 19:31:46
>>349
>123456がStringBuffer型からString型に変換されて strには123456という文字列が代入される。
↑は結果、そうなるのは理解できるんですが、string型の変数には文字が直接入ってるわけではなく参照用のIDが入ってるんですよね?

str

ID(xxっぁslkdk)→メモリ上のデータ

ですよね?
てことはこのIDは最初のStringオブジェクトを生成したときのIDなのか、
それともStringBuffer展開後はID書き換えられてるんでしょうか?
355デフォルトの名無しさん:2007/02/22(木) 19:40:02
>>354
StringはIDというかchar[]配列を参照しているだけ
+演算子や+=演算子が動いたとき

StringBufferの引数に(参照を)渡される。


StringBufferオブジェクト → str : String → char[] → char
                   ↑
append()で出力されたその他StringBufferオブジェクトなどなど
356デフォルトの名無しさん:2007/02/22(木) 19:41:34
>>341
m9(^Д^)ぷぎゃー
357337:2007/02/22(木) 19:42:20
>>340
1行読む-->指定行なら書き換え-->1行書き出す
の「指定行なら書き換え」という処理のやり方を教えて頂けないでしょうか?
BufferedReaderを使っているのですがうまくいかないので・・・
358デフォルトの名無しさん:2007/02/22(木) 19:44:44
>>341
           ,, -──- 、._ 
        .-"´         \. 
        :/   _ノ    ヽ、_ ヽ.:
        :/  o゚((●))  ((●))゚oヽ:
      :|       (__人__)    |: 
      :l        )  (      l:
      :` 、       `ー'     /:  
       :, -‐ (_).        /
       :l_j_j_j と)丶─‐┬.''´
          :ヽ   :i |:
             :/  :⊂ノ|:
359デフォルトの名無しさん:2007/02/22(木) 19:45:45
StringBuffer生成後は、append()するたびに参照する文字列が変わるだけ
360デフォルトの名無しさん:2007/02/22(木) 19:46:07
なにかあるとかならずAAを貼る奴w
361デフォルトの名無しさん:2007/02/22(木) 19:47:53
>>354
ソースコードをよく見てみよう
/**
* Constructs a string buffer with no characters in it and an
* initial capacity of 16 characters.
*/
public StringBuffer() {
super(16);
}

まず、スーパークラスのコンストラクタにあ区セスしている。

スーパークラスはAbstractStringBuilder。
ここで、char[]型のvalueというフィールドにまず、サイズ16の配列が初期化される。
つまり、StringBufferクラスは生成した時点で、char[]へのポインタを持っているということになる。
AbstractStringBuilder(int capacity) {
value = new char[capacity];
}
362デフォルトの名無しさん:2007/02/22(木) 19:47:58
>>360
voidじゃないから覚えとけよw
363デフォルトの名無しさん:2007/02/22(木) 19:49:23
class String
{
char[] buff;
}

という感じで、Stringクラスはbuffを書き換えられないが、
StringBufferは書き換えられるという感じだ。
ちなみに書き換えるというのは、
buff[0] = 'a';
ということができるかということだ。
364デフォルトの名無しさん:2007/02/22(木) 19:50:32
そして、append(String)メソッドを見てみよう。

これもまた、superクラスのappend()メソッドに委譲している。
StringBuilderのように非同期ではないのでしっかりとsynchronizedが
ついているのも興味深い。

public synchronized StringBuffer append(String str) {
super.append(str);
return this;
}

365デフォルトの名無しさん:2007/02/22(木) 19:53:51
そして、append(String)メソッドを見てみよう。

これもまた、superクラスのappend()メソッドに委譲している。
StringBuilderのように非同期ではないのでしっかりとsynchronizedが
ついているのも興味深い。

public synchronized StringBuffer append(String str) {
super.append(str);
return this;
}

366デフォルトの名無しさん:2007/02/22(木) 19:56:37
そして、次が本番のAbstractStringBuilderクラスだ。
面白いのはAbstractStringBufferではなくAbstractStringBuilderになっていることだ。
StringBufferもStringBuilderクラスもどちらもこのクラスのサブクラスなのだ。
/**
* Appends the specified string to this character sequence.
* <p>
* The characters of the <code>String</code> argument are appended, in
* order, increasing the length of this sequence by the length of the
* argument. If <code>str</code> is <code>null</code>, then the four
* characters <code>"null"</code> are appended.
* <p>
* Let <i>n</i> be the length of this character sequence just prior to
* execution of the <code>append</code> method. Then the character at
* index <i>k</i> in the new character sequence is equal to the character
* at index <i>k</i> in the old character sequence, if <i>k</i> is less
* than <i>n</i>; otherwise, it is equal to the character at index
* <i>k-n</i> in the argument <code>str</code>.
*
* @param str a string.
* @return a reference to this object.
*/
public AbstractStringBuilder append(String str) {
if (str == null) str = "null";
int len = str.length();
if (len == 0) return this;
int newCount = count + len;
if (newCount > value.length)
expandCapacity(newCount);
str.getChars(0, len, value, count);
count = newCount;
return this;
}
367デフォルトの名無しさん:2007/02/22(木) 19:59:04
Stringの+や+=の仕組みについて知りたければ、
GoFデザインパターンのひとつ、Flyweightパターン
を知るべきだろう。あれで、彼も謎がとけるのではないだろうか
368デフォルトの名無しさん:2007/02/22(木) 19:59:42
そんな解説いいから
>>341
       _   ,--、l       ノ .     /_ノ  ヽ、_\
   ,--、_ノ:: `ー'::   、ミー---‐,,l     o゚((●)) ((●))゚o    プギャアアアアアアアアアアアアアア
  ,/   :::         i ̄ ̄  | .  /::::::⌒(__人__)⌒::::: \   
/           l:::    l:::   ll   |     |r┬-|     |    (⌒)
l   l .   l     !::    |:::   l   |     | |  |     |    ノ ~.レ-r┐、
|   l   l     |::    l:    l .  |     | |  |     |   ノ__  | .| | |
                         /_ノ  ヽ、_\     丶      l ,--、  _
   プギャアアアアアアアアアアアアアア     o゚((●)) ((●))゚o     l,,‐---ー彡,  ::`ー'  ::ゝ_,--、
                      /::::::⌒(__人__)⌒::::: \    |   ̄ ̄i        :::   ヽ,
               (⌒)     |     |r┬-|     |    ll    :::l   :::l         ^ヽ
           ,┌、-、!.~〈     |     | |  |     |    l    :::|   ::!   l    l   l
            | | | |  __ヽ、   |     | |  |     |   l     ::l  :::|    l   :l   |
               プギャアアアアアアアアアアアアアアアアアアアアアアアアアアアア!!!!!!!!!!!!!!!!!!!!!!!!!!!!
             / ̄ ̄^ヽ                  / ̄ ̄^ヽ
             l      l       ____        l      l
       _   ,--、l       ノ .     /_ノ  ヽ、_\     丶      l ,--、  _
   ,--、_ノ:: `ー'::   、ミー---‐,,l     o゚((●)) ((●))゚o     l,,‐---ー彡,  ::`ー'  ::ゝ_,--、
  ,/   :::         i ̄ ̄  | .  /::::::⌒(__人__)⌒::::: \    |   ̄ ̄i        :::   ヽ,
/           l:::    l:::   ll   |     |r┬-|     |    ll    :::l   :::l         ^ヽ
369デフォルトの名無しさん:2007/02/22(木) 20:00:45
>>341
       m9
        ノ
プギャー!  (^Д^)
      ( ( 9m
       < \
370デフォルトの名無しさん:2007/02/22(木) 20:01:23
>>341
    /  , -‐ (_)      (_) ‐- , 
   /   l_j_j_j と)    (とi._i._i._l 
  /   / /        \ \
 / / \ \        / / 
/ /    \ \(^Д^ )/ / プギャプギャプギャプギャーーーッ!!!!!        
/ /     ヽ       /
/       ノ      /  
        /     / 
       /  / \ \ 
―    /  ん、  \ \                |   ヽヽ
――  (__ (   >  )           | ヽヽ |\
⌒ヽ   ’ ・`し' / /     i 、、 | ヽヽ |\   |  \
  人, ’ ’, ( ̄ /   ド ド |ヽ   |\  |    |
Y⌒ヽ)⌒ヽ、 )  |
         \_つ

371デフォルトの名無しさん:2007/02/22(木) 20:03:08
>>366
それってStringBuilderが出来て追加されたクラスじゃなかったっけ
372デフォルトの名無しさん:2007/02/22(木) 20:09:22
public AbstractStringBuilder append(String str) {
if (str == null) str = "null";
int len = str.length();
if (len == 0) return this;
int newCount = count + len;
if (newCount > value.length)
expandCapacity(newCount);
str.getChars(0, len, value, count);
count = newCount;
return this;
}

まずよくみると、append()したい文字列がnullであればnullという文字が代入される。
ここでappendするのは何かが入ったstrという文字列。よって無視される。
つぎに文字列の長さをlenに代入。
つぎに、文字列長がゼロであればそのまま自分自身を帰して終わる。
つまり、空文字列""をappend()しても特に何も変化が無いということ。
次にcountにappendしたい文字列の長さを加える。
countはゼロなのでlenが3だとするとcountは3になる。
ここでvalue.lengthとこの3とを比較する。
当然現在の配列の長さは初期値である16(value.length==16)なので何も変化は無し。

そしてStringクラスのgetCharメソッドを呼び出す。
このメソッドは、興味深いことにSystem.arrayCopy()を使ってchar[]配列を別の配列を
コピーしていることがわかる。
public void getChars(int srcBegin, int srcEnd, char dst[], int dstBegin) {
   //例外処理を省略
System.arraycopy(value, offset + srcBegin, dst, dstBegin,
srcEnd - srcBegin);
}
373デフォルトの名無しさん:2007/02/22(木) 20:10:20
>>371
/**
* A mutable sequence of characters.
* <p>
* Implements a modifiable string. At any point in time it contains some
* particular sequence of characters, but the length and content of the
* sequence can be changed through certain method calls.
*
* @author Michael McCloskey
* @version 1.15, 11/17/05
* @since 1.5
*/

1.5と書いてあるから確かにその通り
374デフォルトの名無しさん:2007/02/22(木) 20:13:55
>>359もぷぎゃーでしょうか?
375デフォルトの名無しさん:2007/02/22(木) 20:15:06
盛り上がってまいりますた
376デフォルトの名無しさん:2007/02/22(木) 20:17:40
盛り下がってまいりますちゃ
377デフォルトの名無しさん:2007/02/22(木) 20:18:14
>>374
ノンノン>>372のソースコードを見てみて
378デフォルトの名無しさん:2007/02/22(木) 20:21:55
自身のchar[] valueにコピーしてんだから「参照してる文字列が変わってる」んじゃないでしょ?
379デフォルトの名無しさん:2007/02/22(木) 20:23:20
つまり
str.getChars(0, len, value, count);

ここで、valueの値が更新されることを意味する。
valueの中char配列の中身、たとえば123という文字列がそこに入ったわけだ。
しかし、これをみてもわかるように、配列の長さは変わらない。
しかし、文字列の長さは3だと認識している。
こうして新たに

文字列 123
文字列の長さcount=3
char配列の長さ16


という属性もつStringBufferというオブジェクトが作られる(参照し直される)ことになった。

さらにここでappend()すると、char配列の長さは16のままで
文字列が123から123456となり、それがchar[]配列に入る。
countの値は6となる。

そして再びStringBuilderというオブジェクトがそのような値を参照し直す。

そしてtoString()メソッド

これは見てもわかるとおり、ただ単純にStringオブジェクトを新たに生成しているだけである。
public synchronized String toString() {
return new String(value, 0, count);
}

つまり、文字列123456という値が入った新たなStringオブジェクトが作られ、それが
strに代入し直され、上書きされるということである。
以前strに入っていた内容は参照から外れるということである。
380デフォルトの名無しさん:2007/02/22(木) 20:23:52
>>378
文字列が16よりも小さいときはそう。

16を超えたときは変わる
381デフォルトの名無しさん:2007/02/22(木) 20:25:09
>>359=>>376
  m9 三 9m
 ノノ       ミ
m9  (^Д^)  9mプギャプギャプギャプギャーーーーーーーーーーーッ!!!!!!!!!!!!!!!!!!!!!!
 ヾヽ      彡
  m9 三 9m  スバババ
382デフォルトの名無しさん:2007/02/22(木) 20:25:49
>>359=>>376
          9m
        \\
        ∧∧|
       (^Д^)  プギャー
       /´  ヽ
        〈 〈)  l             m9
       ヽm9 /                ノ
     //`ヽ \         プギャー  (^Д^)
   _//  / /              ( ( 9m
  (_ノ   (__,)               < \
383デフォルトの名無しさん:2007/02/22(木) 20:26:24
>>359=>>376

       /⌒ヽ
    m9( ^Д^)9m
      |    /     プギャーーッ!
       ( ヽノ
      ノ>ノ
  三  レレ
384330:2007/02/22(木) 20:32:38
すいません・・・入門書を読み始めたばかりの初心者なので説明は大変ありがたいのですがあほなので中々イメージわきませんorz
難解すぎてレス遅いですが申し訳ないです。目を血走らせながら読ませていただいてます。

string str = "aa";
この時点ではstringクラスをnewでオブジェクト生成してStringクラスのコンストラクタに"aa"を引数として渡してchar型の配列に代入。
そのChar型配列へのポインタがstrに入る

str += "123";
ここでコンパイラが自動でStringBufferのオブジェクト生成開始。
str = new StringBuffer()

StringBufferメソッドがスーパークラスのAbstractStringBuilderへ仮引数int capacityへ16を実引数として渡して
char[16]のメモリが確保。変数valueにchar配列へのポインタ代入
ここまではあってますか?
385デフォルトの名無しさん:2007/02/22(木) 20:34:27
AAを1スレ10回以上貼ったら即灰汁禁なんだが知らないのかこのバカは
386デフォルトの名無しさん:2007/02/22(木) 20:41:19
温暖化春厨各所で増殖中w
387デフォルトの名無しさん:2007/02/22(木) 20:44:52
>>385
即灰汁禁

よめない・・・

はいじゅきん?
はいしるきん?

388デフォルトの名無しさん:2007/02/22(木) 20:46:23
>>384
どうでもいいが、JAVAは大文字と小文字を区別するんだから、
string → String
Char → char
にしないとダメだぞ
389デフォルトの名無しさん:2007/02/22(木) 20:48:45
灰汁→アク(鍋料理とかで水面に浮いてくるやつ)
390デフォルトの名無しさん:2007/02/22(木) 20:50:23
>>384
> すいません・・・入門書を読み始めたばかりの初心者なので説明は大変ありがたいのですがあほなので中々イメージわきませんorz
> 難解すぎてレス遅いですが申し訳ないです。目を血走らせながら読ませていただいてます。
> string str = "aa";
> この時点ではstringクラスをnewでオブジェクト生成してStringクラスのコンストラクタに"aa"を引数として渡してchar型の配列に代入。
> そのChar型配列へのポインタがstrに入る

厳密にはnewで生成はしているとは限らないよ。毎回newしているわけではないね。
String srr = "aa";と
String str = new String("aa");
とでは全く意味が違うから。後者のほうは確実にnewして新たな参照を作っている。

それと、stringではなくString。Charでなはく、char。というか、strはchar[]オブジェクトを参照している。
(Javaでは配列も、Objectクラスを継承したクラスのオブジェクトと見なされる)

> str += "123";
> ここでコンパイラが自動でStringBufferのオブジェクト生成開始。
> str = new StringBuffer()
> StringBufferメソッドがスーパークラスのAbstractStringBuilderへ仮引数int capacityへ16を実引数として渡して
> char[16]のメモリが確保。変数valueにchar配列へのポインタ代入
> ここまではあってますか?

valueはchar[]型。ポインタ代入というより、「参照する」のほうがわかりやすいと思う。

それいがいはまあ間違っていない
391デフォルトの名無しさん:2007/02/22(木) 20:50:58
>>389
なるほど。
まあ彼はサザエさんAA貼り付けてJava重複スレを
建てて荒らしていた人だよね
392デフォルトの名無しさん:2007/02/22(木) 20:57:22
>char[16]のメモリが確保。変数valueにchar配列へのポインタ代入
cすらわかってないじゃん。
393デフォルトの名無しさん:2007/02/22(木) 21:00:56
>>387
そんな字読めないほど常識無いくせによくJavaやってるね
394330:2007/02/22(木) 21:02:08
>>379
なんかすごく

さらにここでappend()すると、char配列の長さは16のままで
文字列が123から123456となり、それがchar[]配列に入る。
countの値は6となる。

そして再びStringBuilderというオブジェクトがそのような値を参照し直す。

そしてtoString()メソッド

これは見てもわかるとおり、ただ単純にStringオブジェクトを新たに生成しているだけである。
public synchronized String toString() {
return new String(value, 0, count);
}

でtoStringメソッドが今までより少しわかりました。ありがとうございます。

結論は一言でいうとStringBufferクラスを介して新たなStringオブジェクトが作られ、str内の元あったchar型配列へのポインタへのポインタが上書きされるってことでいいんでしょうか?

>>392
すいません。プログラムやったことないので。
395330:2007/02/22(木) 21:03:28
×ポインタへのポインタが上書
○ポインタが上書

ですorz
396デフォルトの名無しさん:2007/02/22(木) 21:06:12
>>372に配列のコピーってかいてあるやんけ。
ポインタの代入じゃなくmemcpyとかstrcpyだ
397デフォルトの名無しさん:2007/02/22(木) 21:14:25
>>394
正確には上書きではなく、参照先を変えただけ。
398デフォルトの名無しさん:2007/02/22(木) 21:14:48
>>396
arrayCopyはネイティブだからね
399デフォルトの名無しさん:2007/02/22(木) 21:16:47
>>398
なにが言いたい?
400デフォルトの名無しさん:2007/02/22(木) 21:19:29
>>397
ということはまぁまぁそんな感じということでいんですよね?

あと>>372のexpandCapacity(newCount);がよくわかりらないのです。
どうゆうことなんでしょう?expandCapacityってのを初めて見ました。
401デフォルトの名無しさん:2007/02/22(木) 21:27:43
>>400
自分でソース読めやハゲ!
402デフォルトの名無しさん:2007/02/22(木) 21:29:11
>>400
一回くらい自分でソース読めやハゲ!
403デフォルトの名無しさん:2007/02/22(木) 21:35:48
>>401
そうですか、すいませんでした。

では、あまり質問しすぎるのも申し訳ないので落ちることにします。
みなさん、どうもありがとうございました!

教えてもらった事を忘れないようにもっと勉強にはげみたいと思います。
あと、>>341のような、低脳・・・いや、すいません!これでは語弊がありますね。
>>341のような脳がかんばしくない人にはならないようにがんばります!

では、ありがとうございました。
404デフォルトの名無しさん:2007/02/22(木) 21:38:38
もうわざとにしか思えないwwwww
十分笑わせてもらった。また縁があればどこかでw

ちなみに、C# だと StringBuilder の Append は void を返すんだよな。
俺も時々間違える。
405デフォルトの名無しさん:2007/02/22(木) 21:40:58
>>400
/**
* This implements the expansion semantics of ensureCapacity with no
* size check or synchronization.
*/
void expandCapacity(int minimumCapacity) {
int newCapacity = (value.length + 1) * 2;
if (newCapacity < 0) {
newCapacity = Integer.MAX_VALUE;
} else if (minimumCapacity > newCapacity) {
newCapacity = minimumCapacity;
}
value = Arrays.copyOf(value, newCapacity);
}

名前の通り、配列のサイズを拡張するもの。
406デフォルトの名無しさん:2007/02/22(木) 21:41:31
>>403
頃す
407デフォルトの名無しさん:2007/02/22(木) 21:43:04
>>406
       _   ,--、l       ノ .     /_ノ  ヽ、_\
   ,--、_ノ:: `ー'::   、ミー---‐,,l     o゚((●)) ((●))゚o    プギャアアアアアアアアアアアアアア
  ,/   :::         i ̄ ̄  | .  /::::::⌒(__人__)⌒::::: \   
/           l:::    l:::   ll   |     |r┬-|     |    (⌒)
l   l .   l     !::    |:::   l   |     | |  |     |    ノ ~.レ-r┐、
|   l   l     |::    l:    l .  |     | |  |     |   ノ__  | .| | |
                         /_ノ  ヽ、_\     丶      l ,--、  _
   プギャアアアアアアアアアアアアアア     o゚((●)) ((●))゚o     l,,‐---ー彡,  ::`ー'  ::ゝ_,--、
                      /::::::⌒(__人__)⌒::::: \    |   ̄ ̄i        :::   ヽ,
               (⌒)     |     |r┬-|     |    ll    :::l   :::l         ^ヽ
           ,┌、-、!.~〈     |     | |  |     |    l    :::|   ::!   l    l   l
            | | | |  __ヽ、   |     | |  |     |   l     ::l  :::|    l   :l   |
               プギャアアアアアアアアアアアアアアアアアアアアアアアアアアアア!!!!!!!!!!!!!!!!!!!!!!!!!!!!
             / ̄ ̄^ヽ                  / ̄ ̄^ヽ
             l      l       ____        l      l
       _   ,--、l       ノ .     /_ノ  ヽ、_\     丶      l ,--、  _
   ,--、_ノ:: `ー'::   、ミー---‐,,l     o゚((●)) ((●))゚o     l,,‐---ー彡,  ::`ー'  ::ゝ_,--、
  ,/   :::         i ̄ ̄  | .  /::::::⌒(__人__)⌒::::: \    |   ̄ ̄i        :::   ヽ,
/           l:::    l:::   ll   |     |r┬-|     |    ll    :::l   :::l         ^ヽ
408デフォルトの名無しさん:2007/02/22(木) 21:44:04
ソースべたべた貼んなやハゲ!
自分で読ませろハゲ!
409デフォルトの名無しさん:2007/02/22(木) 21:56:39
>>404
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemtextstringbuilderclassappendtopic13.asp

                                                ∧_∧
                                        ∧ m9( ^Д^ )9m
                                     ∧_( ^Д \    /
           ∧_∧                  ∧_( ^ (つ.   _/ __ \_
       ∧_( ^Д∧_∧           ∧_( ^⊂   人⌒l(_/    \_)
       ( ^ (つ ⊂( ^Д∧_∧       (^Д( つ ノ ノ し(_)    ∧
  ∧_∧(○  |  ( /   ( ^Д^)     ⊂二、 \ヽ (_ノ、_ノ   プギャーーーッ!!
 ( ^.( ^||し⌒/ ⊂ ノG(   こ ∧_⊂(^Д`⊂(_(__)
⊂  (   | .|,ノ  し     (_,\  (  (^Д^ )  / / / 
 〈 〈 .)  (_)            (_ ⊂  (ノ  (ノ  (__)_)
 (__(__)__)             (__)_)

410デフォルトの名無しさん:2007/02/22(木) 21:57:20
>>404
    むぅ
  <⌒/ヽ-、___ 
/<_/____/


      ∧∧
      (^Д^) プギャーーーッ 
   m9  ノ   
    (つ ノ
     (ノ
  ___/(___
/   (____/




  <⌒/ヽ-、___ 
/<_/____/

411デフォルトの名無しさん:2007/02/22(木) 21:57:53
>>404
     プ、プ、プギャープギャプギャプ♪
    \    ププププギャプギャププギャプギャ/
       ♪  (^Д^) ♪
        _m9   )>_ キュッキュ♪
      /.◎。/◎。/|
      | ̄ ̄ ̄ ̄ ̄|
412デフォルトの名無しさん:2007/02/22(木) 21:58:28
AA厨のキチガイはどこまで暴れるのだろう。

頃す

と書くたびに自動的暴れる仕組みになっているのだろうか?
413デフォルトの名無しさん:2007/02/22(木) 21:59:07
ころころころ・・・・ぶっころころ頃すw
414デフォルトの名無しさん:2007/02/22(木) 22:01:30
ぷぎゃーが貼られると自分宛だと思ってしまう
かわいそうな>>341
415デフォルトの名無しさん:2007/02/22(木) 22:02:49
AAが貯まってきたから一度運営に投げてみっかな
416デフォルトの名無しさん:2007/02/22(木) 22:03:01
403 名前:デフォルトの名無しさん[] 投稿日:2007/02/22(木) 21:35:48
>>401
そうですか、すいませんでした。

では、あまり質問しすぎるのも申し訳ないので落ちることにします。
みなさん、どうもありがとうございました!

教えてもらった事を忘れないようにもっと勉強にはげみたいと思います。
あと、>>341のような、低脳・・・いや、すいません!これでは語弊がありますね。
>>341のような脳がかんばしくない人にはならないようにがんばります!

では、ありがとうございました。


こいつが犯罪者か
417デフォルトの名無しさん:2007/02/22(木) 22:03:08
400 名前:デフォルトの名無しさん[] 投稿日:2007/02/22(木) 21:19:29
>>397
ということはまぁまぁそんな感じということでいんですよね?

あと>>372のexpandCapacity(newCount);がよくわかりらないのです。
どうゆうことなんでしょう?expandCapacityってのを初めて見ました。
418デフォルトの名無しさん:2007/02/22(木) 22:03:56
394 名前:330[] 投稿日:2007/02/22(木) 21:02:08
>>379
なんかすごく

さらにここでappend()すると、char配列の長さは16のままで
文字列が123から123456となり、それがchar[]配列に入る。
countの値は6となる。

そして再びStringBuilderというオブジェクトがそのような値を参照し直す。

そしてtoString()メソッド

これは見てもわかるとおり、ただ単純にStringオブジェクトを新たに生成しているだけである。
public synchronized String toString() {
return new String(value, 0, count);
}

でtoStringメソッドが今までより少しわかりました。ありがとうございます。

結論は一言でいうとStringBufferクラスを介して新たなStringオブジェクトが作られ、str内の元あったchar型配列へのポインタへのポインタが上書きされるってことでいいんでしょうか?

>>392
すいません。プログラムやったことないので。


↑プログラムやったことがない奴が、ソフトウェア開発経験がある人間に「低脳」呼ばわりとは
しごく生意気な発言である。
419デフォルトの名無しさん:2007/02/22(木) 22:04:57
384 名前:330[] 投稿日:2007/02/22(木) 20:32:38
すいません・・・入門書を読み始めたばかりの初心者なので説明は大変ありがたいのですがあほなので中々イメージわきませんorz
難解すぎてレス遅いですが申し訳ないです。目を血走らせながら読ませていただいてます。

string str = "aa";
この時点ではstringクラスをnewでオブジェクト生成してStringクラスのコンストラクタに"aa"を引数として渡してchar型の配列に代入。
そのChar型配列へのポインタがstrに入る

str += "123";
ここでコンパイラが自動でStringBufferのオブジェクト生成開始。
str = new StringBuffer()

StringBufferメソッドがスーパークラスのAbstractStringBuilderへ仮引数int capacityへ16を実引数として渡して
char[16]のメモリが確保。変数valueにchar配列へのポインタ代入
ここまではあってますか?


しかもこのように、C言語すらわかっていない奴が他人様を低脳?

なに巫山戯たこと言ってるんだ。もう二度と教えないぞ
420デフォルトの名無しさん:2007/02/22(木) 22:05:00
seito(生徒)というクラスを作り
中身の要素を
String namae ;//名前
int tokuten ;//得点
にしました。

seitoの配列を宣言して生徒の人数分newして配列に繋げました。

得点の多い順でソートする場合。

例えば、普通のintの配列では
Arrays.sort(data);
がありますが、
こんな具合に一発でソートできるクラスJavaにありませんか。

よろしくお願いします<m(__)m>
421デフォルトの名無しさん:2007/02/22(木) 22:05:34
384 名前:330[] 投稿日:2007/02/22(木) 20:32:38
すいません・・・入門書を読み始めたばかりの初心者なので説明は大変ありがたいのですがあほなので中々イメージわきませんorz
難解すぎてレス遅いですが申し訳ないです。目を血走らせながら読ませていただいてます。

string str = "aa";
この時点ではstringクラスをnewでオブジェクト生成してStringクラスのコンストラクタに"aa"を引数として渡してchar型の配列に代入。
そのChar型配列へのポインタがstrに入る

str += "123";
ここでコンパイラが自動でStringBufferのオブジェクト生成開始。
str = new StringBuffer()

StringBufferメソッドがスーパークラスのAbstractStringBuilderへ仮引数int capacityへ16を実引数として渡して
char[16]のメモリが確保。変数valueにchar配列へのポインタ代入
ここまではあってますか?


これもだ。まったくふざけている。
Stringをstringと下記、ポインタと参照との違いもわからないクズ。
死ねや
422デフォルトの名無しさん:2007/02/22(木) 22:06:01
まあまあ。悔しいのは判るけどおちつけよアホの>>341。勉強になっただろ。
423デフォルトの名無しさん:2007/02/22(木) 22:06:14
384 名前:330[] 投稿日:2007/02/22(木) 20:32:38
すいません・・・入門書を読み始めたばかりの初心者なので説明は大変ありがたいのですがあほなので中々イメージわきませんorz
難解すぎてレス遅いですが申し訳ないです。目を血走らせながら読ませていただいてます。

string str = "aa";
この時点ではstringクラスをnewでオブジェクト生成してStringクラスのコンストラクタに"aa"を引数として渡してchar型の配列に代入。
そのChar型配列へのポインタがstrに入る

str += "123";
ここでコンパイラが自動でStringBufferのオブジェクト生成開始。
str = new StringBuffer()

StringBufferメソッドがスーパークラスのAbstractStringBuilderへ仮引数int capacityへ16を実引数として渡して
char[16]のメモリが確保。変数valueにchar配列へのポインタ代入
ここまではあってますか?



入門書レベルのくそがきのクズが生意気な口を叩くんじゃねえよボケ
殺されたいか? このクズ? 痛い目に遭わないとわからんのか。
424デフォルトの名無しさん:2007/02/22(木) 22:07:16
354 名前:330[] 投稿日:2007/02/22(木) 19:31:46
>>349
>123456がStringBuffer型からString型に変換されて strには123456という文字列が代入される。
↑は結果、そうなるのは理解できるんですが、string型の変数には文字が直接入ってるわけではなく参照用のIDが入ってるんですよね?

str

ID(xxっぁslkdk)→メモリ上のデータ

ですよね?
てことはこのIDは最初のStringオブジェクトを生成したときのIDなのか、
それともStringBuffer展開後はID書き換えられてるんでしょうか?



こんな質問してくる奴のほうがよっぽど低脳。
425デフォルトの名無しさん:2007/02/22(木) 22:07:29
ということで、さっさと死ねや!
426デフォルトの名無しさん:2007/02/22(木) 22:08:24

↓こんなこともわからんやつのほうがよっぽど低脳。

頃されなきゃわからないんだろうなこういう頭が悪いチョンは
330 名前:デフォルトの名無しさん[] 投稿日:2007/02/22(木) 18:45:46
>>329
入ってないんですかぁ。
じゃあオブジェクトは一つしか入ってないんですか?

str += "456";
の時、コンパイラが内部で、

str = new StringBuffer().append(str).append("456").toString();
ってやってますよね?
このtoString()の戻り値っていうのはchar型の文字なんですか?
それともストリングオブジェクトが返ってきてるんですか?
API読むと「文字列表現」を返すメソッド。 ってあるんですけど、どういう風に文字列表現かえしてるのかわからなくて。


427デフォルトの名無しさん:2007/02/22(木) 22:08:43
必死だなw
428デフォルトの名無しさん:2007/02/22(木) 22:08:43
↓もうこいつさっさと死ねよ


327 名前:デフォルトの名無しさん[] 投稿日:2007/02/22(木) 18:02:34
すいません、ちょっと教えてください

String str = "aa";
str += "123";
str += "456";

ってやったときstrにはStringオブジェクトが三つ入ってますよね?
このStrに入ってる三つのオブジェクトへの参照用IDを見るにはどうしたらいいんですか?
outprintだとaa123456ってでるだけでわからなくて・・orz

429デフォルトの名無しさん:2007/02/22(木) 22:09:58
>>422
アホは>>330のことたろう。
>>330はアホじゃないといういのか。
それだけは絶対に許すべきじゃない
430デフォルトの名無しさん:2007/02/22(木) 22:10:10
>>330、さっさと出て来いや
431デフォルトの名無しさん:2007/02/22(木) 22:11:01
AAの次はコピペか
432デフォルトの名無しさん:2007/02/22(木) 22:11:06
>>330
m9(^Д^) プギャーーーッ
433デフォルトの名無しさん:2007/02/22(木) 22:11:13
連投きもいんですけどぉ
434デフォルトの名無しさん:2007/02/22(木) 22:11:22
>>330の人気に嫉妬
435デフォルトの名無しさん:2007/02/22(木) 22:11:22
これはC#厨でしょ
436デフォルトの名無しさん:2007/02/22(木) 22:11:41
>>434
あれで嫉妬したらお前の人生終わり
437デフォルトの名無しさん:2007/02/22(木) 22:11:49
戦いが始まったな
438デフォルトの名無しさん:2007/02/22(木) 22:12:35
ただAA貼って相手の反応を見て楽しんで自己満足するのがかれの唯一の楽しみなのか。
439デフォルトの名無しさん:2007/02/22(木) 22:13:15
つまり、質問が曖昧な奴には何も教えない方がいいってことだね。

恩を仇で返すような低脳だから。
朝鮮半島にすむ馬鹿民族みたいだ
440デフォルトの名無しさん:2007/02/22(木) 22:14:43
>>416-419
>>421
>>423-424
>>428-430

削除依頼して来いカスw
こいつは低能じゃないよ
低能だと少しは能があるみたいじゃないか

こいつは無能だw
441デフォルトの名無しさん:2007/02/22(木) 22:16:06
まぁまぁ>>341も落ち着けよ。
怒ってるのみて>>403が爆笑してるのが目に浮かぶぞwww
442デフォルトの名無しさん:2007/02/22(木) 22:17:28
>>420にも答えてくださいませ(^^)/~~~
443デフォルトの名無しさん:2007/02/22(木) 22:19:28

StringBuffer#append
のリターンがvoidだと思ってるのは入門書レベルの低脳ではないのですかw
444デフォルトの名無しさん:2007/02/22(木) 22:21:47
あれー? ほんとだ。C# の StringBuilder#Append も StringBuilder を返すやん。
俺はなにを間違えたんだ……?
445デフォルトの名無しさん:2007/02/22(木) 22:23:43
446デフォルトの名無しさん:2007/02/22(木) 22:27:05
なんか最近どっかのスレでこういう暴れ方するやつ見たことあるなあ。
マイクロソフトに罵詈雑言浴びせてた奴・・・
447デフォルトの名無しさん:2007/02/22(木) 22:31:34
>>420
Seito(大文字にすべし)にComparableインターフェイスを実装するか、
Arrays.sortの第二引数に、大小を返すComparatorインスタンスを与える。
448デフォルトの名無しさん:2007/02/22(木) 22:35:23
Comparatorの方がおすすめ。
Comparableだと違う並び方にするときに困る。
449デフォルトの名無しさん:2007/02/22(木) 22:45:27
>>440-441
そんなことより、お前、自分の貼ったAAの削除依頼して来いカスw
すべてお前が同一人物だということはお見通しだw
450デフォルトの名無しさん:2007/02/22(木) 22:46:24
>>446
この手のAA貼る奴は逆にM$に味方して非M$陣営に罵声雑言をするのが特徴だよ。
何年も前に見かけたあれだね。
451デフォルトの名無しさん:2007/02/22(木) 22:47:18
>>443
AA貼り厨が何を言っているんだw
452デフォルトの名無しさん:2007/02/22(木) 22:51:37
>>445さん >>447さん >>448さん
ありがとうございます。

("▽"*) アヒョ
453デフォルトの名無しさん:2007/02/22(木) 22:55:25
>>422>>414>>409-411もすべて同一人物
>>407 >>403 >>400 >>394-395 >>330 >>381-384 >>374
>>368-370 >>356 >>358 >>354 >>350 >>330 >>327


もそう。

これは昔から変わってないね

>>327から始まる彼の手口をよく見てみましょう。
彼は質問者のフリをしてまでスレを荒らしたいようですね。
なぜ彼がここまでやるのか理解しがたいことです。
彼は知的障害者なのかもしれません。
そして回答者がちょっとでも間違えるとAAを貼り付けて暴走する。
ためしに、あなたもわざと間違えた回答をしてみましょう。
すると、怒濤のようにAA荒らしが始まる様子を観察できます。
そして反論すると、自作自演して、あれこれ言い訳を言ってきます。

これで、彼の手口がもうわかったでしょう。

彼はこのスレをただストレス解消のためだけに使っているだけなのです。
Javaの勉強をしたいのではなく、過去に他のスレでJavaとC#を巡る
某醜い争いで頭がおかしくなってサザエさんのAAをJavaスレに貼りつけて
Javaスレを荒らすようになった彼とまったく同一人物です。



454デフォルトの名無しさん:2007/02/22(木) 22:56:09
よーし、じゃあ俺もこれから馬鹿な質問をする初心者には
わざと嘘を教えちゃうぞー
455デフォルトの名無しさん:2007/02/22(木) 22:56:42
俺javaは詳しいよ。
append()は戻り値がvoidなので新たにオブジェクトを作らない。
よーく考えろ。

 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\| ̄ ̄ ̄ ̄ ̄ ̄
                        _,,t-‐‐-、,-‐‐-、
                     三'::::::............... .....::::::`y,.
                     ナ::::::::::::::::::::::::::::::::: :::::::::::::ヾ
              | ̄|   V::::::::::::::::_{{ ({∫∬ノノjヾ:::::{
           | ̄| | ̄|   ナ::::::::::::::i`__,,,,,,,ァ_  _,,,,,_ t;;:ヌ
           |  | |  |  イヘ::::::(ヾ~!,ャt、 !'''i ィtン )=f }f
           |  | |  |  i {t)テ" ヘ' '___,イ ヽ_/ 介'
           |  | |  | _,rヘ_,j|!'     /ー--''!     |'
           |,.ィ―'''' ̄ /| |       /二ク     !
           /;;:::'';;::''::;;:/ { ! 、     ヾニン   ノ\
            /'''::::;r|''':::;;;|  | ! \       _,,./|::;;'''\
        /:;;/ |;;;''::;;|   丶\  `__>-ー´   !;;;:'''::iヽ、
          i/   |'::;;;;''|      三 ―''"       !''::;;;;| /ヽ
        /⌒ヽ  |;;''':::;|       \            !;;::''|/  i
         /     \{'';;;::''}          ̄二ニ=    !::;;|   |
        /ヘ     |;;:::::;{            ‐-      !/   |
        /  i     |:::;;;''!             ー       !  / |
     /   l     |;;'';イ                   }   {、
     〉、      ∧テ{ ヽ  _   _,,,,;;;;;:::-==ニ;;;_   ノ __,イ´
      / \_    //レ!      ̄           ̄ { ̄  |
456デフォルトの名無しさん:2007/02/22(木) 22:59:27
>>449
自演じゃねーよカス
457デフォルトの名無しさん:2007/02/22(木) 23:01:44
>>455wwっうぇwwwww
458デフォルトの名無しさん:2007/02/22(木) 23:06:48
>>341>>403もスレの趣旨と関係ないことで騒いでんじゃねーよカス。うざい。
>>403の態度も気にいらないし、>>341も自分が低脳だからってギャーギャーわめくな。
おまえが偉そうに「void返すぞ、よく考えろ」とか調子こいたの原因じゃねーか。
まぁ>>403の「脳が芳しくない」は笑ったがw
459デフォルトの名無しさん:2007/02/22(木) 23:18:38
ここまで飛ばし読み
460デフォルトの名無しさん:2007/02/22(木) 23:23:12
>>455
それがお前の姿なのかw
AA厨よ
461デフォルトの名無しさん:2007/02/22(木) 23:23:38
>>458
AA厨まだしつこく自演しているのかw
462デフォルトの名無しさん:2007/02/22(木) 23:29:22
パケ代に易しくないので最悪板にで行ってくれ…
463デフォルトの名無しさん:2007/02/22(木) 23:33:39
携帯電話からアクセスしているのか

奴の病気はなおらんからなあ
464デフォルトの名無しさん:2007/02/22(木) 23:34:14
やつのAA病を回避するには、2chのかわりにブログ + RSSで
情報収集した方が速いかもしれんぞ
465デフォルトの名無しさん:2007/02/22(木) 23:43:45
どなたか、よろしければ>>357を教えてもらえると
助かります・・・
466デフォルトの名無しさん:2007/02/22(木) 23:48:12
>>465
以下、行が尽きるまで繰り返す。
1. 1行読む。
2. その行が
→書き換えるべき行だったら、書き換えた内容を出力。
→書き換えるべき行でなかったら、そのまま出力。

467デフォルトの名無しさん:2007/02/22(木) 23:48:38
指定行までループで回すじゃだめなの?
468デフォルトの名無しさん:2007/02/22(木) 23:50:14
FireReaderつかってるか?
469デフォルトの名無しさん:2007/02/22(木) 23:50:40
あー、出力をどこにすればいいかわからんのか。
適当な名前のとこに書き出しておいて、終わってから本来の名前に
改名。
470465:2007/02/22(木) 23:59:32
いろいろと指摘ありがとうございます。
とりあえずまた色々といじってみます。
教えていただきありがとうございました
471デフォルトの名無しさん:2007/02/23(金) 00:01:12
FireReaderで読み込んでStringにツッコミ、
if文や正規表現で判定して別んとこに出力。
「別んとこ」ってのはStringWriterでもStringBuilderにするのか、
それともFileWriterで別ファイルに書くのかしらんが

472デフォルトの名無しさん:2007/02/23(金) 01:00:03
>>471
StringBuilderのappendは使いますか?
473デフォルトの名無しさん:2007/02/23(金) 01:07:34
はっきり言って俺はjavaは詳しいよ。
append()は戻り値がvoidなので新たにオブジェクトを作らない。
よーく考えろ。

 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\| ̄ ̄ ̄ ̄ ̄ ̄
                        _,,t-‐‐-、,-‐‐-、
                     三'::::::............... .....::::::`y,.
                     ナ::::::::::::::::::::::::::::::::: :::::::::::::ヾ
              | ̄|   V::::::::::::::::_{{ ({∫∬ノノjヾ:::::{
           | ̄| | ̄|   ナ::::::::::::::i`__,,,,,,,ァ_  _,,,,,_ t;;:ヌ
           |  | |  |  イヘ::::::(ヾ~!,ャt、 !'''i ィtン )=f }f
           |  | |  |  i {t)テ" ヘ' '___,イ ヽ_/ 介'
           |  | |  | _,rヘ_,j|!'     /ー--''!     |'
           |,.ィ―'''' ̄ /| |       /二ク     !
           /;;:::'';;::''::;;:/ { ! 、     ヾニン   ノ\
            /'''::::;r|''':::;;;|  | ! \       _,,./|::;;'''\
        /:;;/ |;;;''::;;|   丶\  `__>-ー´   !;;;:'''::iヽ、
          i/   |'::;;;;''|      三 ―''"       !''::;;;;| /ヽ
        /⌒ヽ  |;;''':::;|       \            !;;::''|/  i
         /     \{'';;;::''}          ̄二ニ=    !::;;|   |
        /ヘ     |;;:::::;{            ‐-      !/   |
        /  i     |:::;;;''!             ー       !  / |
     /   l     |;;'';イ                   }   {、
     〉、      ∧テ{ ヽ  _   _,,,,;;;;;:::-==ニ;;;_   ノ __,イ´
      / \_    //レ!      ̄           ̄ { ̄  |

474デフォルトの名無しさん:2007/02/23(金) 01:50:37
>>473
おまえはそんなにでぶだったのかAA厨よ
475デフォルトの名無しさん:2007/02/23(金) 01:51:13
>>472
わざと、「使える」と言っておいてやるよw
476デフォルトの名無しさん:2007/02/23(金) 01:56:22
ちょっとしたテストをしてみることにしたw

さて、彼はどんな反応をするかw
477デフォルトの名無しさん:2007/02/23(金) 02:18:32
あるClassAというクラスが宣言されている。そのなかで public ClassA(String name) ・・・という
コンストラクタが定義されている。

別のクラス(MainClass)のフィールドで以下のようなインスタンス変数を宣言し初期化する。
ClassA abc = new ClassA("英語");

このとき自分は変数abcが参照するインスタンスが生成されるものだと思っていたのですが
生成されないようです。それはMainClassのインスタンスが新たに生成されない以上、abcの
インスタンスも生成されないというのです。
だとしたらMainClassのフィールドでインスタンス変数である基本データ型(たとえばint a = 100;)
とした場合でも、MainClassのインスタンスが作られるまで、aは100で初期化されないのでしょうか。
478デフォルトの名無しさん:2007/02/23(金) 02:26:59
そりゃあ「インスタンス変数」って言うぐらいだからねえ
479デフォルトの名無しさん:2007/02/23(金) 02:27:55
はっきり言って俺はアスキーアート荒らしには詳しいよ。
スレを荒らせば荒らすほど俺は偉くなれるんだ。
よーく考えろ。

 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\| ̄ ̄ ̄ ̄ ̄ ̄
                        _,,t-‐‐-、,-‐‐-、
                     三'::::::............... .....::::::`y,.
                     ナ::::::::::::::::::::::::::::::::: :::::::::::::ヾ
              | ̄|   V::::::::::::::::_{{ ({∫∬ノノjヾ:::::{
           | ̄| | ̄|   ナ::::::::::::::i`__,,,,,,,ァ_  _,,,,,_ t;;:ヌ
           |  | |  |  イヘ::::::(ヾ~!,ャt、 !'''i ィtン )=f }f
           |  | |  |  i {t)テ" ヘ' '___,イ ヽ_/ 介'
           |  | |  | _,rヘ_,j|!'     /ー--''!     |'
           |,.ィ―'''' ̄ /| |       /二ク     !
           /;;:::'';;::''::;;:/ { ! 、     ヾニン   ノ\
            /'''::::;r|''':::;;;|  | ! \       _,,./|::;;'''\
        /:;;/ |;;;''::;;|   丶\  `__>-ー´   !;;;:'''::iヽ、
          i/   |'::;;;;''|      三 ―''"       !''::;;;;| /ヽ
        /⌒ヽ  |;;''':::;|       \            !;;::''|/  i
         /     \{'';;;::''}          ̄二ニ=    !::;;|   |
        /ヘ     |;;:::::;{            ‐-      !/   |
        /  i     |:::;;;''!             ー       !  / |
     /   l     |;;'';イ                   }   {、
     〉、      ∧テ{ ヽ  _   _,,,,;;;;;:::-==ニ;;;_   ノ __,イ´
      / \_    //レ!      ̄           ̄ { ̄  |

480デフォルトの名無しさん:2007/02/23(金) 02:36:36
はっきり言って俺はアスキーアート荒らしには詳しいよ。
スレを荒らせば荒らすほど俺は偉くなれるんだ。
よーく考えろ。

 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\| ̄ ̄ ̄ ̄ ̄ ̄
                        _,,t-‐‐-、,-‐‐-、
                     三'::::::............... .....::::::`y,.
                     ナ::::::::::::::::::::::::::::::::: :::::::::::::ヾ
              | ̄|   V::::::::::::::::_{{ ({∫∬ノノjヾ:::::{
           | ̄| | ̄|   ナ::::::::::::::i`__,,,,,,,ァ_  _,,,,,_ t;;:ヌ
           |  | |  |  イヘ::::::(ヾ~!,ャt、 !'''i ィtン )=f }f
           |  | |  |  i {t)テ" ヘ' '___,イ ヽ_/ 介'
           |  | |  | _,rヘ_,j|!'     /ー--''!     |'
           |,.ィ―'''' ̄ /| |       /二ク     !
           /;;:::'';;::''::;;:/ { ! 、     ヾニン   ノ\
            /'''::::;r|''':::;;;|  | ! \       _,,./|::;;'''\
        /:;;/ |;;;''::;;|   丶\  `__>-ー´   !;;;:'''::iヽ、
          i/   |'::;;;;''|      三 ―''"       !''::;;;;| /ヽ
        /⌒ヽ  |;;''':::;|       \            !;;::''|/  i
         /     \{'';;;::''}          ̄二ニ=    !::;;|   |
        /ヘ     |;;:::::;{            ‐-      !/   |
        /  i     |:::;;;''!             ー       !  / |
     /   l     |;;'';イ                   }   {、
     〉、      ∧テ{ ヽ  _   _,,,,;;;;;:::-==ニ;;;_   ノ __,イ´
      / \_    //レ!      ̄           ̄ { ̄  |
481デフォルトの名無しさん:2007/02/23(金) 02:37:29
はっきり言って俺はAA荒らしには詳しいよ。
スレを荒らせば荒らすほど俺は偉くなれるんだ。
よーく考えろ。

 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\| ̄ ̄ ̄ ̄ ̄ ̄
                        _,,t-‐‐-、,-‐‐-、
                     三'::::::............... .....::::::`y,.
                     ナ::::::::::::::::::::::::::::::::: :::::::::::::ヾ
              | ̄|   V::::::::::::::::_{{ ({∫∬ノノjヾ:::::{
           | ̄| | ̄|   ナ::::::::::::::i`__,,,,,,,ァ_  _,,,,,_ t;;:ヌ
           |  | |  |  イヘ::::::(ヾ~!,ャt、 !'''i ィtン )=f }f
           |  | |  |  i {t)テ" ヘ' '___,イ ヽ_/ 介'
           |  | |  | _,rヘ_,j|!'     /ー--''!     |'
           |,.ィ―'''' ̄ /| |       /二ク     !
           /;;:::'';;::''::;;:/ { ! 、     ヾニン   ノ\
            /'''::::;r|''':::;;;|  | ! \       _,,./|::;;'''\
        /:;;/ |;;;''::;;|   丶\  `__>-ー´   !;;;:'''::iヽ、
          i/   |'::;;;;''|      三 ―''"       !''::;;;;| /ヽ
        /⌒ヽ  |;;''':::;|       \            !;;::''|/  i
         /     \{'';;;::''}          ̄二ニ=    !::;;|   |
        /ヘ     |;;:::::;{            ‐-      !/   |
        /  i     |:::;;;''!             ー       !  / |
     /   l     |;;'';イ                   }   {、
     〉、      ∧テ{ ヽ  _   _,,,,;;;;;:::-==ニ;;;_   ノ __,イ´
      / \_    //レ!      ̄           ̄ { ̄  |
482デフォルトの名無しさん:2007/02/23(金) 02:40:32
はっきり言って俺は荒らしには詳しいよ。
スレを荒らせば荒らすほど俺は偉くなれるんだ。
よーく考えろ。

 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\| ̄ ̄ ̄ ̄ ̄ ̄
                        _,,t-‐‐-、,-‐‐-、
                     三'::::::............... .....::::::`y,.
                     ナ::::::::::::::::::::::::::::::::: :::::::::::::ヾ
              | ̄|   V::::::::::::::::_{{ ({∫∬ノノjヾ:::::{
           | ̄| | ̄|   ナ::::::::::::::i`__,,,,,,,ァ_  _,,,,,_ t;;:ヌ
           |  | |  |  イヘ::::::(ヾ~!,ャt、 !'''i ィtン )=f }f
           |  | |  |  i {t)テ" ヘ' '___,イ ヽ_/ 介'
           |  | |  | _,rヘ_,j|!'     /ー--''!     |'
           |,.ィ―'''' ̄ /| |       /二ク     !
           /;;:::'';;::''::;;:/ { ! 、     ヾニン   ノ\
            /'''::::;r|''':::;;;|  | ! \       _,,./|::;;'''\
        /:;;/ |;;;''::;;|   丶\  `__>-ー´   !;;;:'''::iヽ、
          i/   |'::;;;;''|      三 ―''"       !''::;;;;| /ヽ
        /⌒ヽ  |;;''':::;|       \            !;;::''|/  i
         /     \{'';;;::''}          ̄二ニ=    !::;;|   |
        /ヘ     |;;:::::;{            ‐-      !/   |
        /  i     |:::;;;''!             ー       !  / |
     /   l     |;;'';イ                   }   {、
     〉、      ∧テ{ ヽ  _   _,,,,;;;;;:::-==ニ;;;_   ノ __,イ´
      / \_    //レ!      ̄           ̄ { ̄  |
483デフォルトの名無しさん:2007/02/23(金) 02:40:48
やっぱし、AA厨はその程度なんだなw
484デフォルトの名無しさん:2007/02/23(金) 02:41:28
C#厨がスレを荒らしているってことだろw

C#はこんな朗報があってよかったなw

#お知らせ# スレタイに#が使えるようになりました。
http://pc10.2ch.net/test/read.cgi/tech/1171342757/
485デフォルトの名無しさん:2007/02/23(金) 02:44:08
コアJava応用を買ったんですが、
むずかしい。
どういった感じでよんでいけばよいですか?
486デフォルトの名無しさん:2007/02/23(金) 02:46:03
いつ頃の本?
487デフォルトの名無しさん:2007/02/23(金) 02:52:41
>>477
インスタンス化しないで使うなら static。
488デフォルトの名無しさん:2007/02/23(金) 02:53:42
staticな奴はつまらん
489デフォルトの名無しさん:2007/02/23(金) 02:55:01
Swingで作成したクラスをメインクラスのJScrollPanelで表示させたいのですが、よくわからんのです。
どうやったらいいのかご教授ください
490デフォルトの名無しさん:2007/02/23(金) 03:04:21
NetBeansを起動してマウスでJScrollPaneを選んでドラッグする。

491デフォルトの名無しさん:2007/02/23(金) 03:54:21
それ面白いとおもったの?
492デフォルトの名無しさん:2007/02/23(金) 03:57:06
double型の値をラップする方法は
Doubleクラスのコンストラクタを使用する方法と
Dobule#valueOf(double)を使う方法と、二通りある。
Javadocには、valueOfを使うと、過去に使ったことがある値はキャッシュされるので
new Double()ではなくvalueOf()使った方がいいのでそっちを使えと書いてある。

しかし、ソースコードを見ると、
valueOf(double)は タダ単に 内部でnew Double(double)を返しているだけ。
帰って遅くなるように見えてしまう。
これ本当に早い?

493デフォルトの名無しさん:2007/02/23(金) 04:11:24
「likely」とあるから、valueOfにしといたほうが、使われる実装に
よっては早くなるかもよ、って感じじゃない?

Sunのはあくまでリファレンス実装だから馬鹿正直に作ってあるの
かも。autoboxingではキャッシュ使ってた気がするが。
494デフォルトの名無しさん:2007/02/23(金) 04:19:41
private static final long start = System.nanoTime();
public static void main(String[] args) {
Double d = null;
for (double i = -10000000.0; i < 10000000.0; i += 0.1) {
d = new Double(i * i + 1 - (i / (2 * i)));
}
long end = System.nanoTime() - start;
System.out.println("new Double() : " + (end / 1000000000.0));
}


private static final long start = System.nanoTime();
public static void main(String[] args) {
Double d = null;
for (double i = -10000000.0; i < 10000000.0; i += 0.1) {
d = Double.valueOf(i * i + 1 - (i / (2 * i)));
}
long end = System.nanoTime() - start;
System.out.println("Double.valueOf() : " + (end / 1000000000.0));
}


これでベンチマークした結果。どちらも、一方が遅くなったり早くなったりの繰り返し。
-serverオプションつけるとどちらも倍近く早くなってますます、どちらがパフォーマンスが
良いのかわからなくなってきた。
495デフォルトの名無しさん:2007/02/23(金) 04:29:18
>>489
デモの Notepad.java でも眺めてみたら?
496デフォルトの名無しさん:2007/02/23(金) 04:31:52
…ってあれ JScrollPane だっけ?
間違ってたら失礼した
497デフォルトの名無しさん:2007/02/23(金) 06:53:08
>>479-482
きみぃ あたまぁだいじょーぶぅ?
498デフォルトの名無しさん:2007/02/23(金) 07:35:06
wikiにまとめられてるんであんまり意味はないような気もするけど、
ついでだったんで一応作ってみた
http://logarchive.web.fc2.com/tech/java_qanda/index.html
499デフォルトの名無しさん:2007/02/23(金) 09:46:09
1000行ぐらいのテキストファイルを読み取り、名前を変えて
新しく出力したのですが800行ほどしか出力されません
なにか対処法はあるのでしょうか?
500デフォルトの名無しさん:2007/02/23(金) 10:16:14
Closeしてる?
501デフォルトの名無しさん:2007/02/23(金) 11:51:04
トムとキャットがスタートサービスしなひorz
502デフォルトの名無しさん:2007/02/23(金) 13:24:30
>>494
ループの所を改造した結果。(-serverオプションあり)
for (double i = -10000000.0; i < 10000000.0; i += 0.1) {
for (double j = -100.0; i < 100.0; i += 0.1) {
d = new Double(i * i + 1 - (i / (2 * i)) + j * j * j);
}
}

new Double() : 10.5399189
Double.valueOf() : 11.008194338

valueOfのほうが若干遅い
503デフォルトの名無しさん:2007/02/23(金) 13:35:59
>>502
その程度なら誤差の範囲内じゃね?
100倍とか 1000倍の差がついたってんなら話は別だけど。

ってか、i * i + 1 - (i / (2 * i)) + j * j * j の計算部分が時間食ってそうで、
valueOf と new Double の比較の意味が薄れてそうな気がしなくもない。
504デフォルトの名無しさん:2007/02/23(金) 14:36:58
for (double j = -100.0; j < 100.0; j += 0.1) {
のところがおかしいので訂正。


Double.valueOf() : 248.729385718
new Double() : 273.893847123
505デフォルトの名無しさん:2007/02/23(金) 14:37:17
うーむ、もうちょっと調査した方がいいかも。
506デフォルトの名無しさん:2007/02/23(金) 14:53:16
サーブレット関連のパッケージが存在しないんだけど、何が原因でしょうか?よろしくおねがいてぃーちゃー
507デフォルトの名無しさん:2007/02/23(金) 14:55:33
>>506
EE 関連の開発環境がない。
508デフォルトの名無しさん:2007/02/23(金) 14:59:51
質問の仕方に問題有りだな
509デフォルトの名無しさん:2007/02/23(金) 15:00:42
$TOMCAT_HOME/common/lib/jsp-api.jar
$TOMCAT_HOME/common/lib/servlet-api.jar
をクラスパスに放り込む
510デフォルトの名無しさん:2007/02/23(金) 15:00:47
質問の仕方に問題有りだな
511デフォルトの名無しさん:2007/02/23(金) 15:01:59
$TOMCAT_HOME/common/lib/jsp-api.jar
$TOMCAT_HOME/common/lib/servlet-api.jar
をクラスパスに放り込む
512デフォルトの名無しさん:2007/02/23(金) 15:03:31
なんか最近書込に失敗して連投になるぞ
513デフォルトの名無しさん:2007/02/23(金) 15:20:56
Boolean, Character, byteは間違いなく


-128〜127の範囲内であればShort, Integer, LongはvalueOf使った方が速いことがわかる。

しかし、Float, Doubleは? もうわからない。
514デフォルトの名無しさん:2007/02/23(金) 15:24:20
>>513
そりゃ、インスタンス使い回ししてるからね。
これは、J2SE1.4にもバックポートしてほしいんだけどなぁ
515デフォルトの名無しさん:2007/02/23(金) 15:28:37
ちなみにBigIntegerの場合
値が -17〜17の範囲内であれば、valueOfのほうがいい。
それ以外では、new BigInteger(long)でもかわらないかもしれない。
longに入らない値はnew BigInteger(String)などを使う。
516デフォルトの名無しさん:2007/02/23(金) 15:29:12
EffectiveJavaを読んでいるとファクトリーメソッドに拘るようになってしまうよ
517デフォルトの名無しさん:2007/02/23(金) 15:32:29
Java のバイトコードについての詳しい資料は、どこかに転がってませんか?
ttp://www.amazon.co.jp/dp/489471356X/ は、ちょっと古いみたいなので……
518デフォルトの名無しさん:2007/02/23(金) 15:33:17
>>513
まぁ、実装依存なんだけどね。

言語仕様はBoxing変換で必ず valueOf() を使えとも書いてないし、
API仕様 でも valueOf で -128〜127 は必ずキャッシュしろとも書いてない。
519デフォルトの名無しさん:2007/02/23(金) 15:34:17
Sunのはあくまでリファレンス実装だってこと、つい忘れてしまうな。
520デフォルトの名無しさん:2007/02/23(金) 15:34:50
質問の仕方に問題有りだな
521デフォルトの名無しさん:2007/02/23(金) 15:35:31
$TOMCAT_HOME/common/lib/jsp-api.jar
$TOMCAT_HOME/common/lib/servlet-api.jar
をクラスパスに放り込む
522デフォルトの名無しさん:2007/02/23(金) 15:38:00
0のときはBigInteger.ZERO, BigDecimal.ZERO
1のときはBigInteger.ONE, BigDecimal.ONE
2のときはBigInteger.TWO
10のときはBigInteger.TEN, BigDecimal.TEN


しかしなぜかTWOはprivate。せっかくなんだからpublicにして欲しかった。




(new BigDecimal(double)は10進2進変換誤差がでるので問題外。new BigDecimal(String)しかない)



523デフォルトの名無しさん:2007/02/23(金) 15:40:06
>>514
それはさすがに無理だと思う。
新しいAPIの追加や大幅な変更はメジャーバージョンアップでないと
駄目なのでは

524デフォルトの名無しさん:2007/02/23(金) 15:41:44
$TOMCAT_HOME/common/lib/jsp-api.jar
$TOMCAT_HOME/common/lib/servlet-api.jar
をクラスパスに放り込む

連投すんなハゲ!
525デフォルトの名無しさん:2007/02/23(金) 15:43:50
>>517
公式情報ってーと、JSR-202 とかぐらい?
http://www.jcp.org/en/jsr/detail?id=202
526デフォルトの名無しさん:2007/02/23(金) 15:55:20
>>524
そいつは、昨日ののAA厨の仕業だと思うよ。
他人のレスをコピペしているだけ
527デフォルトの名無しさん:2007/02/23(金) 15:55:47
>>523
ああ、分かっている。言ってみただけなんだ・・・
結構、ioに効く効率化のはずだからな・・・
528デフォルトの名無しさん:2007/02/23(金) 16:00:58
CLASSPATHが間違ってただけでした。ありがとぅ〜ん
529デフォルトの名無しさん:2007/02/23(金) 16:18:26
>>525
実に的確な情報ありがとうございます。
まあ、公式じゃなくても良かったんですがw
530524:2007/02/23(金) 16:19:38
>>526
AA書き込んでたの俺だボケ!
531デフォルトの名無しさん:2007/02/23(金) 16:23:24
これは騙りかな?

それとも自白かな?
532デフォルトの名無しさん:2007/02/23(金) 16:25:08
巣にお帰り

C#って死滅する理由がないよね! Part4
http://pc10.2ch.net/test/read.cgi/tech/1042464104/
533デフォルトの名無しさん:2007/02/23(金) 16:59:24
おれが過去の質問コピペしてやんないと
お前らやることなくなるだろ。
534デフォルトの名無しさん:2007/02/23(金) 17:54:57
>>533
卒業しろよw
535デフォルトの名無しさん:2007/02/23(金) 17:55:20
余計なお世話。

他のスレでは新しい情報はいくらでもある。

お前は荒らしの言い訳してないでC#スレで戯れていればいい。
536デフォルトの名無しさん:2007/02/23(金) 18:39:07
いつもうれしそうに回答してるのに?
537デフォルトの名無しさん:2007/02/23(金) 18:45:17
回答者がうれしそうに回答している姿をみるのが俺たちの一番の喜びだ
538デフォルトの名無しさん:2007/02/23(金) 18:55:20
>>533
自分が構って欲しいだけのくせにw
539デフォルトの名無しさん:2007/02/23(金) 19:06:43
お客様お喜びの声
>>416->>430
540デフォルトの名無しさん:2007/02/23(金) 19:10:11
Java質問・相談スレッドに届けられたお客様の声の一部をご紹介します。
みなさまの声に支えられこれからも簡単な質問を提供していきますので、 ぜひ応援してくださいね!
541499:2007/02/23(金) 19:18:10
>>500
ありがとうございます!
closeしたら成功しました
542デフォルトの名無しさん:2007/02/23(金) 19:18:14
>>341へ(脳がかんばしくない方へ)
お客様から喜びの声が届いております。

あと、>>341のような、低脳・・・いや、すいません!これでは語弊がありますね。
>>341のような脳がかんばしくない人にはならないようにがんばります!
543デフォルトの名無しさん:2007/02/23(金) 20:56:48
きみも一人で自作自演大変だね。
君の大好きなC#スレはどうしたの?

544デフォルトの名無しさん:2007/02/23(金) 21:13:10
当社はjavaのスペシャリスト集団です。c#の案件はお断りしております。
とくにlangパッケージのStringBufferへの研究は他社の追従を許しません。
545デフォルトの名無しさん:2007/02/23(金) 21:25:39
例えばテキストファイルの中に

abc = abcdefg.txt

という文字列があった場合、

abc = date/abcdefg.txt

のように文字列を追加するにはどうしたらいいのでしょうか?
ちなみにabc や = の両端の半角スペース、 abcdefg.txt などの文字列は
参照するテキストファイルによるので一定ではないです
546デフォルトの名無しさん:2007/02/23(金) 21:28:11
>>544
何言ってんだこのチンカスは
今はStringBuilderの時代だろうが。
547デフォルトの名無しさん:2007/02/23(金) 21:32:43
StringBuilderがStringBufferより優れている点を3つまで教えてください
548ぴゅあ:2007/02/23(金) 21:41:04
やはりわちきがいないとこのスレは駄目ですね
549デフォルトの名無しさん:2007/02/23(金) 21:46:54
>>545
Jakarta Commons IO FileUtils.writeLine()
550デフォルトの名無しさん:2007/02/23(金) 21:47:27
>>547
高速
551デフォルトの名無しさん:2007/02/23(金) 21:47:44
>>548
AA荒らしはカエレ
552ぴゅあ:2007/02/23(金) 21:56:55
このスレの回答の9割はわちきがしていると言っても過言ではないのですが。。
553デフォルトの名無しさん:2007/02/23(金) 22:01:48
証拠が無い
554デフォルトの名無しさん:2007/02/23(金) 22:05:05
>>552
AAの9割をあんたが投下してるってんなら証拠がなくても信じるけど。
555デフォルトの名無しさん:2007/02/23(金) 22:31:46
お前らバカ?
なんで相手してんの?
556デフォルトの名無しさん:2007/02/23(金) 22:51:52
>>518
言語仕様には -128〜127 の場合は必ず同じインスタンスを
返さなければならないと書いてありますが。
557デフォルトの名無しさん:2007/02/23(金) 22:52:35
最近このスレ流れ速すぎね?
558デフォルトの名無しさん:2007/02/23(金) 22:54:33
>>556
知ってる。

で、言語仕様には、必ず同じインスタンスを返すために valueOf を使えとは書いてない、って事。
559ぴゅあ:2007/02/23(金) 23:01:58
わちきはvalueOfをおすすめしますよ
560デフォルトの名無しさん:2007/02/23(金) 23:04:49
BLIGHT
561デフォルトの名無しさん:2007/02/23(金) 23:05:47
>>559
Double, Floatの場合はどうなのだ。
中身は単純に new Double() new Float()を読んでいるだけであろう
562ぴゅあ:2007/02/23(金) 23:10:25
それはsunの実装がそうだというだけの話ですね。
563デフォルトの名無しさん:2007/02/23(金) 23:10:52
>>545
そういう処理が必要なとき、自分は正規表現の前方参照?をよく使う。
ファイルから読み込む部分は割愛。テストはしてないから動作保証はしない。

String result = null;
final String str = "abc = abcdefg.txt";
Pattern pattern = Pattern.compile("(.+=\s*)(.+)");
Matcher matcher = pattern.matcher(str);
if(matcher.matches()) {
 result = new StringBuffer()
    .append( matcher.group(0) )
    .append( "date/")
    .append( matcher.group(1) )
    .toString();
}
return result;
564デフォルトの名無しさん:2007/02/23(金) 23:12:57
>>562
答えになってない
565デフォルトの名無しさん:2007/02/23(金) 23:15:28
Tomcat5 Java で開発してます。
Tomcatのログにこういうエラーがたまに出るんですが、何かいけないのでしょうか。

2006/09/04 10:00:00 net.sf.hibernate.impl.SessionImpl finalize
警告: finalizing unclosed session with closed connection
566デフォルトの名無しさん:2007/02/23(金) 23:19:26
Hibernateを勉強すべし
567デフォルトの名無しさん:2007/02/23(金) 23:19:32
>>565
どうしてコネクションするオブジェクをcloseしてくれないのかしら…
ホント世話の焼ける…ちゃんとcloseしてよね!

って書いてあるようだが
568デフォルトの名無しさん:2007/02/23(金) 23:24:27
>>567取り下げ、
よく読むとどうやら違う雰囲気。
569デフォルトの名無しさん:2007/02/23(金) 23:25:27
java.lang.Character
public static int toCodePoint(char�high, char�low)
の反対で、
public static char[] toChars(int�codePoint)
があるのですが、
highだけlowだけに分解するメソッドが無いようで、
どうやって作るのでしょうか?

簡単に言えば、用意されてない
public static char toHighSurrogate(int codePoint)
public static char toLowSurrogate(int codePoint)
の実装のことです。よろしくお願いします。
570デフォルトの名無しさん:2007/02/23(金) 23:54:56
SSH接続を行うアプリを作りたいんだけどjava.net.Socketを使えばできるかな?
最終的には携帯アプリとして作りたいからJavaなんです。
571デフォルトの名無しさん:2007/02/24(土) 00:16:34
public static           char[]           toChars(int�codePoint)


か?
572デフォルトの名無しさん:2007/02/24(土) 00:27:09
>>567
つまりはデータソースでのセッション数を調整すればいいのではてことでは
server.xmlの設定を弄るとか
573デフォルトの名無しさん:2007/02/24(土) 00:28:00
>>570
つ Jsch

つ Jakarta Commons VFS
574デフォルトの名無しさん:2007/02/24(土) 00:35:23
javaでランダムの数字を取り出すときにMath.random
使っているのですが、これを任意の数字のランダムに
する方法はどうすればいいのでしょうか?

0を含まない21までのランダムの数とか
数が重複しないランダムの数がほしいです。
575デフォルトの名無しさん:2007/02/24(土) 00:38:02
>>572
見当違いのレス乙。

HibernateのSessionがクローズされていないのが原因。
576デフォルトの名無しさん:2007/02/24(土) 00:46:17
>>574
重複しないようにしたいなら List に要素を突っ込んで Collections.shuffle(List) で
適当に並べ替えて先頭から取り出していけばいい。
577デフォルトの名無しさん:2007/02/24(土) 01:01:54
>>576
早速有難うございます。乱数っていやあ数学だから
Mathとかだろうと勝手に思ってました。

重複しないというのは同じ数を引かないということで
使ったのですがこれは別処理で対処できますね。
578デフォルトの名無しさん:2007/02/24(土) 01:02:50
package pac.imp1;
public class TestProgram1 {
private int var1;
private int var2;
public void setMethod() {
this.var1 = 10;
this.var2 = 25;
}
public void show() {
int x = this.var1 + this.var2;
System.out.println(x);
}}

package pac.imp2;
import pac.imp1.*;
public class TestProgram2 {
public static void main(String[] args) {
〜〜〜〜
}
}

パッケージの違うpac.imp1のshowメソッドをpac.imp2の〜〜〜で呼び出して中身を表示させたいのですが
どのように記述すればいいのでしょうか?
579デフォルトの名無しさん:2007/02/24(土) 01:07:01
>>577
Jakarta Commons Langにもにたようなもんがあるよ
580デフォルトの名無しさん:2007/02/24(土) 01:08:03
>>575
server.xmlでデータソースを設定したとき、
セッション最大保持数を設定できるからね。
直接はHibernateとは関係なくても、もしかしたらとおもって書いてみた
581デフォルトの名無しさん:2007/02/24(土) 01:09:54
>>578
TestProgram1 t = new TestProgram1();
t.setMethod();
t.show();
582デフォルトの名無しさん:2007/02/24(土) 01:16:08
読み込んだ画像Imageを任意の四角形に貼り付けたいのですが
Image型で読み込んだ画像を、Shapeに変換することって出来ます?

四角形の画像を、台形に貼り付けるようなものなのですが
583デフォルトの名無しさん:2007/02/24(土) 01:17:51
3行目訂正。。。
読み込んだ画像を、任意のShapeの形に変換
です。すみません
584デフォルトの名無しさん:2007/02/24(土) 01:30:29
>>580
釣りか?
かき混ぜるのもいいかげんに汁。

これで混乱する奴も正直どうしようもないと思うが、
一応「初心者大歓迎」スレなので。
585デフォルトの名無しさん:2007/02/24(土) 03:07:35
初めまして、本日からJavaを勉強し始めました。
コンパイルができません、Wikiも見たのですが
何が原因でエラーが起きているのかわかりません
エラー:HelloWorld.javaが読み込めません
エラー1個
と出ています。改善方法を教えてください
586デフォルトの名無しさん:2007/02/24(土) 03:09:17
>>585
こんなに遅くにご苦労さん
587585:2007/02/24(土) 03:22:55
このエラーの前は
'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
が出ていたのですが、それは改善できたのですが、これが全くわかりません。
他のJavaファイルも試したのですが同じエラーがでました。
588デフォルトの名無しさん:2007/02/24(土) 03:27:27
>>587
拡張子がtxtなんじゃないか?
フォルダオプションから拡張子の表示に関するところチェックするといいよ
589585:2007/02/24(土) 03:35:57
>>588 さんレスありがとうございます。
Javaファイルになっているのですが読み込めないのです
590デフォルトの名無しさん:2007/02/24(土) 03:43:28
C:\java\jdk1.5.0_11\bin\javac HelloWorld.java
591デフォルトの名無しさん:2007/02/24(土) 03:43:43
そのjavaファイルが置いてある場所で実行してる?
コマンドラインで dir って打ち込んで、
自分の書いたファイルがあるかどうか確認してごらん。
592デフォルトの名無しさん:2007/02/24(土) 03:49:28
C:\java\jdk1.5.0_11\bin\javac -d C:\test\java C:\test\java\HelloWorld.java
593585:2007/02/24(土) 03:57:27
>>590 さんレスありがとうございます。
指定されたパスがありません とでてきますバージョンの所は今使っている07
に変えてみたのですが

>>591 さんレスありがとうございます。
このままコマンドプロンプトに打ち込めばいいんですよね?
ドライブCのボリュームラベルがありません と出てきます
594デフォルトの名無しさん:2007/02/24(土) 03:59:28
その後にずらずらとファイルの一覧が表示されるでしょ?
その中に自分の書いたjavaファイルはある?
dir *.java と入れて再チェック。
595585:2007/02/24(土) 04:09:26
>>594 さんレスありがとうございます。
dir*.javaと入れると内部コマンド外部コマンド、、、、、認識されていません
とでます。dirだけ入れると0個のファイルって、、、、これってファイルが
ないってことですか?
596デフォルトの名無しさん:2007/02/24(土) 04:09:50
int tmp = 0;
int[] seat = new int[25];
BingoGameParts bgp = new BingoGameParts();

for(int i = 0; i < 25; i++) {
tmp = bgp.setBingo(); //tmpに数字を入れる。

for(int j = 0; j < 25; j++) {
if(tmp == seat[j]) {
i = i -1;
} else {
seat[i] = tmp;

} //for j
} //for i

BingoGamePartsでのsetBingo()の働きは
public int setBingo() {
tmp = (int)((Math.random()*49)+1);
return tmp;
} //setBingo()
となっております。

seat[i]に一度使った数字を使いたくないのでチェックとしてfor jを作ったのですが
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
at BingoGame.main(BingoGame.java:19)
という例外が発生してしまいます。

seat[i]に同じ数字を使いたくない場合はどのようにしたらよろしいでしょうか。
どうかご教授願います。
597デフォルトの名無しさん:2007/02/24(土) 04:10:01
dir スペース *.java
だ。
598デフォルトの名無しさん:2007/02/24(土) 04:11:26
iが0でjも0なとき何が起こるか分かる?
599デフォルトの名無しさん:2007/02/24(土) 04:13:53
(BingoGame.java:19)

この19行目ってどこ? その行の[]の中身は何?

600585:2007/02/24(土) 04:14:59
スペース入れてみました。
ファイルが見つかりません
と出てきます
601デフォルトの名無しさん:2007/02/24(土) 04:21:24
>>595
つまり、そのjavaファイルが存在するのとは別のディレクトリに座って
「“ここ”にある***.javaってファイルをコンパイルしろ」と言ってるんで
エラーが出るの。
自分で書いたjavaファイルが入っているフォルダをエクスプローラで
開いて、表示(V)→ツールバー(T)→アドレスバー(A)で
アドレスバーを表示して、まずそのファイルがどこにあるのか確認。
それが例えば c:\neko\kawaii だとしたら、コマンドラインに
xxx> c: (しー、コロン、と打ち込む)
xxx> cd \neko\kawaii (cd以下を打ち込む、スペースを忘れずに)
で、後はそのままコンパイルできるはず
602デフォルトの名無しさん:2007/02/24(土) 04:22:56
ディレクトリって表現は分かりづらいのか、「フォルダ」でも同じ。
あと、コマンドプロンプトではマウスの右クリックから
クリップボードの貼り付けができるんで覚えておくと便利かもしれない。
DOS時代はもう完全に過去のものなんだなあ……
603デフォルトの名無しさん:2007/02/24(土) 04:25:38
mainメソッドから他のメソッドを繰り返し処理で呼び出す場合に
他のメソッドのif判定がtrueになった場合のみbreak;するってことはできませんか?
もしそうするのならばifがtrueになったと知らせるbooleanの変数作って
main側でif判定trueならばbreak;?

boolean fuga = false;
int count = 0;
int hoge[] = new int[10];

for(i = 0; i < hoge.length; i++) {
hogehoge(count);
if(count == 5) {
fuga = ture;
}

if(fuga == true) {
break;
}
}

public void hogehoge(int i) {
if(i == 5) {
System.out.println("あいうえお");
} else {
i++;
}

サッと書いたから変かもしれないけどifの条件を満たす場合に
文字列を表示してループを抜けるという動作を求めている。
1個のメソッドにまとめた方が簡単にできるのかな?
604デフォルトの名無しさん:2007/02/24(土) 04:30:25
>>603
良く分からないんだけど、要はforループの途中で
ある条件が満たされた場合にbreakしたいんでしょ?
なら
for(...)
{
  if( 条件判定文 )
    break;
}
で全く問題ないように思えるんだけど。
605デフォルトの名無しさん:2007/02/24(土) 04:30:50
>>598
わかりません(´・ω・`)
606585:2007/02/24(土) 04:41:27
>>601 さんありがとうございます。
自分で書いたのを書くと 
ディレクトリ名が無効ですとでます
拾ってきたものでやると
ファイル名、ディレクトリ名またはボリュームラベルの
構文が間違ってますとでます
607デフォルトの名無しさん:2007/02/24(土) 04:43:04
>>606
どう入力したか正確に
608デフォルトの名無しさん:2007/02/24(土) 04:43:10
さすがにコマンドプロンプトでの操作はJavaを教える以前の
話だと思うんだが。
609585:2007/02/24(土) 04:49:27
自分のだと
c:
cdあっコロン入れるの忘れてる、、、すみません
同じエラーがでました
c:
cd: \Easy Java\HelloWorld.java
ファイル名、ディレクトリ名、またはボリュームラベルの構文が
間違っています。
と出ます
610デフォルトの名無しさん:2007/02/24(土) 04:51:09
2番目のコロンいらね
文字を大きく表示してよく読み直してみてくれ
611585:2007/02/24(土) 04:56:40
ディレクトリ名が無効です
と出ます。
612デフォルトの名無しさん:2007/02/24(土) 04:59:22
良く見てなかったけど、最後の"HelloWorld.java"って何よ?
cdに指定するのはディレクトリ名だから(「どこ」にあるのか、と書いたよね)
その場合なら cd \easy java でok
寝る
613585:2007/02/24(土) 05:10:21
>>612 さん明け方までありがとうございました。
C:\Easy Java> に変わりました。
ここでJavac HelloWorld.javaを入れてみたら
C:\Easy Java> に、、、、
起きたらでいいので教えてください、お願いします。
614デフォルトの名無しさん:2007/02/24(土) 05:17:31
cd "C:\Easy Java"
C:\java\jdk1.5.0_07\bin\javac HelloWorld.java
C:\java\jdk1.5.0_07\bin\java HelloWorld

この3行をコマンドプロンプトに貼り付ければそれで終わりだ
615デフォルトの名無しさん:2007/02/24(土) 05:34:03
コマンドプロンプト使えない奴は出直してきて欲しいな。
616デフォルトの名無しさん:2007/02/24(土) 06:52:08
そうやって壁を作るのはよくない
スレ的に
617デフォルトの名無しさん:2007/02/24(土) 08:05:20
コマンドプロンプトは糞だからcygterm使え
とか更にハードル上げるのもよくない
618デフォルトの名無しさん:2007/02/24(土) 08:30:50
じゃあ、鯖立ててtelnetで使う方向で。
619デフォルトの名無しさん:2007/02/24(土) 09:58:06
エクスプローラで使えるコンパイララッパだれか作ってやれよ
620デフォルトの名無しさん:2007/02/24(土) 10:24:52
>>619
実はラッパなんて要らない。
フォルダオプションで拡張子「java」に対するアクション「コンパイル」を追加し、
そのアクションでjavac.exeを実行するようにすれば、
右クリックのメニューからコンパイルが実行できる。
621デフォルトの名無しさん:2007/02/24(土) 10:34:27
じゃあそれをダブルクリック一発で設定できるツールを作ってやってくれw
622デフォルトの名無しさん:2007/02/24(土) 11:42:48
>>605
なぜわからないのだ。
顔文字使って誤魔化すな
623デフォルトの名無しさん:2007/02/24(土) 11:43:37
EclipseかNetBeansインストールして使え
624デフォルトの名無しさん:2007/02/24(土) 16:03:32
>>603
つーかhogehogeの中でi++してるのがきにくわねー

public void hogehoge(int i)を

public boolean hogehoge(final int i) {
 if(i == 5) { 
  System.out.println("あいうえお");
  return true;
 }
 return false;
}
にすれば


for(int i = 0; i < hoge.length; i++) { 
 if( hogehoge(count) ) {
  break;
 } else {
  count++;
 }
}

でいい。
625デフォルトの名無しさん:2007/02/24(土) 17:34:05
>>624
hogehogeのなかでsysoutするのも気にくわねー
public boolean isHogehoge(final int i){
 return (i == 5);
}
にすれば

for(int i = 0; i < hoge.length; i++){
 if( isHogehoge(count)){//終了条件
  System.out.println("あいうえお");//終了処理
  break;
 } else {
  count++;
 }
}
でよくね?
626デフォルトの名無しさん:2007/02/24(土) 17:36:44
まぁこの場合は極端に処理が短いからインライン化したほうがいいと思うけど(メソッドに分けないでそのまま書く)
割るとしたらなるべく副作用のないように分けたほうがいいと思う。
627デフォルトの名無しさん:2007/02/24(土) 18:09:14
作るものによってどこでカウントアップするとか出力するとかも変わるしね
この質問の仕方が悪すぎる
628デフォルトの名無しさん:2007/02/24(土) 18:32:25
JAVAの3Dアニメーションの特徴(長所、短所、問題点とか)
が詳しく載ってあるサイトはありますか?

ぐぐったんですけどピンとくるサイトがなくて...
629デフォルトの名無しさん:2007/02/24(土) 18:42:35
>>628
ググッタときに最初辺りに出てくるJavaDriveとかいうのでも入門レベルには丁度良いと思うけどな
630デフォルトの名無しさん:2007/02/24(土) 18:44:45
>>628
http://www.google.co.jp/search?q=Java3D&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox

これでもピンと来ない?

というか、実際にJava3Dでプログラミングして動かしてみた?

問題点ならニュース記事をターゲットにググって見たらどうかな。
impress watchとか@ITとか。

もう昔の情報だけどね。
過去の問題点はいくつか解決されているものもあるし


631デフォルトの名無しさん:2007/02/24(土) 19:57:33
JWindowをGraphicsDevice.setFullScreenWindowでフルスクリーン表示する
フルスクリーン画面上にJDialogをモーダル、setAlwaysOnTop(true)で表示する
JWindowをrepaintするとJDialogが画面上から消えてしまうのですが、
JDialogを表示したままJWindowをrepaintする方法はありますでしょうか。
JPopupMenu.setDefaultLightWeightPopupEnabledとか関係ありますでしょうか。

また、GraphicsDevice.setFullScreenWindowに関連して「フルスクリーン排他モード」
と記述されてる文面をよく見受けますが
フルスクリーン画面上にダイアログを表示するような使い方(排他的ではない)はそもそも誤りなのでしょうか。
632デフォルトの名無しさん:2007/02/24(土) 21:07:40
JAVAはVISTAでも動く?
633デフォルトの名無しさん:2007/02/24(土) 21:12:34
動く。
634デフォルトの名無しさん:2007/02/24(土) 21:13:00
>>632
「動く」の定義による。
635デフォルトの名無しさん:2007/02/24(土) 21:29:46
とりあえず動く、でいいだろさ
636デフォルトの名無しさん:2007/02/24(土) 21:40:17
>>635
「とりあえず動く」の定義による。
637デフォルトの名無しさん:2007/02/24(土) 21:40:33
最新版Eclipseは問題なく動く
638デフォルトの名無しさん:2007/02/24(土) 21:48:53
はろーわーるどが表示できるかどうか←とりあえず動くの定義
639デフォルトの名無しさん:2007/02/24(土) 22:03:57
質問なのですが、Tomcat6になってinvokerの機能なくなりました?
<!-- -->をlibのweb.xml文章から外すとTomcat自体が起動しなくなるのですが…
まぁ、その機能が無くなったら無くなったで、classesの方のweb.xmlに追加すれば
良いだけですけどねw
640デフォルトの名無しさん:2007/02/24(土) 22:14:48
すみません、×:libのweb.xml、○:confのweb.xmlの誤りです。
641デフォルトの名無しさん:2007/02/24(土) 22:21:28
>>632 uchiの初期不良で返品したvistaPCは、GUIのプログラム実行すると
画面が点灯するだけでコンテナが出てきませんでした。今は旧PCに戻ってますが
6月くらいにまたvistaPCを買う予定なので同じ事が起きないと良いなorz
642デフォルトの名無しさん:2007/02/24(土) 22:29:28
どこに書き込めばいいか分からなかったのでここに書き込みます。
例えば、ホームページを見ていて、ページ内にいくつか選択肢があるとします。
例として、自分のプロフィールを作るページがあるとします。
1項目目(@20〜24歳A25〜29歳B30〜35歳)、2項目目(@関東在住A関西在住B東北在住)、3項目目(男、女、どちらかにチェック)
ここで、1項目目でBを選択、2項目目でAを選択、3項目目で男の方にスペースキーでチェックを入れる。ページ下部にある“次のページへ”をクリック。
このような作業を一瞬で行うことができるフリーソフトをご存知の方いませんか?
詳しい方いましたら教えてください。よろしくお願いします。
643デフォルトの名無しさん:2007/02/24(土) 22:32:04
>>642

HTMLっていうソフトっていうかマークアップ言語があるよ^^
644デフォルトの名無しさん:2007/02/24(土) 22:45:57
>>631
JWindowじゃなくてJFrame使えばいいんじゃない?
645デフォルトの名無しさん:2007/02/24(土) 22:58:26
DATE型をyyyyddhhmmssみたいに指定した形式の文字列に
したくて悩んでます。
リファレンスにはtoStringを使えばいいように書いてあるのですが
使い方がわかりません
こうかなと思ったけどダメでした。
Date time = new Date(dt);
String strTime = time.toString("yyyyddhhmmss");

SimpleDateFormatを使えばいいのですが、MEつかってるのでtext
が使えない上、スレッドセーフでないようですので、あまり使えないかなと。
646デフォルトの名無しさん:2007/02/24(土) 23:07:00
スレッドセーフでないならsynchronizedでくるめばいいじゃない。
とはいえ、使えない以上諦めて自作するしかない。
647デフォルトの名無しさん:2007/02/24(土) 23:21:29
>>645
Date#toString()には引数を取る形のものはない。
DateFormatが使えないならjava.util.Calendarを使って、
Calendar cal = Calendar.getInstance();
cal.setTime(time);
で、Calendar#get(int field)を使って、年や月などをそれぞれ取ってきて、
一つのStringにまとめればいい。
648631:2007/02/24(土) 23:31:55
>>644
お返事ありがとうございます。
JFrameでも駄目でした。
コンストラクタで親として渡しても渡さなくても駄目でした。
649デフォルトの名無しさん:2007/02/24(土) 23:47:44
>>639
Tomcat6っていつのまに出ていたんだ。

どこのconf? 書くコンテキスト毎の自作conf?
web.xmlはXDocletで自作できるからねえ・・・
650デフォルトの名無しさん:2007/02/24(土) 23:50:16
>>642
それをファイルに保存した、サーバのDBなどに保存したい、
それともメールで配信したいだけなのか、
どういう選択肢を通かで、Javaを使うか、
それとも単なるsendmailを使うか、JavaScriptを使うかが決まってくるよ。
651デフォルトの名無しさん:2007/02/24(土) 23:51:32
お願いします!
今までコマンドプロンプトでコンパイル&実行してたのですが、
先日JBuilderをインストールして以来、コマンドプロンプトが使えません。
コンパイルは上手くいきますが、実行時に下のエラーが出ます。
誰か教えてください。

Registry key 'Software\JavaSoft\Java Runtime Environ
has value '1.4', but '1.5' is required.
Error: could not find java.dll
Error: could not find Java 2 Runtime Environment.
652デフォルトの名無しさん:2007/02/24(土) 23:52:42
いやそういうことじゃないだろうなあ。
リクエストを飛ばすことが目的ならHttpClient、
どうしてもその操作をしなければならないならキーボードマクロだろう。
653デフォルトの名無しさん:2007/02/25(日) 00:13:29
>>650
うまく説明する自信がないので、例としてリンク貼ります。
http://www.blueberryhouse.com/v001/survey/survey.html
Q1〜6までに回答し(Q7以降は回答不要)、“送信!”をクリックするまでの一連の作業を一瞬でやりたいのです。
そして、この一連の同じ作業を記憶させるフリーソフトはありますでしょうか?
よろしくお願いします。
654545:2007/02/25(日) 00:13:45
>>563
ありがとうございました。
教えていただいたおかげでだいぶ作業が進みました。
ただ、今度は

Pattern pattern = Pattern.compile("(.+=\s*)(.+)");

の部分で

エスケープ文字が不正です。

とエラーがでてしまいます。

他のエラーは自分なりに色々とやって見て直せたのですが、
ここだけはなかなか直りせせん。
どなたか教えていただけると助かります。
655デフォルトの名無しさん:2007/02/25(日) 00:14:22
×¥
○¥¥

656デフォルトの名無しさん:2007/02/25(日) 00:16:10
>>653
だからキーボードマクロ
657545:2007/02/25(日) 00:19:44
>>655
ありがとうございます
うまく行きました
658デフォルトの名無しさん:2007/02/25(日) 00:20:38
hibernate で、フィールドとして持っているクラス(自作クラス)をプライマリキーの一部にすることはできないのでしょうか?
そもそも、1つでプライマリとなるフィールドを必ず持つべきなのでしょうか?
659デフォルトの名無しさん:2007/02/25(日) 00:33:51
>>656
使い方がまだうまくいかないですが、そうです、これがやりたかったんです。
感動しました。また何かあったら教えてください。
ありがとうございます。
660デフォルトの名無しさん:2007/02/25(日) 01:32:09
>>651
英語読めるか?

echo %PATH%とやってみ?
java -versionの結果はどうなる?
661デフォルトの名無しさん:2007/02/25(日) 01:32:39
>>653
それなら、HttpUnitを使うという手がある・。
662デフォルトの名無しさん:2007/02/25(日) 01:33:43
>>658
よくわからないのだが、
データベーススキーマはすでにできているのか?
それとも、Javadocのコメントやアノテーションを
もとにこれからスキーマを自動生成するのか?

どっちだ?
663デフォルトの名無しさん:2007/02/25(日) 02:32:49
>>661
追加で聞きたいんですけど、要は653のページを開き(ここからスタート)、“送信!”がクリックされるまでを最短の時間で済ませたいのです。キーボードマクロとどちらが速いですか?
また、キーボードマクロに記録させた入力作業を、右クリックメニューに追加させるにはどうしたらよいでしょうか?
お詳しい方、教えてください。
664デフォルトの名無しさん:2007/02/25(日) 02:51:52
それはあなたのプログラミングスキルによる。
665デフォルトの名無しさん:2007/02/25(日) 04:02:27
JTやらの組織票に使うんだな。
666デフォルトの名無しさん:2007/02/25(日) 08:32:58
>>649 Tomcatダウンロードした時についてくる、デフォルトの奴です。
667デフォルトの名無しさん:2007/02/25(日) 10:31:36
>>642
その程度ならホームページビルダーでできるはず
てかスレ違いじゃね?
668639:2007/02/25(日) 10:48:00
すみません、<servlet-mapping>の方の<!-- -->消すの忘れてました...orz
669デフォルトの名無しさん:2007/02/25(日) 11:10:53
667
どう考えても不正行為での利用としか思えない。
(アンケートのたぐいのカウントかせぎとか)

方法として
・ セッションチェックされてないなら、HTTP偽装して直接情報送信。
  (HTTPヘッダ送信ツールならベクタでうpされてる)
・ Webのテスターツール入手して、自動操作
・ PC自体の自動操作ツール(マクロ)入手して、自動操作


あ、とりあえず思いついたもの書いちゃった。不正いくない!
670デフォルトの名無しさん:2007/02/25(日) 11:32:18
public void jButton1_actionPerformed(ActionEvent e) {

jPanel1.setLayout(new BorderLayout());
GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration();

Canvas3D canvas = new Canvas3D(config);
jPanel1.add("Center", canvas);

BranchGroup scene = createSceneGraph();
SimpleUniverse universe = new SimpleUniverse(canvas);

universe.getViewingPlatform().setNominalViewingTransform();
universe.addBranchGraph(scene);

jPanel1.setVisible(true);

}

JAVA3Dでボタン押したら、jPanel1に3Dの画像を表示させたいだけなのですが
これでボタンを押しても、表示されません

御指導お願いします
671デフォルトの名無しさん:2007/02/25(日) 11:47:16
>>648
Owner 設定してれば消えるはずないんだけどなあ。
いったいどういう使い方をしたんだい?JFrame。
それとJDKのバージョンは?
672デフォルトの名無しさん:2007/02/25(日) 11:59:46
完結した動くコード貼ってくれないなら見ただけで言うけど、

・JPanel単独だとそれなりのサイズを占めて表示されているの?
(背景に色を付けるとか枠を付けるとかすれば分かる)
・JPanelの上にAWTコンポネント貼っていいんだっけ?
気をつけてればいいのかな。
・Canvas3Dってサイズは明示的に指定しなくていいんだっけ?
・視点は妥当? setNominalViewingTansformしてるから大丈夫と
思っていいのかな。
673デフォルトの名無しさん:2007/02/25(日) 12:08:28
やさしいJavaが終わり、デザインパターンの本を買って読んでるのですが
フィールドにpackageFieldやpublicField等があります
今までprivateを使って数字を入れていたりしていたので、フィールドの概念が分からなくなってきました
674デフォルトの名無しさん:2007/02/25(日) 12:15:26
なにがわからなくなったのかわからない。
675デフォルトの名無しさん:2007/02/25(日) 12:20:43
>>671 バージョン:jdk1.6 俺の環境だけかな
public class DialogTest extends JFrame implements Runnable, MouseListener {
private Thread repaintThread = null;
private JDialog dialog = null;
public DialogTest() {
setUndecorated(true);setSize(800, 600);
GraphicsDevice device = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
DisplayMode fullMode = new DisplayMode(800, 600, device.getDisplayMode().getBitDepth(), device.getDisplayMode().getRefreshRate());
device.setFullScreenWindow(this);
device.setDisplayMode(fullMode);
addMouseListener(this);setVisible(true);
if (repaintThread == null) {
repaintThread = new Thread(this);
repaintThread.start();}
//dialog = new JDialog((Frame) this, "TEST", true, GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getDefaultConfiguration());
dialog = new JDialog((Frame) this, "TEST", true);
dialog.setAlwaysOnTop(true);
dialog.setVisible(false);
dialog.setSize(100, 100); }
public void run() {
while (repaintThread != null) {
System.out.println("repaint");repaint();
try {Thread.sleep(10000);} catch (Exception e) {}}}
public static void main(String[] args) throws Exception {new DialogTest();}
public void mouseClicked(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {if (e.getButton() == MouseEvent.BUTTON3) {dialog.setVisible(true);}}}
676デフォルトの名無しさん:2007/02/25(日) 13:08:37
>>675
なるほどねえ。
JFrameのContentPaneをJDesktopPaneにして、
JDialogの代わりにJInternalFrameでゴニョゴニョすれば上手くいくかもしれん。
677デフォルトの名無しさん:2007/02/25(日) 13:25:20
>>676
解答ありがとうございます。
JDesktopPaneのフルスクリーン化ですか、難易度高そうですが色々と調査してみます。
678デフォルトの名無しさん:2007/02/25(日) 14:21:23
>>677
フルスクリーンにするのはJDesktopPaneじゃなくてJFrameだよ。
JFrame#setContentPaneでJDesktopPaneを貼り付ければおけ。
679デフォルトの名無しさん:2007/02/25(日) 14:26:55
>>673
privateで困ったときだけ他のフィールドを使えばいいと思う
680デフォルトの名無しさん:2007/02/25(日) 14:44:48
>>670
JPanelを表示している
上位のJPanelやJFrameでは
ちゃんとsetVisible(true)にしている?
681デフォルトの名無しさん:2007/02/25(日) 14:48:20
>>670
とおもったら、それ、なにも3D物体表示していないじゃないか。

そりゃJPanelの長方形の枠の中が真っ暗になって現れるだけだと思うよ。

そのソースコードをベースにして、これから、ブランチに物体などをぶら下げて
表示してゆくわけだから。
682デフォルトの名無しさん:2007/02/25(日) 15:14:55
2つ以上のString型の内容を、数値(文字コード)的に大小の判定はどう書くんでしょう?

 String str1 = "全角1";
 String str2 = "全角2";

とあった場合に、str2のほうがstr1より文字コードで大きいといったような。
683デフォルトの名無しさん:2007/02/25(日) 15:18:03
compareTo()
684デフォルトの名無しさん:2007/02/25(日) 15:19:14
>>681
シーングラフは、たぶんcreateSceneGraph()の中で組み立ててるんだと想像。
685デフォルトの名無しさん:2007/02/25(日) 15:40:59
>>669
不正のたぐいではないです。誓います。大量に送信するわけではなく、一度だけ短時間で送信したいのです。
挙げていただいた3つの方法はhttpアドレスがあらかじめ分かっている場合のみ可能ですか?
入力するページは、その時間きっかりにアップされるのです。なので、その時間まではhttpアドレスが不明なんです。
スレ違いかもしれませんが、教えてください。よろしくお願いします。
686デフォルトの名無しさん:2007/02/25(日) 15:50:35
stepmaniaというC++で書かれたゲームを携帯に移植したいと思っているのですがやってくれる人募集中!
687デフォルトの名無しさん:2007/02/25(日) 15:55:39
>>678
返信ありがとうございます。
実現できました。
JDesktopPaneやJLayeredPane等のLAYERに対する認識の甘さを痛感しました。
688デフォルトの名無しさん:2007/02/25(日) 16:01:59
>>686
やる!すぐソースをUpしろ!
689デフォルトの名無しさん:2007/02/25(日) 16:08:05
フォルダの中にあるファイル名をひとつずつ取得したいのですが
どのようにしたらいいでしょうか?
690デフォルトの名無しさん:2007/02/25(日) 16:15:05
>>689
Fileクラス
691689:2007/02/25(日) 17:01:25
>>690
ありがとうございます
質問なのですが、フォルダからファイル名を読み取るときには
File abc = new File("C:\\java");
のようにFileオブジェクトを作りますよね?
このとき C:\java のフォルダが何も入っていない状態に
書き換えられると思うのですが、どのようにしたら元からあった
ファイルを読み込めるのでしょうか?
692デフォルトの名無しさん:2007/02/25(日) 17:17:06
BufferedReaderで入力された全角数字を半角数字に直したものを
int 半角 に入れたいんですがどうすればいいんでしょう?
文字コードを使って変換するらしいんですが調べてもよくわかりません
693デフォルトの名無しさん:2007/02/25(日) 17:22:27
>>691
かきかえられる? んなこたあない。

javaディレクトリがそこに元から存在すれば
ディレクトリとみなしてくれる。
isDirectory()で確認すればいい。

ファイル一覧はlist()みたいなので拾えたはず。
Javadoc嫁
694デフォルトの名無しさん:2007/02/25(日) 17:22:49
servletでvelocityを使って、ある文字列の置換を行いたいんだけど、
Velocity.init($プロパティファイルのパス名)を使う場合、
webappの直下にvelocity.propertiesを置くしか無いですか?
出来たら他のパッケージの中にプロパティファイルを置きたいので、
相対パスでvelocity.propertiesの場所を指定したいのですが上手く行きません。
ちなみに
Velocity.init($Propertiesオブジェクト)でも可能なので、
Properties prop;
prop.load(new FileInputStream(プロパティファイルのパス名));
上記の時に相対パスで取得出来るならそれでもかまいません。
教えて!エロイ人!
695デフォルトの名無しさん:2007/02/25(日) 17:37:29
>>694
んなこたあない。
クラスパスに置く、libにおく、絶対パス指定するなどで
対策を取れる。

めんどうなら、ソースコードに直接書くこともできる。
init()に引数にPropertiesオブジェクトを指定できたような記憶がある。
そこでPropertiesをニューして、設定情報をJavaソースコード上に
記述してゆけばいい。


とにかく絶対パスなら確実。
クラスパス関係はJakartaはどれもこれも不安定だな。
java.util.ResourceBundleをクラスパスを起点とする相対パスで呼び出して
そこにvelocity.propertiesのパスを記述する。そうすれば楽だ。

それと、VelocityはLog4jに依存している。もしかするとLog4jのlog4j.propertiesのパスも
どこかで設定しないと逝けないかも知れない。だが今は考えなくて良い。

696デフォルトの名無しさん:2007/02/25(日) 19:49:00
>>629-630
どうもありがとうございます
なんでヒットしなかったんでしょう、見落としたのかもしれません
これから読んできます
697デフォルトの名無しさん:2007/02/25(日) 20:59:00
Javaのバイトコードなんだが、今、Jasminを使用して
バイトコードレベルで高速化作業してるのだが、
iload, bipush,iorなどの各命令の実行速度が一律おなじなら
単純に命令数を減らせば速くなるけど・・・。
ちがうよな?

極端に遅い命令とか極端に早い命令とか知っていれば教えていただけないでしょうか?
698デフォルトの名無しさん:2007/02/25(日) 21:24:13
VMにもよるだろうしVMの載ってる環境にもよるんじゃね?
699デフォルトの名無しさん:2007/02/25(日) 23:26:48
メソッドの中にグローバルな変数を宣言したりクラスを生成したりするにはどうしたらいいですか?
700デフォルトの名無しさん:2007/02/25(日) 23:28:29
できるわけねーだろ
701デフォルトの名無しさん:2007/02/25(日) 23:30:50
>>699
グローバルっていうスコープはよくわからないが、
それは多分無理。

クラスは
new Object() {
 private Object hoge = null;
 public Object getHoge(){ return this.hoge; }
};
とか,、書けるには書けるけど…
702デフォルトの名無しさん:2007/02/26(月) 00:26:56
Static修飾子の使い方がいまいち分からないのですが
例えばprivate int x;と定義した場合フィールドにアクセスするには
this.xを使わないといけないけど
private static int x;の場合は xのみでアクセス出来るということですか?
staticはクラスメソッドだからクラス内であればアクセスは自由ということかな
703デフォルトの名無しさん:2007/02/26(月) 00:33:24
thisなんかつけなくてもアクセスできるよ
704デフォルトの名無しさん:2007/02/26(月) 00:35:17
>>702
class Sample {
    private static int x = 0;
    private int y = 0;
    private void inc() {
        x++;
        y++;
    }
    public static void main(String[] args) {
        Sample a = new Sample(), b = new Sample(), c = new Sample();
        a.inc();
        b.inc();
        c.inc();
        System.out.println("a.x = " + a.x + " / a.y = " + a.y);
        System.out.println("b.x = " + b.x + " / b.y = " + b.y);
        System.out.println("c.x = " + c.x + " / c.y = " + c.y);
}

コンパイルは通してない。
705デフォルトの名無しさん:2007/02/26(月) 00:43:58
}
706デフォルトの名無しさん:2007/02/26(月) 01:46:32
javax.script.ScriptContext#setWriter 関連の話だけど、
例えばスクリプトから System.out.println を呼び出したときにも、setWriter で設定した Writer に出力せなあかんの?
707デフォルトの名無しさん:2007/02/26(月) 10:49:18
質問なのですが『名前 商品名』と入力が入ってきて
名前ごとにオブジェクトを作るにはどうしたらいいんでしょうか
例えば、山田という名前が入力されると山田さん専用のオブジェクトができ、以後山田さんが入力されても同じオブジェクトを使う
そして新しく花田という名前が入ってくれば、花田さん専用のオブジェクトを作るようにしたいのですが
よろしくお願いします。
708デフォルトの名無しさん:2007/02/26(月) 10:57:54
session.setAttribute( "yamada", new Shouhin( "shouhinmei" ) );
709デフォルトの名無しさん:2007/02/26(月) 11:21:55
>>707
Mapとか。
710デフォルトの名無しさん:2007/02/26(月) 14:40:56
>>706
必要ないと思うけど。

そーゆー事したい場合は、ユーザーが自前で Bindings 弄るべきなんじゃないかと思う。
711デフォルトの名無しさん:2007/02/26(月) 15:15:31
整数部の四捨五入したいんだけどどうやるの?(150→200とか140→100とか)
小数点以下なら以下のでできるんだけど
BigDecimal bd = new BigDecimal(String.valueOf(kazu));
double val = bd.setScale(1,BigDecimal.ROUND_HALF_UP).doubleValue();

setScale()の第一引数に-1とかやると怒られるし・・・教えてくだしあ
712デフォルトの名無しさん:2007/02/26(月) 15:34:32
もの凄く初歩な質問なのですが、どなたか教えてください。

メソッドの引数で、どうしても分からないのですが、
この場合、n=num としていて、引数nはどういった働きをしているのでしょうか?

int num;

void setNum(int n){

num = n;
System.out.println("番号は"+num+"です。");
}
713デフォルトの名無しさん:2007/02/26(月) 15:36:34
>>711
1.4 までなら 150 を 100 で割って setScale で四捨五入してから 100 倍する、とか。
5.0 以降は setScale が負数も受け入れるようになったから、setScale でやる。
714デフォルトの名無しさん:2007/02/26(月) 15:38:17
>>713
setScale 要らんね。divide に roundingMode あるし。
715デフォルトの名無しさん:2007/02/26(月) 15:47:03
>>713-714
1.5からその方法が使えるのか・・・
開発環境が1.4だから100で割って100でかける方法使います。
ありがとう。百万の感謝を。
716デフォルトの名無しさん:2007/02/26(月) 15:49:08
>>712
numに設定すべき値を外部から渡す働き。
numをそのうちどこかで使うのだろう。

(なお、printlnは実際に渡した値がnumに設定されたかを確認するための
ものと思われる)

717デフォルトの名無しさん:2007/02/26(月) 18:38:07
フレームのXボタンを押すと閉じるプログラムなんですが、
ExitFrameのコンストラクタが呼ばれると8行目に実行が移ると思うのですが、
何故cl(5行目のprivate Closing〜〜)が実行されるのかがわかりません。お願いします

import java.awt.*;
import java.awt.event.*;

class ExitFrame extends Frame{
 private ClosingListener cl=new ClosingListener();

 public ExitFrame(){
this.addWindowListener(cl);
}
}

public static void main (String[]args){
ExitFrame ef=new ExitFrame();
ef.setSize(500,400);
ef.setVisible(true);
}
/////////////////////////////////////
class ClosingListener extends WindowAdapter{
public void windowClosing(WindowEvent e){
System.exit(0);
}
}
718デフォルトの名無しさん:2007/02/26(月) 18:47:06
>>717
何を知りたいのかが分からん。

addWindowListener で ClosingListener 渡してるんだから、
ウィンドウを閉じる操作をしてイベントが発生した場合に
ClosingListener のメソッドが呼ばれるのは当然と言えば当然だし……
719デフォルトの名無しさん:2007/02/26(月) 18:50:22
720デフォルトの名無しさん:2007/02/26(月) 18:54:01
>>718
わかりにくくてすいません・・。何でprivate ClosingListener cl=new ClosingListener(); が実行されるかわからないんです。
↑のがmainメソッドの内にあるのならわかるんですが、
この場合、いつ実行されてるのかわからなくて・・。
721デフォルトの名無しさん:2007/02/26(月) 18:55:00
該当箇所だけ訳すと、

A: インスタンス初期化部の実行とインスタンス変数の初期化を行う。
B: コンストラクタの(スーパークラスのコンストラクタ呼び出しを覗く)残りの部分を実行する。

A:がB:より先に実行されているので、
B:の中ではclはnullではなく、A:で生成されたリスナを参照している。
722デフォルトの名無しさん:2007/02/26(月) 19:02:16
>>719
ありがとうございます。英語苦手なんで後で読んでみます・・

>>721
private ClosingListener cl=new ClosingListener(); =インスタンス変数ってことなんでしょうか??
723デフォルトの名無しさん:2007/02/26(月) 19:05:09
基本からちゃんと勉強しなさい
724デフォルトの名無しさん:2007/02/26(月) 19:11:00
Java先生 質問! 
PCのパラレルポートで8bitデータの入出力を行う場合どうすれば良いのでしょうか?
725デフォルトの名無しさん:2007/02/26(月) 19:29:43
public executeSql(Connection conn)
{
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM HOGETBL WHERE ID=?");
pstmt.setString(1, "1001");
・・・
}

という処理があった時、pstmtにID「1001」が設定された状態のSQL文を取得したいのですが、どうすればよいですか?
目的はデバッグ用で、SQL文が期待された通りに生成されているか(無効な値が入っていないか)を、ログに保存して確認したいのです。
よろしくお願いします。

726デフォルトの名無しさん:2007/02/26(月) 19:46:53
>>722
ClosingListener cl=newClosingListener(); に固定概念があるようだが、これもClosingという型の「変数」
727デフォルトの名無しさん:2007/02/26(月) 19:50:30
>>725
JDBCドライバによってはそういう機能を持っている。
あるいは、http://jdbcdebugger.sourceforge.jp/ が使えるかも。
728デフォルトの名無しさん:2007/02/27(火) 00:02:32
java3Dのクラスパスの設定って一種類の方法しかありませんか?
729デフォルトの名無しさん:2007/02/27(火) 00:06:45
>>728
何が分かってて何を知りたいのか分からない質問だな。
730デフォルトの名無しさん:2007/02/27(火) 00:13:55
指定したURLにBufferedReaderで入力した文字を***.txtという風に出力したいのですが
どのようにすればいいのでしょうか
731デフォルトの名無しさん:2007/02/27(火) 00:24:12
URLの指すリソースには書けない。
サーバ側の書き出しプログラム(CGIとか)を用意してそいつに送りつけるしかない。

file://なら書けなくもないか。
732デフォルトの名無しさん:2007/02/27(火) 01:01:13
733デフォルトの名無しさん:2007/02/27(火) 01:25:28
734デフォルトの名無しさん:2007/02/27(火) 01:38:44
>>729
w たしかに、
ちょっとパスいじくってきます

http://www.javadrive.jp/install/index.html
このサイトの通りにやってるんですけど
java3Dがeclipse上で動かないんですよ...
735デフォルトの名無しさん:2007/02/27(火) 02:01:10
iTextを使ったことがある方がいたら教えてください。

全文検索の対象にPDFを入れようとして、iTextを使ってテキストを抽出できないかと思ったのですが、
この場合どうすれば良いのでしょうか?
PDFReaderを使うのかと思ったのですが、package privateなメソッドが多くてよく分からないのです。
736デフォルトの名無しさん:2007/02/27(火) 02:02:42
>>734
Windowsないのでわからんのだが、extensionとしてJDKなりJREのext/以下に
インストールされるのならなにも設定しなくてもいいはず。

そうでないのなら、Eclipseの各プロジェクトのプロパティで設定してやる必要が
あると思う。
737デフォルトの名無しさん:2007/02/27(火) 02:10:05
>>736の補足。これ書いたら寝ます。

そもそも、認識されていないのならそもそもEclipse上でコンパイルすら
できない(未解決シンボルありまくり)はずなんだが、それはどうなのかな。

JREを構成しているライブラリは、Eclipseの各プロジェクトの
Java Build Path->Librariesのタブの中にあるJRE System Librariesとして
確認できる。認識されているExtensionはここに現れる。
あとはPreferences->Java->Installed JREsの中とか。

認識されてないならJava VMが複数入ってるとかいう可能性もあるな。
738デフォルトの名無しさん:2007/02/27(火) 02:53:17
文系出身SEとして春から働く者です。
ただ今「やさしいJava」という本で独学しているのですが、
パッケージの所で行き詰っています。
クラスをパッケージに含める作業において、
まずパッケージ名と同じ(今回はpa)という名前をつけたフォルダを作成して、
そこにpaというパッケージ名をつけたプログラムを保存し、
javac ディレクトリ名(pa)ファイル名
と入力し、コンパイルすると本には書かれています。
しかし、その通りに実行しても「ファイルを読み込めません」というメッセージが出て、
先に進めません。どこが間違っているかを教えて頂けたら幸いです
739デフォルトの名無しさん:2007/02/27(火) 02:55:33
>>736-737
ありがとうございます
一応いろいろインストールしなおしたら、一部のエラーは減ったんですけど
まだこれだけ
ttp://www.uploda.org/uporg708702.jpg.html
ttp://www.uploda.org/uporg708708.jpg.html
あります。どこがいけないかわかりますか?
お手数かけます
740デフォルトの名無しさん:2007/02/27(火) 03:05:31
>>738
javaを再インストールすれば直るよ
741デフォルトの名無しさん:2007/02/27(火) 03:16:57
>>740
ありがとうございます。
さっそく、実行してみます。
742デフォルトの名無しさん:2007/02/27(火) 03:55:33
>>738

ディレクトリ名と書いているからUNIX系と決めつけるけどWindowsだったら適当に補完してくれい
とりあえずホームディレクトリ以下に
test/pa/Hoge.java
という感じでつくるとするとコンパイルは
javac -sourcepath ~/test pa/Hoge.java
実行は
java -classpath ~/test pa.Hoge
でいけるかと…

>>740
ぉぃぉぃ
743デフォルトの名無しさん:2007/02/27(火) 05:23:10
>>739

画面下の「問題」ってとこ開いてみて。
744デフォルトの名無しさん:2007/02/27(火) 05:27:45
ああ、あと、
(+) import java.applet.Applet;
のところを展開。

j3daudio.jar, j3dcore.jar, j3dutils.jar, vecmath.jarすべて認識されているような
ので、
import com.sun.j3d.utils.universe.SimpleUniverse; //たぶん
で解決するんじゃないだろうか。

これは簡便のためのクラスなのでjavax.media.j3d以下にはないんだよね。
745デフォルトの名無しさん:2007/02/27(火) 06:26:58
Swingを使ってGUIプログラム作ってるんですが、
本体ウィンドウにフォーカスがあたっていない状態で、
どっか設定したキー押下(複数キーの組み合わせでも可)で
本体にイベントを送ることは可能でしょうか?
相当調べても出来なかったので、可能ならヒントください(´・ω・`)
746デフォルトの名無しさん:2007/02/27(火) 06:58:09
Windowsだと、
http://melloware.com/products/jintellitype/index.html
で出来るのかも。
747デフォルトの名無しさん:2007/02/27(火) 09:15:00
>>743-744
その通りでした、それを追加したらHelloUniverseは動きました
あと、他のjava3Dアプレットも動くようになりました
本当に助かります、ありがとうございました
748639:2007/02/27(火) 13:17:16
質問なのですがTomcat ver5.5のsetCharacterEncoding()を有効にするには
conf/server.xmlのどこをどういじれば良いのでしょうか?
ググって見たのですが、分かりませんでした。useBodyEncodingforURI="true"
を追加することは分かるのですが… どうかご教授ください。
749デフォルトの名無しさん:2007/02/27(火) 13:43:29
>>748
ぐぐるよりも先にTomcatのドキュメントを見ろよ
750デフォルトの名無しさん:2007/02/27(火) 13:45:33
商品管理のシステムを今作っていて『日付の比較処理をしろ』と
いわれたのですが比較?という感じでしてどうやったらいいのか
がわかりません、なにかサンプルコードとかないでしょうか?
751デフォルトの名無しさん:2007/02/27(火) 13:50:25
aDate.compareTo(anotherDate)
とか、

aCalendar.setDate(aDate)
aCalendar.before(anotherdate)
aCalendar.after(anotherdate)
とか。


752デフォルトの名無しさん:2007/02/27(火) 13:51:48
すいません補足です、どういうものが比較になるのかもわからないので
それを教えていただけたら幸いです。
753748:2007/02/27(火) 13:57:56
748ですが解決しました。アドバイスありがとうございます。
754デフォルトの名無しさん:2007/02/27(火) 14:00:41
日付に対して比較というのは、
日付Aが日付Bより前の日なのか同じ日なのか後の日なのか
を判定するということ。
755デフォルトの名無しさん:2007/02/27(火) 14:01:46
>>752
てめえのところのシステムの要件なんか汁かボケ。
エスパーじゃないんだから。
てめえが書かなきゃわかるわけ無いだろ。
756デフォルトの名無しさん:2007/02/27(火) 14:09:15
>>751
>>754
おぉなるほど!理解しました!迅速な対応ありがとうございました。
757デフォルトの名無しさん:2007/02/27(火) 15:46:36
MySQLに接続できねぇ〜〜
758デフォルトの名無しさん:2007/02/27(火) 15:54:25
でけたw
759デフォルトの名無しさん:2007/02/27(火) 17:06:58
毎日4時間Javaの勉強(本とインターネットのみ)でやるとして
プログラム設計書1本まともに書けるようになるのは何ヶ月くらい
でみたほうがいいかな?
760デフォルトの名無しさん:2007/02/27(火) 17:10:54
人それぞれ。基本知識もなくだらだらやっても時間は経っていくからね。
出来る奴は1ヶ月もありゃ十分。出来ない奴は何十年やっても無駄。
761デフォルトの名無しさん:2007/02/27(火) 17:15:51
できるやつは1ヶ月で十分なのか…
設計書とかだとサンプルがないからどういうふうに
書いていけばいいのか検討がつかね。


762デフォルトの名無しさん:2007/02/27(火) 17:48:29
素質もあるんだろうけど、基礎知識と参考資料の量・質が
モノを言う気がするなあ。
プログラムが何かってことから始めて1ヶ月ってのは
まずありえない(ぐらいにレア)だろうしね。
763デフォルトの名無しさん:2007/02/27(火) 17:52:35
ColorConvertOpを使ってフルカラーをインデックスカラーに変換したいのですが、
以下のようなソースだと、あらかじめパレットを用意しておく必要がでてきてしまいます。
パレットを自動的に最適化してくれるような方法はないでしょうか?

//パレット
byte[] rs = {-1, 127, 0, 0};
byte[] gs = {-1, 0, 127, 0};
byte[] bs = {-1, 0, 0, 127};
IndexColorModel colormodel = new IndexColorModel(2, 4, rs, gs, bs);

//一時的に使うイメージ
BufferedImage tmpimg = new BufferedImage(
orgimg.getWidth(), orgimg.getHeight(), BufferedImage.TYPE_BYTE_BINARY, colormodel);

//変換
ColorConvertOp colconvop = new ColorConvertOp(null);
colconvop.filter(orgimg, tmpimg);
764デフォルトの名無しさん:2007/02/27(火) 17:53:05
質問します。入力ファイルのGET処理を行うようにと言われたのですが
GETってHTTPメソッドですよね?ということはホームページを
取得しなければならないわけですがそれはどうやったらいいですか?
765デフォルトの名無しさん:2007/02/27(火) 18:00:11
宿題の質問なら先生にしてこい
766デフォルトの名無しさん:2007/02/27(火) 18:33:41
設計書

と言ったときに定型が無いのが今のこの業界の問題。
モノが作れるはずもない屑設計書でも設計書と言い張るヤツもいる。
767デフォルトの名無しさん:2007/02/27(火) 18:41:47
何のために人間同士でやり取りしてるんだ
打ち合わせで補完しろ
一番世の中のためになるのは使えねえ設計書だし使えねえ人間だって言ってやることだが
768デフォルトの名無しさん:2007/02/27(火) 18:46:51
>>766
やはり定型がないのですか。要は書いたまんまのとおりにやり
そのプログラムが動けばそれが"設計書"というわけなのですね。
どういう書き方であれ。
769デフォルトの名無しさん:2007/02/27(火) 18:58:02
WEB-api
770デフォルトの名無しさん:2007/02/27(火) 19:18:36
HTMLの表示にGeckoを使用するため、Webclient 2.0 Alpha 3.0 と Mozilla 1.7.12 をダウンロード・解凍し
下記のページを参考に各種設定を行いました。
tp://null.michikusa.jp/misc/webclient.html

ディレクトリとビルドパスの設定は次のように行いました
 ・プロジェクト…C:\workspace\gecko\
 ・Mozilla.exeのディレクトリ…C:\workspace\gecko\mozilla
 ・webclient.jarのパス…C:\workspace\gecko\mozilla
 ・VM引数の設定…
   -DJava.library.path=C:\workspace\gecko\mozilla;C:\workspace\gecko\mozilla\components
   -DBROWSER_BIN_DIR=C:\workspace\gecko\mozilla

mozillaディレクトリの内容はmozilla-win32-1.7.12.zipを解凍して得られたフォルダに
webclient_2_0_a3_win32.zipを解凍して得られたwebclient_2_0_a3_win32フォルダから
webclient.jar、javadomjni.dll、webclient.dllをコピー、また\webclient_2_0_a3_win32\componentsの
javadom.dllを、mozilla\componentsにコピーしたものです。

その後、テストとして同ページからSimpleBrowser.java(tp://null.michikusa.jp/misc/SimpleBrowser.java)を
eclipse上で実行したところコンパイルは正常に行われるのですが、実行段階で
java.lang.NoClassDefFoundError: Exception in thread "main" が表示されてしまいます。
ビルドパスの設定が間違っているのでしょうか。
771デフォルトの名無しさん:2007/02/27(火) 20:27:33
基本設計と詳細設計(DBやら画面やらユースケースやら)は書くけど
プログラム設計書って書いたことも見たこともないな。どういうことが書いてるの?
772デフォルトの名無しさん:2007/02/27(火) 20:38:59
>>768
建築の世界だと、作り方が分かってもモノを組み上げなきゃ駄目だけど
ソフトウェアの世界で、書いたとおり作れば動く、というレベルのモノを作ると
それは、コード書く手間とほとんど変わらなくなってしまう
元々、建物を建てるよりコードを書く行為の敷居が低いわけだからね

だから建築の設計にも求められるセンスをソフトウェアの設計に持ち込むとすれば
それは、どれだけ少ない記述で何を作るかと言うことが明確に伝えられるか、だろうか?

>>771
実はオレも見たことがない。意外とソースコードが日本語で書かれているようなものかもw
773745:2007/02/27(火) 22:07:17
>>746
日本語の解説サイトはどうやら無いみたいですね…
でもCとDLLの知識をつければ出来そうな気はしますね!
早朝に迅速な回答ありがとうございました。やってみます。
774デフォルトの名無しさん:2007/02/27(火) 23:46:49
イベントリスナを登録したいのですが、
どうすればいいですか?
btnAdd.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnAddActionPerformed(evt);
}
});
とか入れたいのですが、うまくはいってくれません。
なにこれ?
ちなみにこれは創るJavaからのソースです。
なんかいい方法ありますか?
他スレから誘導されました。
よろしくです。

775デフォルトの名無しさん:2007/02/28(水) 00:13:09
XxxxListenerインターフェイスを実装したクラスまたは、
XxxxAdapterクラスを継承したクラス
のインスタンスを作る。thisが該当インターフェイスを実装してもいい。

そのインスタンスを引数にして、イベントが発生するオブジェクトの
adXxxxListerメソッドを呼ぶ。

言葉の意味が分からないなら背伸びしすぎ。
776デフォルトの名無しさん:2007/02/28(水) 00:26:06
>>745
本体ウィンドウというのが良く分からないけど、KeyboardFocusManager とか??
子ダイアログにフォーカスがあたっているってこと?
777デフォルトの名無しさん:2007/02/28(水) 01:53:47
ボタンを押すごとにテキストファイルから1行ずつ文字列を読み込むには
どうすれば良いでしょうか?
ボタンを押して1行目を読み込むまではできたんですが、2行目以降を
どうやって読み込めば良いかわかりません。
よろしくお願いします。
778デフォルトの名無しさん:2007/02/28(水) 02:40:19
>>777
イベントハンドラの中で毎回Reader作ってるだろ?
779デフォルトの名無しさん:2007/02/28(水) 03:07:10
サブクラスのメソッドに、
スーパークラスのメソッドと名前&引数が同じで、
戻り値の型だけ違うものは作れないのでしょうか?
780デフォルトの名無しさん:2007/02/28(水) 03:13:57
>>779
サブクラスを返すメソッドなら作れる。
これは、Genericsの導入の際に拡張された。
781デフォルトの名無しさん:2007/02/28(水) 04:40:16
>>774
>うまくはいってくれません。
じゃ、なんのことだかわかんねぇよ!(w
しかたねぇからエスパー。

もしかしてNetBeansが自動生成したコードの部分に追加や修正を加えようとしてないか?
782デフォルトの名無しさん:2007/02/28(水) 08:38:06
>>738
文系出身であることになぜにこだわるのか?
文系出身者は多いが、文系出身であることを
免罪符に甘えようという魂胆じゃなかろうな?
783745:2007/02/28(水) 08:56:42
>>776
今回作成中のプログラムではフレームを一つしか使わないのですが、
そいつのことです。うう、下手な説明…
子ダイアログにじゃなくて、そのjavaアプリ自体が
フォーカスを失っている状態時に、(デスクトップにフォーカス、IEにフォーカス、等)
キーボード操作でアプリにイベントを送りたいのです。(あるボタンを押させる等)

KeyboardFocusManager勉強してみます。返答ありがとうございます〜
784745:2007/02/28(水) 09:03:15
訂正
フォーカスを失っている状態じゃなくて、非アクティブ状態の方が
正しいですね。m(_ _)m
785デフォルトの名無しさん:2007/02/28(水) 09:40:24
>>699
Singletonパターンでググレッ
786デフォルトの名無しさん:2007/02/28(水) 09:41:01
>>703
されと、つけたほうが見やすい。
だがstaticの場合は、クラス名.をつける
787デフォルトの名無しさん:2007/02/28(水) 09:42:45
>>711
> 整数部の四捨五入したいんだけどどうやるの?(150→200とか140→100とか)
> 小数点以下なら以下のでできるんだけど
> double val = bd.setScale(1,BigDecimal.ROUND_HALF_UP).doubleValue();

ここキモイよ。MathContextとRoungingError使おうや。
せっかく列挙型使えるんだからさ

788デフォルトの名無しさん:2007/02/28(水) 09:43:52
>>714
今ならroundingMode引数なんて
使わずMathContextを使うべし
789デフォルトの名無しさん:2007/02/28(水) 13:43:03
Vector使うとエラーになるんだが、どうしたらいい?
790デフォルトの名無しさん:2007/02/28(水) 13:43:09
>>788
1.5以上ならね。
791デフォルトの名無しさん:2007/02/28(水) 13:43:47
>>789
使わない。コレで解決。

後はエスパーの登場を待つ。
792デフォルトの名無しさん:2007/02/28(水) 13:46:26
やさしいJ活用編でVector使ってるんだけど、サンプルプログラムが動かんん。
793デフォルトの名無しさん:2007/02/28(水) 13:59:04
Vectorなんていまだに使ってるやついるのか。
ArrayListにしておきなよ
794デフォルトの名無しさん:2007/02/28(水) 14:10:30
やさすぃいJ活用編の8.3をArryListに修正したソースをうpしてください。fromのびたtoでんぱ
795デフォルトの名無しさん:2007/02/28(水) 14:41:28
>>794
ソースみして
796デフォルトの名無しさん:2007/02/28(水) 14:46:02
VectorでエラーになるソースならArrayListでも駄目だろう
797デフォルトの名無しさん :2007/02/28(水) 14:59:04
くずたれ初心者です。
質問さしてください。
独習JAVAでJAVA勉強しています。
まず、catchの構文で(Exception e)の後
System.out.println("Exception: " + e);だったり
e.printStackTrace()だったりするんですが、後者を使ってはいけない
時がどういう時なのか、わかりません。後者でも良いのでしょうか。
次に、ストリームに関してなのですが本の中ではバッファを使ったり
しても、close()するのは一つしかクローズしてないんですが
それでも問題は無いんでしょうか。
開けたストリームはクローズしないのはおかしいような気がして
それぞれのストリームをクローズしてもエラーは出ないんですが
特に気にしなくても良いのでしょうか。
あと、RandomAccessFile("filename","r")の"r"は
readonlyという事なのでしょうか、何の説明も無く例題で書かれて
いましたが、一応c言語やってたので意味合いを同じととらえました。
あっていますでしょうか。
しょうもない質問だと思いますが、答えていただければ幸いです。


798デフォルトの名無しさん:2007/02/28(水) 15:06:48
>>797
printStackTraceは例外発生時にスタックトレースまで見ることが必要なときに使う。
ストリームの最後の出口をcloseすればそれに繋がっているストリームは閉じられる。
rは読み取り専用の意味なので合っている。
799デフォルトの名無しさん:2007/02/28(水) 15:12:47
>>797
> 後者を使ってはいけない
System.out.println("Exception: " + e); は大抵一行で出力されるし、
e.printStackTrace() は大抵複数行になるから、その辺の見栄えで使い分けてるとか、
もしくは何も意図が無くって、統一されてないだけ、とか。

> close()するのは一つしかクローズしてないんですが
例外が発生しない場合は連鎖的に close するはずなんで、
入門者用の本なら例外処理のサンプルとして載せてるんでなければ無くても良いと思う。

> "r"は readonlyという事なのでしょうか、
API仕様みろ。
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/io/RandomAccessFile.html#RandomAccessFile(java.io.File,%20java.lang.String)
800デフォルトの名無しさん:2007/02/28(水) 15:38:12
>>799
まぁ、初心者に一番はじめに教えるのは
「APIのjavadoc見ろ」
だな。
テンプレに入っててもいいんじゃないかと思った。

迷ったときは、とりあえずここ開いて調べてみる、と。
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/api/index.html
ttp://java.sun.com/javase/ja/6/docs/ja/api/index.html
JavaSE6ももうすぐで日本語になるはずだし。
API記述の解釈が分からないと言うことであればもう少し進んだアドバイスになるはず。
801デフォルトの名無しさん:2007/02/28(水) 20:02:21
http://s.freepe.com/std.cgi?id=entitymn&pn=02
↑コンパするとYJK_241.javaの操作は、未チェックまたは安全ではありません。と表示されるのですが?
http://s.freepe.com/std.cgi?id=entitymn&pn=01
↑ブラウザにorg.apache.jasper.JasperException:JSPのクラスをコンパイルできません。と表示されるのですが?
802デフォルトの名無しさん:2007/02/28(水) 20:26:19
>>801

1つめだけ
方法1 コンパイルオプションに -source 1.4 を付ける。
方法2 警告が出る箇所すべてに@SupressWarning("unchecked") というアノテーションを付ける。
方法3 全部generics対応に書き換える。

というかいまどきVectorなんか使うなよ。
803745:2007/02/28(水) 22:47:17
>>783
ごめん。アプリケーションがフォーカスをLOSTしている状態では、KeyboardFocusManagerは使えない。
私の知っている限り、jniでフック(キーボードフック)をしないと、駄目だと思う。
参考にならなくて、ごめん。
804デフォルトの名無しさん:2007/02/28(水) 22:52:38
ありがとう。でも、
でけなかった(:D)| ̄|_
練習なので、エラーでもスルーにします( ̄σ‥ ̄)
ごめんなす
805776:2007/02/28(水) 22:58:59
>>803
名前間違えた、>>745たびたびごめん。
806デフォルトの名無しさん:2007/02/28(水) 23:16:25
ちなみに
801=804
だからね
807777:2007/02/28(水) 23:51:40
でけたwwwけどなんかソースコード汚ねぇorz
>>778
どうもありがとうございました。
808745:2007/03/01(木) 08:59:48
>>803,805
いえいえ、とんでもない。。一つ勉強になりました(`・ω・´)
キーボードフックとやらはかなりの荒業みたいですね。
完成までの道のりは通そうですが、とりあえず>>746さんの
jintellitypeを研究してみます〜
809デフォルトの名無しさん:2007/03/01(木) 11:46:52
質問です。
テキストファイルから、正規表現を使ってマッチした文字列をグレップする方法を
教えてください
810デフォルトの名無しさん:2007/03/01(木) 12:00:58
grep使えばいいんじゃね?
811デフォルトの名無しさん:2007/03/01(木) 12:09:01
グレップ?といいますとライブラリにありますか?
探したんですが・・・
812デフォルトの名無しさん:2007/03/01(木) 12:12:48
Linuxのコマンドだろ
813デフォルトの名無しさん:2007/03/01(木) 12:40:32
1行1行正規表現でチェックしていけばいいんじゃない?
814デフォルトの名無しさん:2007/03/01(木) 13:14:36
>>792
スレッドつかうプログラムか?
815デフォルトの名無しさん:2007/03/01(木) 13:16:15
>>797
> くずたれ初心者です。
> 質問さしてください。
> 独習JAVAでJAVA勉強しています。
> まず、catchの構文で(Exception e)の後
> System.out.println("Exception: " + e);だったり
> e.printStackTrace()だったりするんですが、後者を使ってはいけない
> 時がどういう時なのか、わかりません。後者でも良いのでしょうか。

お客さんの鯖管理者にTomcatのエラーログを誤魔化したいとから
使っては逝けない

そうです。

かわりにcatchですぐにreturnでバグの証拠隠滅です

816デフォルトの名無しさん:2007/03/01(木) 13:27:26
Javaでアプリを作ってるんだけど、プラグインの仕組みが用意してあって、
あとからサードパーティが好みのモジュールを開発して追加できるようになってます。
ただそのプラグイン側のコードには見せたくないパスワードを保管したファイルがあって、
モジュール側からはファイルへのアクセスを一切禁止したい。
どうすれば実現できますか?
Javaのセキュリティマネージャ使えば可能?
817デフォルトの名無しさん:2007/03/01(木) 13:28:39
ちょっと訂正

×モジュール側からはファイルへのアクセスを一切禁止したい。
○モジュール側からはそのパスワードファイルへのアクセスを一切禁止したい。
818デフォルトの名無しさん:2007/03/01(木) 13:48:12
>>800
今なら、Java SE 6ドキュメントはこれがお勧め。
日本語サイトはなぜかjava.netにある。
本家はなぜか英語版しかない。
>>1のWikiroomのほうを更新して老いたけど
こちらに伝えるの忘れてた。


# AbstractDocument.Content (Java Platform SE 6)
http://download.java.net/jdk/jdk-api-localizations/jdk-api-ja/builds/latest/html/ja/api/
* ↑ Java SE 6 API日本語ドキュメント(なぜか本家サイトにリンクがない)

# JDK 6 ドキュメント
http://download.java.net/jdk/jdk-api-localizations/jdk-api-ja/builds/latest/html/ja/
* ↑ Java SE 6 日本語ドキュメント(なぜか本家サイトにリンクがない)
819デフォルトの名無しさん:2007/03/01(木) 13:50:59
>>812
Linuxっていうか古来UNIXからあるファイル内文字列検索コマンド。


つうか、Javaでgrepしたければjava.util.regexかJakarta ORO。
820デフォルトの名無しさん:2007/03/01(木) 13:51:26
>>815
そういうことする奴いるけど、
卑怯だと思うな
821デフォルトの名無しさん:2007/03/01(木) 13:52:47
>>816
パスワードファイルの中身は、
暗号化済みのコードだけいれておけばいいんでない。

つうか、暗号認証方式は何よ?
822デフォルトの名無しさん:2007/03/01(木) 14:19:22
>814
つ【>801】
823デフォルトの名無しさん:2007/03/01(木) 14:34:04
>>818
> 日本語サイトはなぜかjava.netにある。
まだ日本語API仕様は正式リリース前のはず。
824デフォルトの名無しさん:2007/03/01(木) 14:38:09
809です。
レス遅れてすいません。答えてくださった方々ありがとうございます。
で、正規表現を使って、java.util.regexのgroupメソッドでなんとか
しようと思うのですが、正規表現で、
 <a から始まり (ひとつ以上の文字列を含む) >  </a>で終わる文字列
を表現したいのですが、教えていただけないでしょうか。
自分で作ってもどうもマッチしないので・・・
825デフォルトの名無しさん:2007/03/01(木) 14:39:38
826812:2007/03/01(木) 14:40:36
>Linuxっていうか古来UNIXからあるファイル内文字列検索コマンド。
*BSD使いだな?
827デフォルトの名無しさん:2007/03/01(木) 15:00:49
BSD使ったことあるけど、Solarisにもあるよ。
828デフォルトの名無しさん:2007/03/01(木) 15:02:24
>>825
これって、翻訳しているのはSunの関係者とは限らない人なのか?
ということは、俺らでも参加できるのかな?
829デフォルトの名無しさん:2007/03/01(木) 15:04:15
>>824
表現? つうか、まず最初にターゲットとする
文字列は何?
ただたんにアンカータグで囲むだけ?

予想ではhttp://で始まる文字列をアンカーで囲む
ってことなんだろうけど、それなら@ITにサンプルがあったよ。
Java SolutionのJava Tipsだったかな?
830デフォルトの名無しさん:2007/03/01(木) 15:06:24
>>822 >>801

//列名の取得
for(int i=1;i<=cnum;i ){
colname.addElement(rm.getColumnName(i).toString());//列数を保存
}

//行の取得
data=new Vector();
while(rs.next()){
Vector rowdata=new Vector();//1行分をのデータを保存するベクタです
for(int i=1;i<=cnum;i ){
rowdata.addElement(rs.getObject(i).toString());//各データを保存します
}

このfor文のインクリメントがものすごくきになる。
iがi++となっていないのはアップローダの問題?

831デフォルトの名無しさん:2007/03/01(木) 15:16:31
ここんとこ、finallyでやるべきだと思うが・・・
//接続のクローズ
rs.close();
st.close();
cn.close();

このように、
}catch (例外){
 ...
}finally {
 try{
if(rs != null)   rs.close();

....


} catch (SQLException){
...
}
}
832デフォルトの名無しさん:2007/03/01(木) 15:19:25
DBの接続が本当にうまくいっているのか? エラーログや例外は何だ?
833デフォルトの名無しさん:2007/03/01(木) 15:23:01
groupが突如登場しているのは、grepを勝手にgroupだと思った?
834デフォルトの名無しさん:2007/03/01(木) 16:28:52
質問です。
JOptionPane.createInternalFrameでYES_NO_OPTION(ボタンが複数個存在するタイプ)の
JInternalFrameを作成した場合
・ボタンが押されたタイミング
・どのボタンが押されたのか
上記2点を判別する方法はどのように行えばいいのでしょうか。
835デフォルトの名無しさん:2007/03/01(木) 16:36:25
>>821
そのアプリでは組み込み用のDBを使っていて、
プラグイン側からそのDBにたいしての更新や削除は禁止したいのです。
だからDBに権限の弱い読み取り専用のユーザアカウントを用意して、
プラグイン側にはその弱いアカウントのみを使用させようと思っています。
だからDBの管理者用のパスワードはプラグイン側から参照されてはならず、
だからそのパスワードを保管したファイルを読まれたくないわけです。

毎回アプリの使用者に尋ねる性質のパスワードではないので、
一度登録すれば次からは自動化したいです。

ハッシュ方式のパスワードは、
アプリが起動時にDBと接続するためのパスワードなので使えないと思うんです。
ハッシュコードを作る平文のパスワードをどこかに保管するしかないから。
可逆性の暗号を使ったとしても、結局もとに戻すキーが書かれたファイルが
読まれてしまえばそれまでだし。
836デフォルトの名無しさん:2007/03/01(木) 16:46:25
プラグインには弱い権限のConecctionだけ公開するとかの方がいいんじゃない?
837デフォルトの名無しさん:2007/03/01(木) 16:55:47
>>836
もちろんそれでもかまわないのだけど、DBはポートを開いてまちうけているので、
プラグインからも別にコネクションを作成してアクセスしようと思えばできてしまうのでは?
プラグイン開発者の善意にゆだねるというの手だけど・・・。
838デフォルトの名無しさん:2007/03/01(木) 17:24:09
それで駄目ならパスワード隠したって意味無いじゃん。
何がしたいのかわかんなくなった。
839デフォルトの名無しさん:2007/03/01(木) 17:46:02
>>838
んー、なんか俺って根本でまちがえてるのかな。
DBの平文パスワードを盗めば、
プラグイン側で勝手にコネクションを作ってDBにアクセスして、
削除・更新・登録ができてしまうと思うんだけど。
勝手にコネクションを作ることを禁止することは可能なの?
840デフォルトの名無しさん:2007/03/01(木) 18:37:22
DBってJDBC経由?
841デフォルトの名無しさん:2007/03/01(木) 18:40:54
>>840
はい。
842デフォルトの名無しさん:2007/03/01(木) 18:44:12
JScrollPaneで、縦スクロールバーだけを使用する方法は無いでしょうか?
分かりにくいと思いますが、横スクロールバーは表示させずに、右端まで行ったら改行、という風にしたいのです。
回答お願いします。
843デフォルトの名無しさん:2007/03/01(木) 18:46:35
>>841
パスワードとかはプラグインから手の届かないところに隠しちゃって、
Connection あたりを渡すだけにすればいいんじゃないの?
Connection を勝手に権限拡大して接続しなおすなんてことはできないから。
Statement を渡すとかすればもっと安全だろうけど。
844デフォルトの名無しさん:2007/03/01(木) 18:54:31
>>843
プラグインから手のとどかないところがどこなのかが問題だなとおもって。
セキュリティを一切かけてなければプラグインのコードもシステムすべてのファイルやソケット等に
アクセスできてしまうから。
一見わかりにくくして隠すことはできるけど、そういうのは遅かれ早かれ破られてしまうし。
845797:2007/03/01(木) 19:07:35
>>798さん
>>789さん
レスありがとうございました。
理解できました。
ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/api/index.html
のサイト初めて知りました。しかしすごいですね。
ここまで翻訳されてるとは。
それに比べてmsdnは・・・
846デフォルトの名無しさん:2007/03/01(木) 21:05:31
へろーわーるどな段階で躓いてしまいました。
MySQLをJDBC経由で繋ごうとすると「java.sql.SQLException: Java does not support the MySQL character encoding encoding」とか出てくれます。
これはなんでしょう?
ぐぐっても中国語のサイトが2件引っかかるだけです……。
847846:2007/03/01(木) 21:23:56
>>846
失礼しました。これだけじゃ何にも判りませんよね(^^;

動かしてるのはWindowsXP上です。Windows版の4.1.22を動かしています。
my.iniのdefault-character-set=utf8は「utf8」です
[mysql][mysqld]の両セクションとも確認しました。

使用しているドライバはmysql-connector-java-5.0.4-bin.jarです。

JDBCは次のようにしてコネクションを作っています。
Class.forName("com.mysql.jdbc.Driver");
Properties props = new Properties();
props.put("user", ユーザー名);
props.put("password", パスワード);
props.put("useUnicode", "true");
props.put("characterEncoding", "UTF8");
Connection cnn = DriverManager.getConnection("jdbc:mysql://ホスト名/スキーマ名", props);

テストデータは、mysqldumpで作ったデータをコマンドプロンプトから「mysql スキーマ名 < ダンプファイル名」で作成しました。
ダンプファイルの中身もUTF-8であることを確認しています。
848デフォルトの名無しさん:2007/03/01(木) 21:30:33
BufferedReaderでストリームを開いて処理が終わったら、必ずclose()でストリームを
閉じなければ駄目なんでしょうか?もし閉じなければどういう影響がありますか?
849デフォルトの名無しさん:2007/03/01(木) 21:34:43
>>847
UTF8じゃなくてUTF-8と指定してみたら?
850デフォルトの名無しさん:2007/03/01(木) 22:09:32
>>847
> >>846

> Connection cnn = DriverManager.getConnection("jdbc:mysql://ホスト名/スキーマ名", props);

ここんところを、
> Connection cnn = DriverManager.getConnection("jdbc:mysql://ホスト名/スキーマ名?useUnicode=true&円コーディング名=utf8", props);

とかやってたような記憶があるんだが....
851デフォルトの名無しさん:2007/03/01(木) 22:27:53
蝦ちゃんの大ファンkoichiKのブログにこんなこと書いてあるんだが。

http://d.hatena.ne.jp/koichik/20060520
2006-05-20 (土)
■[Tech][Java] package-info.java 06:00
Maven2 の maven-javadoc-plugin を使って JavaDoc を生成してるのですが,package-info.java ファイルに
記述したパッケージコメントが出力されません...
実行中は
ソースファイル /s2jms/src/main/java/org/seasar/jms/core/package-info.java を読み込んでいます...
なんてログが出力されてるんですけどねぇ...
だいたい,日本語の JavaDoc のドキュメントに package-info.java の記述がないってどういう事?
英語の「What's New in Javadoc 5.0」−「Notable New Features」には6番目に package-info.java の説明が
あるのですが,日本語の「Javadoc 5.0 の新機能」−「主要な新機能」では @Deprecated Annotation と一緒
に抜け落ちてます.
なんで??
ちゃんと実装されてるんだよね??
別に package.html に書いてもいいんだけど,せっかくJava5 前提の S2JMS なんだから package-info.java
でやりたいなぁ.
うーみゅ...




なぜJava SE 5の日本語ドキュメントにはこの説明が抜けているのだろう?

Java SE 6の正式版になる前の日本語ドキュメントにはちゃんと書いてある。



852デフォルトの名無しさん:2007/03/01(木) 22:48:49
>>828
現時点では翻訳のレビューだけに参加できる。翻訳はsunの人。
ttp://sdc.sun.co.jp/news/2006/08/feature01.html
ttps://jdk-api-ja.dev.java.net/ja/index.html
853デフォルトの名無しさん:2007/03/01(木) 23:12:42
どうでもいいけど、
java.util.concurrentの

AtomicIntegerなどのアトミッククラスをSun日本法人の社員が
原子クラスと訳しているのは妥当なのか?

どれもこれも「原子〜」という用語ばかりだが、
それで訳はあっているのか?




854853:2007/03/01(木) 23:18:43
パッケージ名は
java.util.concurrent.atomicだった。

http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/util/concurrent/atomic/package-summary.html


AtomicBoolean 原子的な更新が可能な boolean 値。
AtomicInteger 原子的に更新可能な int 値です。

AtomicBoolean、AtomicInteger、AtomicLong、および AtomicReference
クラスのインスタンスは、それぞれ対応する型の単一の変数にアクセスお
よび更新を提供します。各クラスは、その型に対応したユーティリティメソ
ッドも提供します。たとえば、AtomicLong および AtomicInteger クラスは、
原子増分メソッドを提供します。あるアプリケーションが、次のように通し番
号を生成するとします。


この訳って、微妙な気がしてならないのだが・・・


原子クラス、原子更新、原子操作、原子増分ってナニよ?

855デフォルトの名無しさん:2007/03/01(木) 23:20:16
>>853
シリアライズを直列化って訳したりしてるので、伝統のような。

英語力があって、なおかつその分野の知識を持ってる人を集めるのは結構大変なんでは?
Microsoft でも昔は LightWave3D を光波とか訳してたりしてたし。
856853:2007/03/01(木) 23:21:46
be updated atomically 原始的な更新
atomic updates 原子更新
atomic increment 原子増分
The atomic classes 原子クラス
atomic operation 原子操作




うーむ・・・・・

これでいいのか?
857デフォルトの名無しさん:2007/03/01(木) 23:27:31
>>855
直列化はいいんでないかな。あれの場合はなるほどという気がする。
光波は酷いな。物理屋に笑われる。商標までも訳すのはいくらなんでもひどいぞM$KK。

不可分操作
http://ja.wikipedia.org/wiki/%E4%B8%8D%E5%8F%AF%E5%88%86%E6%93%8D%E4%BD%9C

によると、不可分操作あるいはアトミック操作(=原子操作)
と書いてある。

atomicはアトミックや不可分でいいじゃないかと。

858デフォルトの名無しさん:2007/03/01(木) 23:27:40

普通、原子操作っていったらこっちのことだと思うが・・・
http://www-e2.ele.eng.osaka-u.ac.jp/jp/index.html

研究内容>研究紹介

当研究室では、「原子操作」をキーワードとして、原子を動かす要素技術・測定技術開発を行
っている。また、原子操作の基本原理となり得る、個々の原子に働く単原子間の結合力やエ
ネルギーを実空間で観察するための技術開発や物理現象の解明を行っており、工学、物理
学、化学といった複合領域的研究を行っている。海外や企業からの研究者も参画しており、
活発な研究活動を行っている。

原子操作を行うための要素(周辺)技術をして以下テーマに関する研究を行っている。
*原子・分子操作に関する研究

我々は世界に先駆けてNC-AFMを用いた原子・分子操作の研究を行っている。NC-AFMは
原子・分子操作を行う際に本質的である原子間力を測定できる点、絶縁体表面で原子操作
ができる点等の利点があるためボトムアップテクノロジーのコア技術になる。現在、Si(111),
Ge(111)表面でのNC-AFMを用いた単原子操作に世界で初めて成功しており、絶縁体表面
での原子操作も研究している。
プローブ顕微鏡を用いた原子操作は、通常極低温(例えば4K)状態で行われるのが常識で
あったが、我々の研究で室温でも行えることを実証した。具体的には、Ge(111)-c(2x8)表面上
のSn原子を用いて、室温中で文字を書くことに成功した。


研究項目

* 単原子の力学的垂直原子操作(原子の引き抜き、埋め込み)
* 単原子の水平原子操作
* 原子・分子操作の微細組み立てへの応用
859デフォルトの名無しさん:2007/03/01(木) 23:28:44

【質問】

HTMLドキュメントを取得して、
その中から指定したタグの中身だけをファイルに書き出す。

っていうプログラムを作りたいんだけど、
どうやればパフォーマンス(速度)のいいものが作れるでしょうか。

(1)HTMLドキュメント取得(DataInputStreamにいれる)
(2)BufferedReaderにいれる
(3)readLine()して、StringBuiderにいれる
(4)lastIndexOf()つかって抜き出す

タグ<p></p>は1行におさまらないから、わざわざStringBuilderにいれて1行にしてます。
自分はこの方法しか知りません。もっといい方法ないでしょうか。
860デフォルトの名無しさん:2007/03/01(木) 23:33:44
>>859
原子操作のことが気になって質問に答える気がしないが

わかることがあるとすると、RandomAccess
861デフォルトの名無しさん:2007/03/01(木) 23:36:12
>>859
もひとつあった。
HTMLがXHTMLであればXMLパーサが使える。
SAXで高速化できるかも。

どうにもならないなら、readLine()タグを見つけたら
スタックに詰め込んで、次のタグが現れるまであれこれする
みたいに、「言語処理系」の本などを参考に
構文解析してゆくのがよかろうかと。
862デフォルトの名無しさん:2007/03/01(木) 23:52:04
>>853
データベースにACID特性という言葉があるから直訳としては妥当だと思う。
863デフォルトの名無しさん:2007/03/02(金) 00:14:34
Sunの日本語文書マニュアル・辞書は結構ガチガチなので、
個人の裁量や能力で決められない部分も多い。
「デプロイ」ではなく「配備」
「デプロイメントディスクリプタ」ではなく「配備記述子」
「リクエスト」ではなく「要求」
「レスポンス」ではなく「応答」
「ボディ」ではなく「本体」
「persistence」は「持続性」

・・・なので、例えば「リクエストのボディ」は「要求の本体」と表記される。
かえってわかりにくいw
864デフォルトの名無しさん:2007/03/02(金) 00:20:02
>>862
「データベースの分野でもACID特性のA(atomicity)を原子的と訳すから」
なら分かるんだが、862では意味不明。

865デフォルトの名無しさん:2007/03/02(金) 00:23:12
JREのライセンスについて質問です。

通常JREは無料ダウンロードして使用することが出来ますが、
IBMのWebsphereなどに付属しているJREを複製して利用しても良いのでしょうか?
コピーするのはJREのみで、テスト実行環境を作るために使います。

ご存知でしたらご教示願います。
866デフォルトの名無しさん:2007/03/02(金) 00:25:49
>>859
javax.swing.text.html.parser.DocumentParser
html 的に正しくない場合も適当に解釈してくれる。
867デフォルトの名無しさん:2007/03/02(金) 00:26:31
>>863
慣れちゃったせいもあるのか、その辺は気にならんなあ。
「原子」はどうかと思うけどw
英語のニュアンスからすると原子でいいのかも、とも思うけど
初めて見た人が意味わからんのが困るね。
868デフォルトの名無しさん:2007/03/02(金) 00:38:59
アトミックコンポーネントって原子コンポーネントって翻訳してないよな?
869859:2007/03/02(金) 00:56:59
>>866
うがー APIみたけどまったく意味わからん
ググってもまったくでてこない
使用例plz
870デフォルトの名無しさん:2007/03/02(金) 01:18:05
>>869
メソッド名だけで推測できるだろう。
extendsして使うんだよ。
handle〜メソッドにパース途中で呼ばれる処理を書いておくんだな

たぶん。適当にやってみようや。

こんなんとかも使える
ttp://people.apache.org/~andyc/neko/doc/html/
ttp://htmlparser.sourceforge.net/
871デフォルトの名無しさん:2007/03/02(金) 01:37:16
>>863
> 「デプロイ」ではなく「配備」
> 「デプロイメントディスクリプタ」ではなく「配備記述子」

> 「persistence」は「持続性」

永続性の間違いでは、とつっこんでみる。

> ・・・なので、例えば「リクエストのボディ」は「要求の本体」と表記される。
> かえってわかりにくいw

マジでわかりにくい。

UMLでもdeployment diagramは配置図と呼ぶけど、これはわかりやすいからいい。
けどアトミックをああ訳されると困る。
インターフェースやインターフェイスがインタフェースに、ディジタルがデジタルに
なるようにJISで統一されればいいんだけどねえ。

return valueを返り値ではなく戻り値と訳せるくらいのセンスは欲しい。
872デフォルトの名無しさん:2007/03/02(金) 01:39:29
>>865
SunのJREのライセンスは、最新版はGPL2.0。
昔は厳しかったけど、今はライセンスが緩い。

IBMのは、IBMのほうで見てみて、ライセンス名が
書いてあると思う。CPLとか。

そもそも、JREをコピーしてどうするんだ?

アプリケーションと同梱させるにしても、そんなことせず
ブラウザからJava Web Start呼べるようサーバ側にMIME指定
しておけばいいだけじゃないか。


873デフォルトの名無しさん:2007/03/02(金) 01:42:57
>>868
不可分コンポーネントのほうがいいとおもう。
いや、アトミックのほうがいい
874デフォルトの名無しさん:2007/03/02(金) 09:47:03
>>842
自分も勉強中なんで、アレですが
JScrollPaneを使わずに
JScrollBarで垂直方向だけのスクロールバーを作れば
いいんじゃなかろうか

それか、改行でなくて折り返しでOKならば

JTextArea ta = new JTextArea();
ta.setLineWrap(true);
JScrollPane sp = new JScrollPane(ta);

とやれば、折り返しされて縦スクロールバーのみ表示されるよ
875834:2007/03/02(金) 10:06:14
Object[] opt = new Object[] { "OK", "CANCEL" };
JOptionPane optionPane = new JOptionPane("TEST1",
JOptionPane.WARNING_MESSAGE);
optionPane.setOptions(opt);
JInternalFrame iFrame = optionPane.createInternalFrame(panel,
"TEST1");
iFrame.setVisible(true);
System.out.println("TEST1:" + optionPane.getValue());
JOptionPane pane = new JOptionPane("TEST2",
JOptionPane.QUESTION_MESSAGE);
pane.setOptions(opt);
JDialog dialog = pane.createDialog(panel, "TEST2");
dialog.setVisible(true);
System.out.println("TEST2:" + pane.getValue());

実行結果は下記になります。
TEST1:uninitializedValue
TEST2:OK

TEST1の実行結果はなぜ「uninitializedValue」になるのでしょうか。
876デフォルトの名無しさん:2007/03/02(金) 11:06:44
>>874
setLineWrapを使用することによって望んでいた動作ができました。
分かりやすい説明ありがとうございました。
877834:2007/03/02(金) 11:55:07
自己解決しました
878デフォルトの名無しさん:2007/03/02(金) 13:50:10
>>851
Java SE 5ではSunは翻訳をはしょっていたのか?
879デフォルトの名無しさん:2007/03/02(金) 14:20:26
質問です。
昨日正規表現について質問したものですが、
文字列を「抜き出したいとき」はどうすればいいでしょうか。
groupメソッドだと、その行全体を抜き出してしまうんです。
880デフォルトの名無しさん:2007/03/02(金) 14:40:25
Java初心者です。
NetBeans4.1でGUIアプリを作成しています。
約3秒ごと(きっちり3秒ではなくても良い、という意味です)に特定の動作を行いたい状況になったので、
ttp://www.is.noda.tus.ac.jp/isws/RoboCup/2004/info10.html
の「100ミリ秒周期で?動くプログラムの例」をほとんどそのまま使用してみたのですが、
その動作を実行すると画面自体が固まってしまいます。

System.out.printlnで出力している文章は、少し固まりながらも一定時間ごとに出ているので、
内部の動作が完全に固まった、というわけではないと思います。

処理部分のソースです。
ttp://www.geocities.jp/nullpointer_box/testsource.java

以前もwhile(true)という処理を使用した場合に画面自体が固まってしまったので、それが原因かも、と思います。
ですが、whileを使わない代替案が思い浮かばず、困っています。

代替案、もしくは根本的な解決案をご存知の方居られましたら、ご教示下さい。
881デフォルトの名無しさん:2007/03/02(金) 15:15:37
>>880
使用してるGUIがSwingであるなら、FAQ。
Swing のイベント処理(画面描画も含む)はシングルスレッドで動くため、
clock の実行が終了するまで、画面描画が行われない。

clock の処理は SwingUtilities.invokeLater を呼び出して行う。

ttp://www.javainthebox.net/laboratory/J2SE1.5/MiscAPI/ConcurrencyUtils/ConcurrencyUtils1.html
SwingUtilities.invokeLater でググって一番上に出たところにそんなコードあり。

AWT/SWT 他のプログラミングモデルは知らん。
882デフォルトの名無しさん:2007/03/02(金) 15:16:21
>>879
?

つか、コードサンプルがネットに転がってるから
ググって嫁
883デフォルトの名無しさん:2007/03/02(金) 15:16:52
>>880
clock()の中で行っている処理は別スレッドで行うようにして、
clock()はそのスレッドを起動してすぐに返るようにすればいいのかも。
もしswingコンポーネントを使っているのなら、
別スレッドからそれを変更するときは気をつけて。

でも、100ms周期で動作させるとかなら、
javax.swing.Timerやjava.util.Timerを使った方がスレッドを明示的に使用しないぶん楽かも。
884デフォルトの名無しさん:2007/03/02(金) 15:17:17
質問です。
左側をスペースで埋めて全部で4桁とかで数字を表示するには
どうしたらいいですか。

DecimalFormat df = new DecimalFormat();
df.applyLocalizedPattern( "0000" );
int a=2;
System.out.println(df.format(a)); // 0002
これだと左側が0で埋まるんですが。
885デフォルトの名無しさん:2007/03/02(金) 15:18:58
>>881
まさにSwingです。
FAQにも載っていたのですね、FAQは読んだつもりになっていました。失礼しました。
これから書き込みを参考に頑張ってみたいと思います。
本当にありがとうございました。
886デフォルトの名無しさん:2007/03/02(金) 15:20:15
リロードのし損ない、失礼しました。

>>883
ありがとうございます。その方法も検討してみます。
887デフォルトの名無しさん:2007/03/02(金) 15:20:30
桁じゃ誤解をうみますかね。4カラムです
888デフォルトの名無しさん:2007/03/02(金) 15:20:57
>>884
System.out.printf("%4d%n", a);
889884:2007/03/02(金) 15:24:34
>>888
僕のにはprintfないんですけど
890デフォルトの名無しさん:2007/03/02(金) 15:25:49
>>889
俺のにはあるw
891884:2007/03/02(金) 15:30:49
J2SE 5.0からprintfあるようですが。
古い奴は泣けということでつね (´;ω;`)    ありゃーとごぜーやすた
892デフォルトの名無しさん:2007/03/02(金) 15:31:00
>>889
対策:バージョンアップ
893デフォルトの名無しさん:2007/03/02(金) 15:39:37
>>885
ごめん、まとめサイトにFAQとして記述されてはいないと思う。
「Swingに関するよくある質問」以上の意味は無いです。
894デフォルトの名無しさん:2007/03/02(金) 15:40:50
>>891
無けりゃ作れよ。ここはム板だぞ。
public static void main(String[] args) {
int a=2;
System.out.println(format(a, 4));
}
private static String format(int a, int c) {
StringBuffer s = new StringBuffer();
s.append(a);
while (s.length() < c) s.insert(0, ' ');
return s.toString();
}
効率は気にしない。
895884:2007/03/02(金) 15:44:57
>>894
これは忝い。いやDecimalFormatみたいの当然あるかとオモッタサ
896デフォルトの名無しさん:2007/03/02(金) 15:46:09
>>884
ふぉーまった
897デフォルトの名無しさん:2007/03/02(金) 15:47:45
>>884
printfがないならDecimalFormatを使え
898デフォルトの名無しさん:2007/03/02(金) 15:48:57
つうか、>>884はDecimalFormatの使い方を間違えて(ry
899デフォルトの名無しさん:2007/03/02(金) 15:50:16
http://www.javadrive.jp/tutorial/jformattedtextfield/index7.html

これ見てもわからなければ死んだ方いい
900884:2007/03/02(金) 15:54:41
死んだほうがいいのか俺!
901デフォルトの名無しさん:2007/03/02(金) 15:54:57
つまりこういうことか。
new DecimalFormat( "    " );
902デフォルトの名無しさん:2007/03/02(金) 16:00:01
>>901
お前も死んだ方が良い
903デフォルトの名無しさん:2007/03/02(金) 16:12:15
0の代わりに#を使えばいいのかと思ったんだが、試してみたら
「表示されない」であって「空白になる」ではなかった。
904デフォルトの名無しさん:2007/03/02(金) 16:17:17
DecimalFormatには0パディングはあっても空白パディングはない
905デフォルトの名無しさん:2007/03/02(金) 16:22:45
やっぱそうだよな。以前試した時の記憶と違うから
俺も死なないとダメなのかと思った。
906デフォルトの名無しさん:2007/03/02(金) 17:12:17
いや、>>901で空白パディングしてくれたよ
907906:2007/03/02(金) 17:13:57
あ、ゴメンやっぱりしてくれない
908デフォルトの名無しさん:2007/03/02(金) 17:23:24
とりあえず0で埋めてから
0で始まる部分だけスペースにreplaceすればいい
正規表現でどうにかなるだろ
909デフォルトの名無しさん:2007/03/02(金) 17:26:33
String text = "    " + a;
System.out.println(text.substring(text.length() - 4, text.length());
910デフォルトの名無しさん:2007/03/02(金) 18:17:30
正規表現では難しいんじゃない?
ベタに書いた方が無駄な時間費やさないで済みそう。

・先頭から始まる連続する0の列
・ただし全て0の場合は末尾の0は対象外
をマッチされるのは良いとして、
マッチした長さに応じて置換する方法を調べてるうちに
(そもそもあるのか?)ベタ書きコードが完成してる。
911デフォルトの名無しさん:2007/03/02(金) 19:10:11
俺も >>909 するけどな。
BASICでMID関数かRIGHT関数使って20年前からコレでやってる。
RIGHT$( " "+A$, 4 )か?
0paddingもコレかな。
912デフォルトの名無しさん:2007/03/02(金) 19:47:27
Test(String str){
  char[] ts = str.toCharArray();
}

strには「abcde」と入ってる
この場合ts[0]に入ってるのは「a」?「e」?それとも違う文字?
誰か教えてください
913912:2007/03/02(金) 19:52:15
事故解決しました
「a」から順に入っていく、で合ってるよね
914デフォルトの名無しさん:2007/03/02(金) 20:06:18
>>911
何歳なのか気になったジャマイカ。
915デフォルトの名無しさん:2007/03/02(金) 20:06:47
あってる
916デフォルトの名無しさん:2007/03/02(金) 20:22:33
>>914
最近、10h台ではなくなったと言っておく
917デフォルトの名無しさん:2007/03/02(金) 21:07:35
最近、Javaの勉強がはかどらない…
おやすみ}(:D)| ̄|_
918デフォルトの名無しさん:2007/03/02(金) 21:53:07
D:\owner>java -version
Error occurred during initialization of VM
java.lang.ClassNotFoundException: error in opening JAR file C:\Program Files\Jav
a\jre1.6.0\lib\rt.jar
        at java.nio.charset.Charset.probeExtendedProvider(Unknown Source)
        at java.nio.charset.Charset.lookupExtendedCharset(Unknown Source)
        at java.nio.charset.Charset.lookup2(Unknown Source)
        at java.nio.charset.Charset.lookup(Unknown Source)
        at java.nio.charset.Charset.isSupported(Unknown Source)
        at java.lang.System.initProperties(Native Method)
        at java.lang.System.initializeSystemClass(Unknown Source)

え〜っと……俺は何をやればいいんだ?

一応、c:\Program Files\Java\jre1.6.0\lib\rt.jar は存在してる。
今日、なぜか Jay と Jode が OutOfMemoryError 出しまくって JVM が dump 吐いてる。
何すりゃ良いんだろう……。
919デフォルトの名無しさん:2007/03/02(金) 21:56:55
rt.jarは壊れてないか?
もしjdkを入れているんだったらそっちのバンドルjreが動くか確認してみようか

D:\>C:\Program?Files\Java\jdk1.6.0\bin\java -version
920デフォルトの名無しさん:2007/03/02(金) 22:01:51
>"c:\Java\jdk1.6.0\bin\java.exe" -version
java version "1.6.0"
Java(TM) SE Runtime Environment (build 1.6.0-b105)
Java HotSpot(TM) Client VM (build 1.6.0-b105, mixed mode, sharing)

>"c:\Program Files\Java\jre1.6.0\bin\java.exe" -version
java version "1.6.0"
Java(TM) SE Runtime Environment (build 1.6.0-b105)
Java HotSpot(TM) Client VM (build 1.6.0-b105, mixed mode, sharing)

……今は動く。何だこの不安定さは……。
ちょっとメモリチェックしてくる。物理的にメモリモジュール壊れてそうな雰囲気がする。
921デフォルトの名無しさん:2007/03/02(金) 22:17:12
>>918
> ???at?java.nio.charset.Charset.probeExtendedProvider(Unknown?Source)
charset.jar が無いとか、壊れてるとか。
922デフォルトの名無しさん:2007/03/02(金) 22:34:57
>>916
10時まで起きていられなくなった?
んれとも10代じゃなくなった?
そもそも0歳のころからプログラミングなんてできんだろ

923デフォルトの名無しさん:2007/03/02(金) 22:36:25
>>920
Windows再起動で直る可能性があるぞ。
Eclipse起動するときに、突然ワークベンチが終了して
例外出まくったから何なのかと思ったら
アプリを沢山起動しているのが原因だった。
924デフォルトの名無しさん:2007/03/02(金) 23:11:30
>>921>>923
thx
一応再起動してエラー無し。メモリもHDDも異常無しでした。
やっぱり長いこと OS 立ち上げっぱなしだと、変なことって起きるもんなんですね……。
925デフォルトの名無しさん:2007/03/02(金) 23:53:42
変なことですましたらこの先、暗いな
(:D)| ̄|_
926デフォルトの名無しさん:2007/03/02(金) 23:55:12
リソース不足
927デフォルトの名無しさん:2007/03/03(土) 00:23:34
>>922
hがわかんない奴がこの板にいるとはな
928デフォルトの名無しさん:2007/03/03(土) 00:24:50
>>924
ググれw
92920h歳:2007/03/03(土) 00:37:35
>>927
まあこのスレは仕方ないかな・・・
かといって0xと書いたのではあまりにわざとらしいので・・・・
930デフォルトの名無しさん:2007/03/03(土) 01:17:54
931デフォルトの名無しさん:2007/03/03(土) 02:41:43

こんばんはこんばんは!
ぼく質問厨

HTMLDocumentを取得するっていうプログラムを書いてみたんだけど
会社では使えないみたいなんだ
プロ串が関係あるのかな?

教えてエロい人 
932デフォルトの名無しさん:2007/03/03(土) 03:09:01
>>922 >>927
結局16進数か。
プランク定数かとも思ったじゃないか。


30過ぎたばかりだってだけだろ。

hなんて使ってたら20進数の17と間違えるじゃないか。
20h歳= 2 * 20^2 + 0 * 20^1 + 17 * 20^0 = 97歳 んなわけねえなw

いずれにしても、10hでなくなったということは(10)_16を超えたということで
小学生の頃からプログラミングをやっていたってことか。
Windowsも3.1やMSDOSの頃の時代だったというのに
当時の環境としては随分と恵まれているんだな。

933デフォルトの名無しさん:2007/03/03(土) 03:12:09
>>931
使えないって、実際に使ってみてどんなエラーが
でたのかわからんと答えられない
934デフォルトの名無しさん:2007/03/03(土) 03:12:58
>>924
もういちどjava -versionとやっても変化がなかったのか?
935デフォルトの名無しさん:2007/03/03(土) 03:14:11
>>918
なるほど、クラスパスが臭い
936デフォルトの名無しさん:2007/03/03(土) 03:15:15
>>918
http://www.adobe.com/jp/support/coldfusion/ts/documents/max_jvm_heap.htm

こんなのみつけたぞ。
最大ヒープメモリサイズをとんでもないでっかい値にしているとかじゃないよな?
937931:2007/03/03(土) 03:22:14
>>933
実行後10秒くらいなにもおきなくて、その後エラーがでた
たしか、タイムアウトエラーみたいのだったと思う
938デフォルトの名無しさん:2007/03/03(土) 04:13:02
>>934
何も問題ないです。快調快調w

>>935
そうですか?

>>936
いえ、そのあたりは弄ってないです。
939デフォルトの名無しさん:2007/03/03(土) 08:04:26
>>937
思うじゃわからない。

そもそも、pingは通るのか?

Jakarta Commons HttpClientを使ったのか?
940デフォルトの名無しさん:2007/03/03(土) 09:34:51
この間、 RAD v6 で EJB での開発をしてたんだけど、
エラーが出たとき、スタックトレースで、自分で書いたコードの行数がでなかったんだよね。
これって、Javassist とか Aspect とか DI とかの副作用?
941デフォルトの名無しさん:2007/03/03(土) 12:57:32
>>939
Javaのコードだけです
下の2chWikiとほぼ同じものです

HPのソースをtxtに
http://www.wikiroom.com/java/index.php?%A5%BD%A1%BC%A5%B9%C5%BD%C9%D5%A4%B1
942デフォルトの名無しさん:2007/03/03(土) 13:59:59
>>940
設定ミスかRADのバグじゃ?
943デフォルトの名無しさん:2007/03/03(土) 15:06:17
>>940
-g:none オプションをつけて javac すると行番号が出ない。
944デフォルトの名無しさん:2007/03/03(土) 16:42:53
>>941
表示したいページは社内のブラウザから直接見ることができるのか?

ユーザエージェントがIEじゃないと見られないのとかじゃないよな?

表示したいページのHTMLが膨大過ぎて読み切れないとかじゃないよな?

とりあえず軽いページや
ローカルのページでは試してみたか?
たとえば、 file://で始まるページや
Apacheを入れてhttp://localhost:8080でアクセスするとか
945デフォルトの名無しさん:2007/03/03(土) 16:45:47
にしてもやってることが妙だ。
readerでHTMLを読み込んだら
while()文で
即座にwriterに書き出すようにすればいいのに、
一旦全部StringBuilderに書き出してから
writerに書いている。ここが無駄すぎ。

それにWriterのほうもBufferedWriter使うべき
946デフォルトの名無しさん:2007/03/03(土) 19:24:35
ど素人質問です・・・
Jadなどのプログラムを使うとjavaのプログラムを逆コンパイルできるそうですが、
逆コンパイルを出来なくするようにjavaのプログラムを作ることは出来ますか?
947デフォルトの名無しさん:2007/03/03(土) 19:38:22
出来ないので普通は難読化で我慢。
948941:2007/03/03(土) 21:53:59
>>944
ブラウザからは見れます
ただし、ブラウザ上でプロ串の設定をしています

また、社内のWiki(LAN内)のHTMLは問題なく取得することができます
949デフォルトの名無しさん:2007/03/03(土) 22:02:11
>>948
System.setProperty("http.proxyHost", "プロクシサーバのホスト名");
System.setProperty("http.proxyPort", "ポート");
とか

java -Dhttp.proxyHost=プロクシサーバのホスト名 -Dhttp.proxyPort=ポート メインクラス名
とかしてみれば?
950デフォルトの名無しさん:2007/03/03(土) 22:05:01
>>948
もしくは jdk1.5以降なら、openConnection 時に java.net.Proxy のインスタンスを渡すとか。
951デフォルトの名無しさん:2007/03/04(日) 00:46:02
StreamTokenizerで、
tokenizer.resetSyntax();
...
tokenizer.wordChars('-', '-');
みたいな感じでtokenizerを初期化しているのですが、
先頭の"-"を文字列の先頭文字として扱ってくれません。

マニュアルによると、文字は複数の属性を持つことができると
書いてあるので、'-'が通常文字と、文字列構成文字の両方の
属性がついてしまっているのが原因なんじゃないかなぁと
思ってはいるのですが、解決策がわかりません。
どうやったら"-"を文字列の先頭文字として認識させることが
できるのでしょうか。

よろしくお願いします。
952951:2007/03/04(日) 02:22:08
少し進展?しました。

どうやら
tokenizer.parseNumbers();
を追加すると、'-'を文字列の先頭文字として
認識できないことがわかりました。

tokenizer.parseNumbers();
を追加した状態で'-'を文字列の先頭文字とすることは
できないのでしょうか?

よろしくお願いします。
953デフォルトの名無しさん:2007/03/04(日) 04:35:22
API ドキュメントを見る限り無理っぽいが。
954デフォルトの名無しさん:2007/03/04(日) 05:45:16
まあ仕組み考えたらparseNumbers使ったら-が文字なのかマイナスを表すのか分からなくなるから無理だわな

何がしたいの?
javaCCで字句解析機吐くか自作すればいい。トークナイザ使う必要もなさそうな気がする
955846:2007/03/04(日) 06:10:43
>>849
>>850
お返事が遅くなって申し訳ありません。
どちらも特に変化無く、物は試しとユーザーを「sa」にしたらコネクション作れました。
で、ユーザー名を元に戻すと「Access denied for user」。
ユーザー名もパスワードもコピペで作ってるんだけどなぁ……。

ちなみにホスト名は「localhost」になっているので、他のサーバにアクセスしにいったりはしていないようです。
うーむ、なぜだろう……。
956デフォルトの名無しさん:2007/03/04(日) 09:33:50
はじめまして

通信ソフトを作っていて、文字のやりとりだけでなくzipファイルなどのやりとりもできるようにしようと思いつき、送るストリームの先頭にタグのようなものを付けて区別しようと思いました。
しかしInputStreamなどからまずタグを取り出すと言う操作のしかたがわかりません。
タグはStringで持たせようと思っています。

どうか教えていただけないでしょうか。
957デフォルトの名無しさん:2007/03/04(日) 09:56:14
プロトコルって知ってるか?
958956:2007/03/04(日) 10:07:31
>>957
一応少しはわかっているつもりです。

今回はSocketを使って作っておいて、後にP2P化しようと思っているので

見当違いなことをいっているのなら指摘してもらえるとありがたいです。
959デフォルトの名無しさん:2007/03/04(日) 10:14:50
>>958
SocketとP2Pは直行する概念だと思うんだが・・・
だいぶ「つもり」のようだなぁ・・・

ストリームを送る、という言葉がちょっと違和感ある
JavaのStreamインターフェースとは別の概念で使ってるよな?
960956:2007/03/04(日) 10:30:34
>>959
そうですか・・・(´・ω・`)
将来的にはJxtaに移行したいなと思っていますが、今は標準のSocketを使うつもりです。
ストリームというのはあくまでもSocketからgetInputStreamなどで処理しないといけない(?)と思っているので、
ソフトのなかでInputStreamを使うということです。

朝からすみません
961デフォルトの名無しさん:2007/03/04(日) 10:40:58
そんな状態でこんなところで質問してないで、本でも読んで勉強する方が早いぜ。
近所の本屋に行くとかamazonあたりで探すとかしてみれ。
962デフォルトの名無しさん:2007/03/04(日) 10:48:40
>>946
もしかして : 難読化
963956:2007/03/04(日) 10:52:14
>>961たしかにそうですね。
本を探してみます。返事をしてくれた方がたありがとうございました。
964デフォルトの名無しさん:2007/03/04(日) 11:20:01
>>953,954
お返事ありがとうございます。
・parseNumbersを指定しても"-"単体では通常文字として認識すること
・文字は複数の属性(通常、文字列、数値構成文字等)をもてること
から何とかしてくれても良さそうな気もするのですが、
現状の実装ではどうしようもなさそうですね。。。
965デフォルトの名無しさん:2007/03/04(日) 13:14:12
>>952
面倒だからJakarta OROかjava.util.regex使えよ
966デフォルトの名無しさん:2007/03/04(日) 13:16:27
>>955
WindowsXPで使用しているアカウントが
関係あったりしないよな。
my.iniなどの設定は大丈夫かね?
SQLのgrantでちゃんと権限与えてる金?
967デフォルトの名無しさん:2007/03/04(日) 13:19:35
>>956
通信ソフトってことはTera TermやPuttyのような
ソフトのことを言うのだな?

だが、そういうの(ファイル転送)って普通、FTPでやるもんじゃないのか?
FFFTPやWinScpのようなソフトウェアをJavaで自作する、みたいな。

もしそういうことであれば、Jakarta Commons FTPやJakarta Commons VFS, Jschを
使えば簡単にできるとは思う。


968956:2007/03/04(日) 15:09:54
>>967
返答ありがとうございます。
今回作ろうとしているのは、Socketを使って中央サーバーを持たないチャットをつくり、
その拡張機能としてzipなどのいろいろな形式のファイルも送れるようにしたいと思っています。
それで今、送るbyte列の先頭にファイルの種類と識別文字を付けて送り、その識別文字を使ってファイルの種類の文字列を取得して、その文字列によって残りのbyte列からファイルを取り出すと言う操作を作ろうとしているのですが、
どのようにしてファイルを取り出せば良いのかわかりません。
どうか教えていただけないでしょうか。
969デフォルトの名無しさん:2007/03/04(日) 15:35:37
>>965
そうですね。
parseNumbersを有効にせずに、すべて文字列として取得した後に
regexで数字を取り出すことにしてみます。

ありがとうございました。
970デフォルトの名無しさん:2007/03/04(日) 16:24:35
>>968
何というか、その流すデータのフォーマットを考えるところから
そのアプリケーションを作る、という作業だと思うんだが・・・
そういう意味で、>>957はプロトコルって言ってるんだろうけど
それが理解できないのは辛いんじゃないか?

個人的には、Streamの上に、ObjectStreamを乗せて
通信データのキャリアオブジェクトを流す、
それが分かりやすいかな、と。相手がJava限定なら。
か、XMLEncoder,Decoderと組み合わせて、XMLベースで流すか。
バイト列単位のフォーマットは、扱いが難しいよ、
せっかくパケットの分割集約なんかはTCP層がやってくれるんだから
それはやらなくていいと思う
971956:2007/03/04(日) 16:48:34
>>970
取り合えずここのアドバイスがわかるようになるまで勉強します。
皆さんどうもありがとうございました。
972デフォルトの名無しさん:2007/03/04(日) 17:20:40
num = str[i] - '0';

↑'0'を引いて何してるんデスカ?
973デフォルトの名無しさん:2007/03/04(日) 17:30:07
>>972
全角数字一文字から 10進数の一桁 に変換してるとか。
974デフォルトの名無しさん:2007/03/04(日) 17:31:38
>>973
トンクスです
975デフォルトの名無しさん:2007/03/04(日) 20:11:24
>>968
結局P2Pの通信ソフトにするのか、
それじゃFTPとかSSHとかtelnetとか
関係ないな。

サーバ介さずあくまでP2Pにこだわるんだな?

それならSOBAはどうだろう? EclipseでもSobalipseというのがあって
Eclipseスレに作者が直接書き込んでいたこともあったな。
だがあとからはSobaをつかわなくなったとか。




>>970
それは、P2Pでもできるのか。
P2Pでやりたいといってるようだから、どうしても、JXTAが頭から離れない。

XMLEncoderの説明までするなら、キーワードRMIも出してもいいような気がする。

つうか、XML垂れ流しだとファイル丸見えでは? Serializableで少しでも見づらくしてもいいのでわ
と思ってみた。
976デフォルトの名無しさん:2007/03/04(日) 20:20:57
javax.mailを使用してメール送信したいんですが、
エラーになって送信できません。
エラーはSMTPの応答コード421のサービスが利用できない旨のエラー。
送信に使用するアカウントが生きていることは確認してます。

で、ここから質問なんですが、
OSがLinuxの場合、OSでなんらかの定義(メールやSMTP関係、25番ポート開放)をしていないと
エラーになるものなのでしょうか?
977デフォルトの名無しさん:2007/03/04(日) 21:01:31
>>975
暗号化はまずは切り離して考えた方がいいと思うぞ。
>>976
そのマシンから、telnet でSMTPサーバの25番ポートを叩いて
SMTP直接手打ちで問題が出ないかをチェックした方がいい
978デフォルトの名無しさん:2007/03/04(日) 21:05:08
>>977
telnetでエラーがでてます。
421 Sorry, you must log in before using this server.
ここのサーバーはpop before smtpらしいですが
関係あるのかな・・・。
979デフォルトの名無しさん:2007/03/04(日) 21:14:52
>>978
大蟻
980デフォルトの名無しさん:2007/03/04(日) 21:20:51
>>978
Javaの問題じゃない
981デフォルトの名無しさん:2007/03/04(日) 21:30:18
pop before smtpだからエラーになってるんですか。
コア部分は他人が作ったクラスを使用しているので、
対応してなかったんだと思います。
とりあえず自作するか、修正してもらうかはまた決めます。
ありがとうございましたorz
982デフォルトの名無しさん:2007/03/04(日) 22:42:35
どうしてもつくれないアルゴリズムがあるので助けてください
1円〜999円のお買い物をするときに
はらう硬貨の枚数とお釣りの硬貨の枚数の和が最小になる払いかたで
払う金額と持っている硬貨枚数がいかなるときでも対応できるアルゴリズムがわかりません
1000円札は1枚は持っています

硬貨は1.5.10.50.100.500です。お札は1000のみです

すみませんマジお願いします
983デフォルトの名無しさん:2007/03/04(日) 22:44:13
>>982
宿題なら宿題スレに池
宿題スレで昔見たことあるきがするが
984デフォルトの名無しさん:2007/03/04(日) 23:06:47
>>982
その程度なら全探索空間調べても問題なさそうな気がするが。
985デフォルトの名無しさん:2007/03/04(日) 23:06:57
>>982
Javaである必要性が明記されてないからスルー
986デフォルトの名無しさん:2007/03/04(日) 23:20:12
>>982
小さいコインから使っていく
そのときその次のコインの倍数になるとこまで小さいコインがあるかどうかがポイント
987デフォルトの名無しさん:2007/03/04(日) 23:33:46
>>976
sendmailやmailコマンドでメール送信できるのか
試してみたか?

Javaのバージョンが古いと動かないこともある。
1.4だったJavaを Java 5にアップグレードしたらJava Mailの
送信に成功したことがある。
988デフォルトの名無しさん:2007/03/04(日) 23:35:35
>>982
オサイフケータイを使えば硬貨枚数は最小になる。
989デフォルトの名無しさん:2007/03/04(日) 23:40:14
万引きしても(ry
990デフォルトの名無しさん:2007/03/04(日) 23:41:34
わからなさそうなので全探索します
991デフォルトの名無しさん:2007/03/04(日) 23:47:41
          /          /        \
   ____/_______/_ _ _ _ _ _ ヽー―ヽ______
   | ̄|| JAVA質問・相談99  | | ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄i二||
   || ̄ ̄ ̄ ̄|| ̄ ̄ ̄ ̄ ̄. :┌|:| || ̄|| | ̄ || || || ̄|||.______| ̄| ̄| ̄| ̄|i二||
  [||       ||         [:]| | ||  || |   ||._.||._.||  |||.| ̄|| | |_|_|_|_|i二||
   ||   ∩_∩|||.       .:  | | ||  || |   ||   .||  |||.|  || | |   .|   |.i二||
   ||  (´ー.`|||\.       .:  | | ||  || |   ||   .||  |||.|  || | |   .|   |   |
   ||  ⊆⊇⊂||||  \.     ;  | | ||  || |__||_____ ||_|||.|_|| | |二二 |二二|   |
   |二二:二二二二:二二二ニニ| ||  ||  ̄ ̄ ̄ ̄ ̄ ̄ |   | |  ̄ ̄ ̄ ̄ ̄   |
   |                   |   || ||  || /⌒.∧_∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   |―――\/――――‐.|― || ||  || || . (´∀.` )<  みなさん、迎えに来ましたよ。
  [|口口 ┌―┐   口口| [] || ||  || .|||:0(    )  \_______________________
  |二口二└―┘二二二口二ニ|| ||_||__||| | | |  |_ | | _||| : ||    _/
   ̄ ̄ ̄ ̄ ̄ゝ_ゝノ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ゝ_ゝ(_(__) ̄ ̄ ̄ ̄ゝ_ゝノ ̄
992デフォルトの名無しさん:2007/03/04(日) 23:57:57
やだやだ98がいいんだい
993デフォルトの名無しさん:2007/03/05(月) 00:28:10
98 → 98SE → ME
994デフォルトの名無しさん:2007/03/05(月) 01:31:06
銀河鉄道999だろ
995デフォルトの名無しさん:2007/03/05(月) 01:34:40
      ☆ チン     マチクタビレタ〜
                        マチクタビレタ〜
       ☆ チン  〃  ∧_∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
        ヽ ___\(\・∀・) < 新スレまだ〜?
            \_/⊂ ⊂_ )   \_____________
          / ̄ ̄ ̄ ̄ ̄ ̄ /|
       | ̄ ̄ ̄ ̄ ̄ ̄ ̄|  |
       |   D B    |/
996デフォルトの名無しさん:2007/03/05(月) 01:35:43
【初心者】Java質問・相談スレッド99【大歓迎】
http://pc11.2ch.net/test/read.cgi/tech/1173026128/
997デフォルトの名無しさん:2007/03/05(月) 04:19:20
998デフォルトの名無しさん:2007/03/05(月) 07:31:49
>>987
>>978 既に問題は解決済
999デフォルトの名無しさん:2007/03/05(月) 08:57:14
うめ
1000デフォルトの名無しさん:2007/03/05(月) 08:57:45
Javaありがとう!!
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。