【初心者】Java質問・相談スレッド116【歓迎】at TECH
【初心者】Java質問・相談スレッド116【歓迎】 - 暇つぶし2ch12:デフォルトの名無しさん
08/06/13 19:38:40
>>5
JDIにreferringObjectsたらいうメソッドがあるみたいよ。
はい、使ったこたぁありません。

13:デフォルトの名無しさん
08/06/13 19:41:58
すみません、質問があるのですがスレ違いだったら誘導をお願いします。

HA-JDBCの調査で簡単なプロトタイプを作成する事になったのですが、
実際のコードの書き方がイマイチ分かりません・・・。
どこか良い解説の載っているサイトがありましたら教えて下さいませ。


14:4
08/06/13 19:56:26
>>7->>9
LinkedHashSet ですね。ありがとうございました。

15:デフォルトの名無しさん
08/06/13 21:37:49
getSource()の戻り値を元のオブジェクトに判別してキャストする方法はありますか?

16:デフォルトの名無しさん
08/06/13 21:42:19
>>12
このjarってどこにあるのでしょうか?JDKに入っているんですかね?

17:デフォルトの名無しさん
08/06/13 22:53:19
>>15
instanceof

18:デフォルトの名無しさん
08/06/13 23:42:05
>>17
thx

19:デフォルトの名無しさん
08/06/13 23:59:40
Lisp in JavaとかでググるとJavaで実装されたLisp処理系とか
あるけど、みんな使ったことある?

こんなのがある。これがいいんじゃない?と言うご意見お待ちしてます。

20:デフォルトの名無しさん
08/06/14 00:16:53
>>16
よくしらないけど、「java jdi 使い方」でぐぐってみた
URLリンク(d.hatena.ne.jp)
>JDK添付ですが、実装はtools.jar内にあります。

21:デフォルトの名無しさん
08/06/14 00:42:36
String s = new String("abc");

と、

String s = "abc";

って、違うのか?同じなのか?

入門書を、何冊か見たが、同じと書いてあるのもあるし、
同じようで違う、と書いてあるのもあるし、
同じと思っていい、って書いてあるのもあって、
なんかハッキリしない・・・そう言うもんなのか?

22:デフォルトの名無しさん
08/06/14 00:49:11
>>21
疑問に思うのならどうして自分で調べないの?
ちょっとチェックのコードでも書いてみればいいじゃない

23:デフォルトの名無しさん
08/06/14 00:58:50
>>21
Java "new String"
でぐぐると、わりと詳しい説明がいくつか

24:デフォルトの名無しさん
08/06/14 01:09:54
>>21
一言で言えば、違う。前者は無駄なのでまずやらない。


25:デフォルトの名無しさん
08/06/14 01:16:50
スレリンク(tech板:932番)
> >有料だと高くて…
> Tomcatでいいんだろ?月500円でも高いのか?
> URLリンク(www.easytone.jp)
> 無料なのがないのはJavaだと自由度が高すぎてセキュリティに問題が起きる可能性が高いからだと思うけどな?

セキュリティの問題じゃない。メモリ容量とディスク容量の問題。

> それにJavaはphpなどに比べれば難しいから需要も少ないってこともあるだろうなあ?

それは個人の需要がだろ。
企業に需要があってもわざわざレンタルサーバを介することは稀だからな。
企業はJBossやGeronimoが載らないと嫌だとかいろいろ注文つけたがるだろうから。

26:デフォルトの名無しさん
08/06/14 01:18:25
Cっぽくいうと、

前者は
char* s;
s = (char*)malloc(適切なサイズ);
strcpy(s, "abc");

後者は
char* s = "abc";

みたいな感じ。


27:デフォルトの名無しさん
08/06/14 01:30:54
>>21
String a = "abc";
String b = "abc";
String c = new String("abc");
String d = new String("abc");
System.out.println(a == b);
System.out.println(a.equals(b));
System.out.println(c == d);
System.out.println(c.equals(d));
を実行してみろ。

28:デフォルトの名無しさん
08/06/14 03:32:26
>>21
前者は始めパラメータコンストラクタが走って、その後コピーコンストラクタが走る。
後者はパラメータコンストラクタだけが走る。
普通は無駄なので後者だが、パラメータが2個以上有って、配列の場合は前者を使う。
C++の場合は。 何かの参考になれば。

29:デフォルトの名無しさん
08/06/14 05:50:35
C++の話してどうすんだよっとつっこめばいいのか?
javaのStringは不変クラスなのでC++とはだいぶ様子が違うぞっと。
>>27の意味がわかればOKじゃね。

30:デフォルトの名無しさん
08/06/14 08:09:31
>>24
可能です。
以上。
はい次の方。

31:28
08/06/14 11:38:01
String a = "aa"; と String a = new String("aa"); が等しいかと聞いてる人には、
    ~~         ~~
String a = "aa"; と String b = "aa"; は等しい、
String a = new String("aa"); と String b = new String("aa"); は等しくない、ゆえに
String a = "aa"; と String b = new String("aa"); は等しくないは、演算子の説明?とか。
    ~~         ~~
>>23 でいいんじゃないかな。Google好きね

32:デフォルトの名無しさん
08/06/14 17:54:54
すいません、質問です!
javaの式は値を持たないのでしょうか?

例えばC言語なら
if (a = b + c){
/* 変数aを使った処理 */
}

のように書けますが、
javaだと、

a = b + c;
if (a){
/* 変数aを使った処理 */
}

としなければならないのですか?

33:デフォルトの名無しさん
08/06/14 18:03:20
すみませんが、質問させてください

1=1.5
2=2.0 という表示を出したいのですが

1.5
2.0  という表示しか出ません
何をつけ足せばいいでしょうか?

public class kari{
public static void main(String[] args){
int n=0;
double a[]=new double[100];
a[0]=1.5;
a[1]=2.0;
a[2]=3.0;
System.out.println("1.5");
System.out.println("2.0");
System.out.println("3.0");
for(n=3;n<=100;n++){
a[n]=(-1*a[n-1]) + a[n-2] + a[n-3];
System.out.println(a[n]);
}
}
}

アドバイスの程、よろしくお願いします

34:デフォルトの名無しさん
08/06/14 18:04:45
>>32
持たない。

>>33
intでなくdoubleに汁

35:デフォルトの名無しさん
08/06/14 18:04:50
>>32
そういう問題じゃない。
Javaの真偽はbooleanによってのみ判断される。
Cでwhile(1)とかが大丈夫なのは非0が真と見做されるから。
Javaではwhile(true)。


36:デフォルトの名無しさん
08/06/14 18:10:08
>>32
if (0 != (a = b + c)){
と書けばおk。しかし、こう書くとよい場合というのは思いつかない。

それ以前に「式は値を持たない」という言い方はおかしいよ。
「代入演算子(の作る式)」とかでしょう。

37:デフォルトの名無しさん
08/06/14 18:13:00
>>32
>a = b + c;
>if (a){
これならできたの?

38:デフォルトの名無しさん
08/06/14 18:17:09
>>34
アドバイスありがとうございます
すぐにやってきます

39:デフォルトの名無しさん
08/06/14 18:23:23
>>34の方へ

3行目ですよね?
変える部分は。

変えたらずっと”精度が落ちている”表示になってしまったのですが…

すみませんが
またアドバイスをくださいませ

40:デフォルトの名無しさん
08/06/14 18:32:29
>>32 if()の条件は論理値にすること。if(0!= )かif( !=0)
>>33 "a[" + 0 + "] = " + 1.5 あ、オセロ問題の人。

41:デフォルトの名無しさん
08/06/14 18:33:45
スルーしてたけど、>>34はデタラメのように見える

>>33
そのプログラムやその受け答えもデタラメのように見える
答えが欲しいだけならちょっとスレ違いかな

42:デフォルトの名無しさん
08/06/14 18:38:28
>>33
例外出るだろ?

43:デフォルトの名無しさん
08/06/14 18:40:56
>>40
いえ、ほかの方かと…(汗

>>41
デタラメに見えてしまいましたか(汗
受け答えもよくなかったようなので反省します…

プログラムは一応習ったのを応用して
書いてみたのですがうまく>>33の表現にならなかったので…

一から書き直したほうがいいでしょうか?

44:32
08/06/14 18:51:59
すいません、質問の仕方が酷かったです。
例えば、x = f(x)という式があって、f(x)がtrueかfalseを返すとします。
そいう条件下であってもjavaでは

if (x = f(x)){
/* xを使った処理 */
}

という書き方は許されないのでしょうか?

ちなみに「式が値を持つ」という言い回しはCの本で有名なK&Rに出てた言葉ですが
こういう言い方はあまりしないのですか?

45:デフォルトの名無しさん
08/06/14 18:52:35
>>33
方法は少なくとも2通りある。
1. 1行を何度かに分けて表示する。System.out.print("1+1="); System.out.println(1 + 1);
2. データを文字列に連結してから表示する。System.out.println("1+1=" + (1 + 1));
どっちかは習ってるんじゃないの。

46:デフォルトの名無しさん
08/06/14 18:54:11
>>44
この場合はふさわしくない、という意味
1 + 1も式、
a /= 1 + 1も式でしょ

47:デフォルトの名無しさん
08/06/14 18:57:24
>>44
xがbooleanなら、そう書くこと自体に問題はない。



48:デフォルトの名無しさん
08/06/14 18:58:18
>>44
参考までに、どうしてそういう疑問が湧いたのか教えてくれれば幸い

49:32
08/06/14 19:01:43
>>46
>>47
ありがとうございます。文法的には許されるんですね。すっきりしました!

>>48
自分はCとJavaをどっちも素人で同時に勉強してるのですが(たぶん効率最悪ですが)
Cの本にはよく、ifの後に代入式を書いても左辺の変数の値がその式の値になる
というような記述をよく見るんですがjavaの本では見たこと無かったので疑問に思いました。

50:デフォルトの名無しさん
08/06/14 19:03:03
>>45
二つとも習いましたが、応用できていませんでした(汗
繋がった式でしたので、「この方法はできないのかな」と
一人思いこんでいました

しかし分けたり連結したり表示するには
あの長い式を分解したりするのでしょうか?
それとも繋がったままでしょうか?

ちょっと頭が混乱してきました
すみません

51:デフォルトの名無しさん
08/06/14 19:04:15
どっちかだけの方がいいよ。見た目同じだけど、全然違うから。
Cのポインタの方が難しいから、先にそっちを攻略しとくとJavaのjava.lang.Objectの方も理解が深まるよ。

52:デフォルトの名無しさん
08/06/14 19:11:31
代入式は文じゃなくて式なんだよね。
「=」は+やーと同じ演算子に過ぎないから。
プログラムに明るくない人間が見れば文に見えるから少しややこしい。
rubyみたいに文が値を持つ言語が出てくるとさらにややこしい

53:デフォルトの名無しさん
08/06/14 19:14:14
>>49
既に前のレスで十分な返答をもらってるのに、
それを理解もせず自分で確かめもせず質問連発する奴は素人未満だ馬鹿。

54:デフォルトの名無しさん
08/06/14 19:17:29
わかりました
アドバイスどうもです

一応連結してから表示のほうをやってみたのですが
またも変な表示が…

55:40
08/06/14 19:28:02
>またも変な表示が…
n<100 五目並べ問題の人?

56:デフォルトの名無しさん
08/06/14 19:53:09
>49
どっちかをある程度習得するまでは片方にしろ
言語が違えばルールも違うし考え方すら異なる場合もある
効率が悪いって言うかどっちもモノに出来ないと思う

57:デフォルトの名無しさん
08/06/14 19:58:04
>>50
いえ、0~99まで数列を表示する問題です。
増やすことはできたのですが、表示に問題がありまして
表示を出すにはどうすればいいかというのを考えてまして。

それで、ここの方々にアドバイスをいただいていたところです。

58:デフォルトの名無しさん
08/06/14 19:59:47
>「式が値を持つ」
言語によるよね

59:デフォルトの名無しさん
08/06/14 20:08:36
>>33
配列を使うなら先に数列を完成させてしまったほうが、
表示の反復が単純になるんじゃないかな。

「変な表示が」というものをただ「変」で済ませていたら進まないと思うけどw

60:デフォルトの名無しさん
08/06/14 20:12:38
式が値を持つ
って初めて聞いたな
古い本か?

61:デフォルトの名無しさん
08/06/14 20:13:08
>>59
ふむふむ、先に数列を完成させると…。
アドバイスどうもです。

62:デフォルトの名無しさん
08/06/14 20:33:04
式の値というのはC言語で聞いた記憶があるよ。
話題になっているのは代入式が値をもつ言う話で
a = b = 99 で b = 99の式が99という値をもっていて、それをさらに a に代入できる。
もっともif に論理式が必要なのを誤解した故の発言だったわけだが。

他にこういう時に使う。
b = 10
a = b++ の説明で右辺の式の値は10で aには10が代入される。
a = ++b の場合は右辺の式の値は10で aには11が代入される。


63:デフォルトの名無しさん
08/06/14 20:33:50
>>62
>a = ++b の場合は右辺の式の値は10で aには11が代入される。 
a = ++b の場合は右辺の式の値は11で aには11が代入される。 

訂正

64:デフォルトの名無しさん
08/06/14 20:35:12
>>60
普通の本だと思うが。

65:デフォルトの名無しさん
08/06/14 21:33:03
式が値を持つって意味分からないし
最後に評価された値を見てるだけだし

66:デフォルトの名無しさん
08/06/14 21:45:02
珍解釈ktkr

67:デフォルトの名無しさん
08/06/14 22:07:21
まずはC++からやれ。

68:デフォルトの名無しさん
08/06/14 22:27:17
>>36
その表記は見苦しいし意味がないから嫌いだ。



69:デフォルトの名無しさん
08/06/14 22:35:14
((b op (c op d)) op a)
より
(a op (b op (c op d)))
のほうが見やすいと思うんだ

70:デフォルトの名無しさん
08/06/14 23:00:59
1. if (a == 123) {
2. if (123 == a) {
Cの場合はif (a = 123)が通ってしまうの2をすすめる人もいるけど、
その心配のないjavaでは1が自然だと思う。

71:デフォルトの名無しさん
08/06/14 23:07:08
異常なことをやっているところでは異常性の際だつ書き方をするクセがある

72:デフォルトの名無しさん
08/06/14 23:10:17
b c d op op a op
逆ポーランドが好きです

73:デフォルトの名無しさん
08/06/14 23:17:24
javaって0とか1とかnullとかどれも条件式の結果には使えない?
trueとfalseのみ?

74:デフォルトの名無しさん
08/06/14 23:18:42
当然

75:デフォルトの名無しさん
08/06/14 23:30:02
そーなのかーありがとう。堅苦しい言語だね

76:デフォルトの名無しさん
08/06/14 23:53:43
それはCがずぶずぶ過ぎる。
C++でboolを追加するときにまともにしたかったのだが、
Cとの互換から手を付けられなかったらしい。
bool/int相互に暗黙の変換を許してしまってほとんどboolの存在価値はなくなった。

77:デフォルトの名無しさん
08/06/14 23:54:24
そのへんは機械語的な都合もあったんでしょ

78:デフォルトの名無しさん
08/06/14 23:55:12
ていうかコンパイラ的な都合かな

79:デフォルトの名無しさん
08/06/15 00:26:37
構造化アセンブラですから。


80:デフォルトの名無しさん
08/06/15 00:39:39
そもそもbooleanの価値が分からない俺は死んだ方がいい

81:デフォルトの名無しさん
08/06/15 00:50:36
じゃあ俺も死ぬ

82:デフォルトの名無しさん
08/06/15 00:56:14
>>80
>>81
おまいら死なないで。

83:デフォルトの名無しさん
08/06/15 00:58:57
なんというドラマ

84:デフォルトの名無しさん
08/06/15 03:16:30
いっぺん死んでみる?

85:デフォルトの名無しさん
08/06/15 03:43:55
今日で、めでたくく初心者を卒業したっぽいわけですが・・・
ひとつ質問していいですか?

どうしてjavaは初心者にこうも厳しいんですか?
例えばダブルクリックの起動ファイルひとつ作るのでも、ネット上の情報はうそっぱちか役に立たない情報ばっかり。
VBと比べても必要な情報にたどりつくのに時間がかかりすぎ。
これだったら、M$社製品(C++、C#、VB2005等)の方が手っ取り早かった(と思う、たぶん)。
とくかく情報の出し惜しみはやめてほしいな。
なんで、java弄るひとって性格の悪い人がおおいんだろ。
java関係の本でもろくなのないし。

86:デフォルトの名無しさん
08/06/15 03:46:10
  |   |  | |   |    |  | |   |   |   || | |
  |   |  | レ  |    |  | |   |  J   || | |
  |   |  |     J    |  | |  し     || | |
  |   レ |      |  レ|       || J |
 J      し         |     |       ||   J
             |    し         J|
             J                レ
     /V\
    /◎;;;,;,,,,ヽ
 _ ム::::(l|l゚Д゚)| …うわぁ
ヽツ.(ノ::::::::::.:::::.:..|)
  ヾソ:::::::::::::::::.:ノ
   ` ー U'"U'

87:デフォルトの名無しさん
08/06/15 03:49:39
>>86
遅くまでごくろうさまです。
いや釣りじゃなくて、真面目に抗議しているんですが・・・

88:デフォルトの名無しさん
08/06/15 03:51:19
2chに抗議とか言われても・・・w
Sunに言えよ。

89:デフォルトの名無しさん
08/06/15 03:52:40
すんません。
そうですよね。
結局、タダほど高いものはないっていう(ry

90:デフォルトの名無しさん
08/06/15 03:55:33
ぜんぶ的外れ・・・・でもないがぜんぶ的を射てはいないという

91:デフォルトの名無しさん
08/06/15 03:57:35
そうなんですよ、それそれその感覚なんです。
VBだと魔界の仮面弁士さんとかMVPがいるからなぁ。
あ、やっぱM$から金でてますものねぇ~。

92:デフォルトの名無しさん
08/06/15 03:58:23
ネット上の情報はどの分野でも基本的に話半分に聞くべき。
本もだけど。

93:デフォルトの名無しさん
08/06/15 04:00:41
おっしゃるとおりなんですが、
VBでは結構有用な目から鱗状態の情報が結構ごろごろしてたんですよ。

もうjavaの本とか最悪。ほとんど詐欺本ですな。

94:デフォルトの名無しさん
08/06/15 04:02:26
立ち読みして選べよ

95:デフォルトの名無しさん
08/06/15 04:05:34
いやー立ち読みでわかりやすいって思う本って、家帰ってほとんど読まなかったですね。
結城さんの本は鱗でしたが、全部そろえるとまあ高いのなんのって。
アマチュアレベルで気軽にかえるほんではなかったですね。TT

96:デフォルトの名無しさん
08/06/15 04:06:38
安物買いの銭失いって言うからな。

97:デフォルトの名無しさん
08/06/15 04:08:27
おっしゃるとおりです。
でも誰も結城さんの本なんか薦めないでしょ。
淋しいよな~

98:デフォルトの名無しさん
08/06/15 04:09:11
いや、結城本は定番じゃないのか?w

99:デフォルトの名無しさん
08/06/15 04:12:05
あなたに最初に出会えてればよかった。
っていうか、初心者にいつも薦められてます?
学校とかで推薦になっているのではないでしょうか?
私は、完全に独学なもので・・・

100:デフォルトの名無しさん
08/06/15 04:14:29
結局独学ではしっかり調べでもしない限りは運に寄る所が大きい。

101:デフォルトの名無しさん
08/06/15 04:18:48
おっしゃるとおりですね。
いそばがなんとかですね。
まあでも今日で初心者卒業できたのは、私も運がよかったということですかね。
こんな時間まで起きている、先輩はかなりの方とお見受けしました。
生業としている方ですね、きっと。

そういえば、2chでの質問内容ってほとんど、学校の質問みたいなものがおおいですものね。
なんか、目的をもったプログラムにかんするものは少ないですね~。
まあ、プロフェッショナルは2chできかないでしょうが。

102:デフォルトの名無しさん
08/06/15 04:22:57
では寝ますね。こんなじかんまでお付き合いいただき、誠にありがとうございました。
秋葉原の事件で、もう2chはいらないとおもいましたが、こんな古き良き時代によくあった
チャットをできるとはおもいませんでした。
ではご健康にきをつけて。
失礼します。

103:デフォルトの名無しさん
08/06/15 04:41:51
>>98>>99
そう言えば、「結城本は定番」というのは確かによく聞くような気がするが、どこで聞いたか思い出せねーなwww
このスレのテンプレにも無いようだし……。

104:デフォルトの名無しさん
08/06/15 07:35:37
いそばが

105:デフォルトの名無しさん
08/06/15 08:08:20
なにこの気持ち悪い流れ

106:デフォルトの名無しさん
08/06/15 08:18:10
JavaAppletについての質問です。
ブラウザの更新ボタンが押された時にアプレットの初期化又は変数の初期化を
行いたいのですが、どうすればいいですか?
教えて下さいお願いします。

107:デフォルトの名無しさん
08/06/15 09:14:44
ブラウザで更新されたらAppletは強制的に初期化だw

108:デフォルトの名無しさん
08/06/15 09:41:39
***Javaのオススメ入門書*** 『創るJava』 3.0
スレリンク(tech板)
↑のスレ自体より過去ログ見た方がいいかも

109:デフォルトの名無しさん
08/06/15 09:50:14
>>1のwikiに昔は結城本の事も書いてあった気がするが
今はこうなってるのか

>2chで推薦されている入門書を挙げておきます。
>
>Head First Java―頭とからだで覚えるJavaの基本
>独習Java
>コアJava2 Vol.1 基礎編
>コアJava2 Vol.2 応用編
>Javaの格言―より良いオブジェクト設計のためのパターンと定石
>Javaの鉄則―エキスパートのプログラミングテクニック

>「やさしいJava」(高橋 麻奈 著)はプログラミング未経験者が読むには適していますが、Java入門書とは呼べません。
>Javaプログラミングとはこういうものなんだ、というのをつかんだら上記入門書をやるのをお勧めします。

110:デフォルトの名無しさん
08/06/15 09:56:37
VBからjavaって…なんか可哀想なPGだね
Cから上に上がっていけば新たな言語でも何の苦労も無いのに

111:デフォルトの名無しさん
08/06/15 10:17:23
>VBでは結構有用な目から鱗状態の情報が結構ごろごろしてたんですよ。 

人によると思うだけど、明け方に投稿するような君にとってそのゴロゴロ情報は例えば何?

112:デフォルトの名無しさん
08/06/15 10:28:16
なんつーかIDEって普段使わないんで
たまに使うことがあるとすげー気持ち悪いんだが
>>85見て改めてIDEはイラネと思ったわ

113:デフォルトの名無しさん
08/06/15 10:30:46
訂正IDEがイラネ→IDEに頼ってる奴

114:デフォルトの名無しさん
08/06/15 10:31:50
キモイ奴は、話を聞いていてもやっぱり最後までキモイな。いいまわしとかも最悪。
君は、VBの方が性に合ってるんじゃないの?

115:デフォルトの名無しさん
08/06/15 10:33:18
そのVB宙の話は、なんか犯罪者がアレコレしゃべってるのを聞かされているようで怖かった

116:106
08/06/15 10:34:08
すいません、分かりました。
start()で変数の初期化を行えばいいのですね。

117:デフォルトの名無しさん
08/06/15 12:25:58
>>116
分かってしまったなら仕方あるまい

118:デフォルトの名無しさん
08/06/15 12:29:43
今日の深夜までにやらなきゃいけない課題なんですが、なかなかうまくいきません。
助けてください。

自動販売機を表すVendingMachineクラスとそれを実行するmainメソッドを作成せよ
・機能
 ・お金を投入する
 ・金額が十分投入してればジュースを買える。
 ・お金の払い戻しができる
作成したVendingMachineに対しカプセル化を施し意図しない状態に変更されないようにせよ



119:デフォルトの名無しさん
08/06/15 12:42:47
>>85
つまり、Javaの勉強にVBでの経験が役に立たなかった、でFAか

120:デフォルトの名無しさん
08/06/15 12:58:20
>>109
最近でた柴田本はどうなん?
Cの入門書はなかなかの良書だったんで、ちょっと期待してるんだが

121:デフォルトの名無しさん
08/06/15 13:03:41
奴の本の良し悪しよりも、奴の人格が歪んでる

122:85
08/06/15 13:55:33
>>110
C(無印)は当時かなり敷居がたかかったんですよ。
統合開発環境もなかったし、PCもちょうど98全盛のころでしたからね。
BACICからVBまでおよそ15年のブランクがありました。
プロフェッショナルじゃなくて、趣味でつくるプリグラミングなんてそんなレベルですよ。
決して自分が可哀そうとか思いません。w

でもおかげさまで、java勉強したおかげでCは読めます。
その点はjava様々ですが。

>>119
手続き型からオブジェクト指向へのつなぎとしての意味は大きかったです。
あと、マイクロソフトの考え方もちょっとわかった(気がする)。

123:デフォルトの名無しさん
08/06/15 14:11:21
そんなあなたにはVBのままの方が遠回りもせず結局いいと思いますよ。
Javaは所々面倒くさいのが多いし、setter/getterとかも。
VB出身ならC#が普通の流れなんですけどね…

124:デフォルトの名無しさん
08/06/15 14:37:58
Java 勉強したらある程度 C は読めるはずだが、
それだけだとポインタに関する知識が怪しいはずだと思う。

125:デフォルトの名無しさん
08/06/15 16:19:47
だれか、

g.setColor(new Color(this.move_color[i]));//16進数色指定(配列より抽出する。0xff0000)

こうやって変数を使って色指定すると

C:\>javac nico_mouse.java
nico_mouse.java:124: シンボルを見つけられません。
シンボル: コンストラクタ Color(java.lang.String)
場所 : java.awt.Color の クラス
g.setColor(new Color(this.move_color[i]));//16進数色指定(配列より抽
出する。0xff0000)
^
エラー 1 個

といったエラーが出てくるんだがどうやったら治せる!?

126:デフォルトの名無しさん
08/06/15 16:25:30
だれか、

g.setColor(new Color(this.move_color[i]));//16進数色指定(配列より抽出する。0xff0000)

こうやって変数を使って色指定すると

C:\>javac nico_mouse.java
nico_mouse.java:124: シンボルを見つけられません。
シンボル: コンストラクタ Color(java.lang.String)
場所 : java.awt.Color の クラス
g.setColor(new Color(this.move_color[i]));//16進数色指定(配列より抽
出する。0xff0000)
^
エラー 1 個

といったエラーが出てくるんだがどうやったら治せる!?

127:デフォルトの名無しさん
08/06/15 16:33:14
ColorのコンストラクタでStringを引数に持つものが無いからだろ。
Integer#decode(String)あたりでも参照すべし。

128:デフォルトの名無しさん
08/06/15 17:03:04
配列に設定してるところを書かないと意味ねーじゃん
move_color[0]="0xff0000";
なことしてるんじゃね

129:デフォルトの名無しさん
08/06/15 17:25:17
問診票

これまで大きな言語に罹られたことはありますか?

130:デフォルトの名無しさん
08/06/15 18:57:03
漢字が読めません

131:デフォルトの名無しさん
08/06/15 19:13:05
"Javaの文字列連結演算子は" + "である。"
>>129 かかられた、だ。

132:デフォルトの名無しさん
08/06/15 19:16:30
罹(すっぽこ)られた

133:デフォルトの名無しさん
08/06/15 19:23:00
では次の方

134:85
08/06/15 19:31:18
>>123
アドバイスありがとうございます。
必要に迫られて消去法でjavaになりました。
C#も本でみましたが、あれも面白そうですね。
ただM$の都合で、変な改定されるのが怖いんです。(J++とかw)
setter/getterについては後々勉強します。

>>124
おっしゃるとおりですが、私はZ80の脳内アセンブリ世代なんで、いちおうPCに関する極原始的な知識はあります。
C++をパスしたのもその辺の管理が面倒というのがありました。

特段質問はないんでこれにて失礼します。
皆様今後とも、初心者にはやさしくしてくださるようよろしくお願いします。
javaのご加護を

135:デフォルトの名無しさん
08/06/15 19:35:39
それならperlの方がいいんじゃない?趣味なんだしw

136:85
08/06/15 19:46:35
>>135
あれまだ私、話してていんですかね。
あんまし登場するとチラウラで申し訳ないです。

perlとかrubyとかActiveBasicとかも一応候補にいれたんですが。
特段perlに光るものはなかったと記憶しています。
ネット上のサンプルプログラムも少なすぎるし、なにより書店の売り場面積が、こっちくるな!って言っているようで・・・。w
よろしければ、perlの良い点を教えてください。
あ、スレチですね。
javaのキラーコンテンツはやはりマルチスレッドですかね。
スレッドフリーということばがjavaの世界にあるのには感動しました。

137:デフォルトの名無しさん
08/06/15 19:47:55
perl のサンプル多過ぎるくらいだろw
探し方おかしいんじゃね。

138:85
08/06/15 20:00:47
>>137
けっこうメジャーな言語なんですね。
ズラズラとでてきました。
ABと同列にしてごめんなさい。
スピードはどうなんですか?お、『各レイヤはC言語で実装できるため高速』なんですか。
オブジェクト指向言語としての位置づけも一抹の不安が。
こうしてみると悪くないですね。


139:デフォルトの名無しさん
08/06/15 20:46:41
「アセンブラやってました」とかの釣りを相手にするのは、もういいだろ
あなただと、Javaだとそのうち不満が出る(例えば演算子おーばーろど云々)でしょうし、C#の方が向いてますよ。


140:デフォルトの名無しさん
08/06/15 20:48:26
こういうキモイ奴の相手はしたくないな。VBの世界でこの世からは隔離されていてくださいな

141:85
08/06/15 20:57:24
>>139
アドバイスありがとうございます。
しかし、そんなに高級なことをやりたいわけではないですので、VBより少々使い勝手がよければ全く文句ないです。
しかしそこまで執拗にC#を進める背景にはなんかあるのでしょうかね。
きたるべきマイクロソフトの崩壊に備え、M$からの脱却を図っているのでjavaにしたんですよ。
LinuxではC#動かないでしょう?
.NETははっきりいって糞くらえですよ。(食事中のかたすんません)

142:デフォルトの名無しさん
08/06/15 20:58:46
人間というのは、ここまで気持ち悪くなれるものなのか…
もしかして層か?

143:デフォルトの名無しさん
08/06/15 20:59:13
ときどきでいいからmonoのことも思い出してください

144:デフォルトの名無しさん
08/06/15 21:01:23
>>139
あ、ばれちゃった(^ V^)

145:デフォルトの名無しさん
08/06/15 21:16:15
知識の歪みは背骨の歪み

146:85
08/06/15 21:18:24
ふりだしに戻る・・・
⇒なんで、java弄るひとって性格の悪い人がおおいんだろ。

自分なりの分析ですが
java弄る人って、殆どが玄人(それで飯食っているひと)なわけですよ。
もしくは、いま勉強中で資格とって就職しようとしている人々。
したがって、ライバルは少ないほうがいい、もしくは自分の優位性をつねに保っていたい。
そんなエゴが見え隠れしている。
昨日の深夜に僕の相手をしてくれた方は違うとおもいますが、ほとんどの人が傲慢だ。
私もすごく気持ちが悪い。

そうじゃないでしょ、ってこと。
プログラミングはアマ・プロ区別なくみんなのものでしょってこと。
一般人、ど素人に丁寧に教えていかなければ未来はないですよ。

べつに2chにそういうことを期待しているわけではないですが、数々の方のブログを拝見して感じたことです。
以上。

147:デフォルトの名無しさん
08/06/15 21:21:40
いや、もういいや。死んでいいよ

148:デフォルトの名無しさん
08/06/15 21:27:01
>>146
あなたが疎外されているとしたら「素人だから」ではないと思われる。
大体そんな感じで。

149:85
08/06/15 21:30:47
>>148
いやあなたの論理が破たんしてますがな。
私は疎外感など何も感じていない。
だいたいどうしたら、ネットサーフィンや読書で疎外感を感じなきゃ(ry
およそそんな感じで。

150:デフォルトの名無しさん
08/06/15 21:31:30
ようするに>>145が言いたいのはちゃんと教えてくれないのは
レスしてる奴が競争相手を減らしたいと考えてるって事でいいんだよな
なら残念ながらレスが帰ってこないのは単純にお前が気持ち悪いからだ

151:デフォルトの名無しさん
08/06/15 21:35:08
初心者は初心者でも、人間初心者なんですね。わかります

152:デフォルトの名無しさん
08/06/15 21:36:17
よくわからんけど、
どうしてJavaの世界は素人である私を容易に仲間にしてくれない(なかった)の?
っていう話じゃなかったんだっけ。では次の方。

153:デフォルトの名無しさん
08/06/15 21:44:16
たまにはこういうキモイ雑魚も、創価学会のマンパワーみたいで楽しかった。

>>86

154:85
08/06/15 21:46:07
>>152
最後のおまとめありがとうございます。
まあ端的にいえばそのとおりですね。

他の方は誤解されているようですが、私はこの板で質問したことは一度もないし、ネット上の掲示板にも質問したことはありません。
すべて独学です。
>>85のコメントは形式は質問になってますが、
>>87で補足したように抗議文です。
警鐘を鳴らしたかっただけです。

では、ここからはいつもの流れでどうぞ。

155:デフォルトの名無しさん
08/06/15 22:47:50
そんなにデタラメ情報ばかりだったかな、と思って、
>>85が挙げてる例である「Java ダブルクリック 実行」でググってみた。
…マニフェストファイル書いてjar作る正しい手順が、それなりにヒットする。
>>85が何を見て「でたらめだらけ」と結論づけたのか気になる。

ただ、VBと違って、標準の開発環境はこれ、というのがないから、初心者は困るんだろうな。
素のjdkが基本といえば基本だけど、
初心者には(特にVBのようなRADツールの経験があれば余計に)取っつきづらいだろう。
最近じゃ「Eclipseで始めるJava入門」みたいな本も出てるしね。

だから、コマンドプロンプトでの手順示されても
「じゃあウチのEclipse/NetBeans/JBuilderではどうすりゃいいの?」となるんじゃないかな。
その結果「これはつかえない!デタラメに違いない!」と結論づける、と。

そもそも、仮にjdkオンリーで覚えても、最終的にはIDEを使うようになると知ったら、
「あの苦労は何だったのか」と徒労感を覚えるかもしれない(それはそれで大事な経験なんだけど)。
そしたら余計に取っつき悪さを感じるかも。

そういうのが嫌な人は、どれか特定の便利なIDEべったりになるといいかもね。
そういう人にはNetBeansがお勧め。
Webから得られる情報が限られるけど、面倒なネタは避けられると思う。

156:デフォルトの名無しさん
08/06/15 23:05:06
>今日で、めでたくく初心者を卒業したっぽいわけですが・・・
>まあでも今日で初心者卒業できたのは、

いきなりそんなこと前提にされても、と何も言えなくて・・・夏

157:デフォルトの名無しさん
08/06/15 23:09:35
創価学会は思考盗聴とか集団ストーカーをやってるそうなんで、身の回りには注意しておいたほうがいいですよ。

158:デフォルトの名無しさん
08/06/15 23:09:47
すみませんが、教えてほしいことがあります。

「n=OO」という風に表示したいのですが、
表示をさせることができません。
表示をさせるための記述を教えてください。
よろしくお願いします。

public class karimasu{
public static void main(String[] args){
int n=0;
double a[]=new double[100];
a[0]=1.5;
a[1]=2.0;
a[2]=3.0;
System.out.println("1.5");
System.out.println("2.0");
System.out.println("3.0");
for(n=3;n<=100;n++){
a[n]=(-1*a[n-1]) + a[n-2] + a[n-3];
System.out.println(a[n]);
}
}
}


159:デフォルトの名無しさん
08/06/15 23:10:36
>>158追記

答えは出ましたが、表示を変えることができないです。

160:デフォルトの名無しさん
08/06/15 23:13:56
System.out.println("n=OO");

161:デフォルトの名無しさん
08/06/15 23:16:36
>>45で解決しなかったのか

162:デフォルトの名無しさん
08/06/15 23:25:41
>>161
あの時の方で
いまだに解決していません(汗

()の中にいろいろといれても
うまく表示できなくて…

163:デフォルトの名無しさん
08/06/15 23:29:36
>>160
例えがものすごく悪かったようなので
もう一度書きます

a[1]=1.5
a[2]=2.0
a[3]=3.0 といった表示を連続で出したいのです

164:デフォルトの名無しさん
08/06/15 23:31:56
System.out.println("a[" + n + "]=" + a[n]);

165:デフォルトの名無しさん
08/06/15 23:35:08
>>158
なぜ>>42をスルーできたのか気になる

166:デフォルトの名無しさん
08/06/15 23:37:13
>>164
教えてくださりありがとうございます
おかげさまで出ましたm(_ _)mペコリ

167:デフォルトの名無しさん
08/06/15 23:39:00
世の中は不思議に満ちている

168:166
08/06/15 23:39:54
と思ったら
まさかのa[0]~a[2] の表示が出ない!!

169:デフォルトの名無しさん
08/06/15 23:40:48
枯れない桜が枯れたのだよ

170:デフォルトの名無しさん
08/06/15 23:42:40
>>168
そりゃ、ループが3からだもの
0, 1, 2 は固定なんだから、>>158
System.out.println("1.5");
System.out.println("2.0");
System.out.println("3.0");

System.out.println("a[0]=1.5");
System.out.println("a[1]=2.0");
System.out.println("a[2]=3.0");
に変えればいいと思うよ

171:166
08/06/15 23:42:57
ちょっと冷静になって直してきました
無事にできました
ありがとうございます

とりあえず落ち着け俺

172:166
08/06/15 23:43:52
>>170
すみません、おかげさまでできました

ちょっと混乱しやすい性質です
パニック映画でまず食われる役が最適なやつですから

173:デフォルトの名無しさん
08/06/15 23:48:37
ん?創価学会がなんだって?

174:デフォルトの名無しさん
08/06/16 00:02:42
すみませんが、教えてください。
「入力した数字が素数かどうかを調べる」というものなのですが、
下のところまでできたのですが、
肝心の「数字を入れてください」の部分ができません
「input>」と表示した後に数字を入れたいのですが
どうすればいいでしょうか

public class sosuu {
public static void main (String[] args) {
int n = ;

boolean isPrime = true;
for (int i = 2; i <= n - 1; i++)
if (n % i == 0) {
isPrime = false;
break;
}

if (isPrime)
System.out.println(n + " prime number.");
else
System.out.println(n + " not prime number.");
}
}

記述すべきことを教えてくださいませ
よろしくお願いします

175:デフォルトの名無しさん
08/06/16 00:05:17
つBefferedReader

176:デフォルトの名無しさん
08/06/16 00:08:20
>>176
一応聞きたいのですが、
それ以外の方法はありますでしょうか?
教わったかどうかあやふやですので…

177:デフォルトの名無しさん
08/06/16 00:14:20
それ以外だとargsを使う方法かな

178:デフォルトの名無しさん
08/06/16 00:16:33
>>177
そっちのほうほうをお願いします
自分でもうまく当てはめようとしたのですが
どうにもうまくいかず。

教えの程、よろしくお願いします

179:デフォルトの名無しさん
08/06/16 00:17:16
すみません
ほうが一つ多すぎましたorz

落ち着け私


180:デフォルトの名無しさん
08/06/16 00:19:06
あれっ?
自分で作っておいて気づいたのですが
argsを使っていました…

ここからどう変えるのか…

181:デフォルトの名無しさん
08/06/16 00:26:52
>>174
>「input>」と表示した後に数字を入れたいのですが

この「後に」というのは条件ではないの?
argsの内容は実行前のコマンドの段階で入力されてしまうんだけど、っていうあたりはわかってるのかな

182:デフォルトの名無しさん
08/06/16 00:28:46
多分分かってない
いや>>174よく読まず無責任にargs出した俺が悪いんだが

183:デフォルトの名無しさん
08/06/16 00:31:15
>>181
忘れていました(汗
「いつも最初に記述するように」と教わっていたので
最初の2行くらいはろくに考えておらず…

となると>>175の方の表記の方法でしかできませんかね?

184:デフォルトの名無しさん
08/06/16 00:32:13
>>182の方…

やはり私の記述はわかりづらいのでしょうか?

185:デフォルトの名無しさん
08/06/16 00:33:32
BufferedReaderを習ってないとすると、
まだDataInputStreamのreadLine()で指導している先生だったりするとか、
そのくらいしか思い浮かばない

186:デフォルトの名無しさん
08/06/16 00:36:56
>>185
あれ…
その方法は学んだっかな…

何かもっとこうシンプルだったような…

187:デフォルトの名無しさん
08/06/16 00:39:26
あとは、例の「IO」みたいなユーティリティークラスを用意していて、
それを専ら使うように指導しているとか

188:デフォルトの名無しさん
08/06/16 00:43:25
スキャナーを利用したインプット表示でした

とりあえず手元にあるパソコンでは
スキャナー表示のものを動かすことができませんので
手を加えたものを後日別の場所で動かしてみます

189:デフォルトの名無しさん
08/06/16 00:50:34
1.5導入かw
素で使ったことなかったYO

190:デフォルトの名無しさん
08/06/16 00:54:54
jdkのバージョンを5.0以上にすれば良いだけじゃないの?

191:デフォルトの名無しさん
08/06/16 00:55:14
>>174
>System.out.println(n + " is a prime number.");
>System.out.println(n + " is not a prime number.");

192:デフォルトの名無しさん
08/06/16 00:58:30
>>190
jcpadはそれで大丈夫なのかなと

>>191


193:デフォルトの名無しさん
08/06/16 00:59:05
## : prime
## : not prime
ならおkかも

194:デフォルトの名無しさん
08/06/16 01:05:14
>>193
どのような記述をすればそうなるでしょうか?

195:デフォルトの名無しさん
08/06/16 01:06:52
いや、>>191は単に>>174の英語が変ってことでしょ
>>193は形容詞版

196:デフォルトの名無しさん
08/06/16 01:13:35
あれっ?
なんだかだんだんおかしな方向に…

表記はこうするように言われているのでこの通りにしております
問題は数字をJCpadのコマンド画面で直接打てないことで…

197:デフォルトの名無しさん
08/06/16 01:19:51
コマンドプロンプトから実行する方法は知らないってことね

198:デフォルトの名無しさん
08/06/16 01:26:08
>>191
いや、わかった。すまん。
URLリンク(www.mlab.im.dendai.ac.jp)

199:デフォルトの名無しさん
08/06/16 01:26:29
>>197
そうです、はい

素数の式が絡んでくるともう…

200:デフォルトの名無しさん
08/06/16 01:28:06
>>198
それのことを言っていたんですかね?
確かに参考にしましたが、うまくできず

201:デフォルトの名無しさん
08/06/16 02:30:09
これじゃ学生が可哀想だ。
教師か教科書か教え方が悪い。

202:デフォルトの名無しさん
08/06/16 03:33:10
>>33 >>158
よく見たらこれと一緒だな
スレリンク(tech板:46番)

203:デフォルトの名無しさん
08/06/16 09:09:44
最近の大学生って頭悪いよね
情報学科卒業してきた子より
高卒で趣味でunixいじってたような子の方ができたりする

204:デフォルトの名無しさん
08/06/16 09:35:23
現在、ポーカーのプログラムを作っています
TreeMapを使っているのに、ソートされないのは
やはりソースに問題がありますよね?

205:デフォルトの名無しさん
08/06/16 11:10:15
最近の情報学科って大したこと教えてないからな。
その上こんなスレに来る奴なんてデフォで講義ろくに聞いてない&屑講師なんだから当たり前だろ。
そりゃ趣味でlinuxいじってた方が強いわ。

206:デフォルトの名無しさん
08/06/16 11:25:17
習うより何とかってことで纏め

207:デフォルトの名無しさん
08/06/16 11:50:09
創価大に情報科なんかあったか?

208:デフォルトの名無しさん
08/06/16 12:03:20
ルートディレクトリを与えるとそこからツリーを生成するプログラムを作ったのですが、
Linuxと違ってWinではルートが複数あり、また環境によって存在するドライブレターも違うので
全ルートを与えるためにはA~Zまで試してみるくらいしか方法が思いつきません。
今現在存在するルートディレクトリ(C:\,D:\…)を取得する方法ってあるでしょうか?


209:デフォルトの名無しさん
08/06/16 12:13:54
>>208
File.listRoots()

210:デフォルトの名無しさん
08/06/16 13:13:08
>>209
四苦八苦していたのにこんな便利なstaticメソッドがあったのですか…。
即レスありがとうございます!!

211:デフォルトの名無しさん
08/06/16 14:50:40
JNIで外部DLLを呼び出しているんですが
そのDLLでEXCEPTION_ACCESS_VIOLATION (0xc0000005)
を発生した場合、Java側ではtry catchをしても
落ちてしまいます。
なんとか例外としてキャッチできないものでしょうか?


212:デフォルトの名無しさん
08/06/16 15:04:19
C側で例外をキャッチする必要があるのでは
でJavaの例外として投げ直す

213:デフォルトの名無しさん
08/06/16 17:21:26
>>212
ありがとうございます。
CでDLLのEXCEPTION_ACCESS_VIOLATION をキャッチできるか
聞いてきます。

214:デフォルトの名無しさん
08/06/16 17:47:14
ArrayListではなく、エクスプローラみたいなイメージのツリーの機能を実装したコレクションクラスや
それに近いクラスはあるでしょうか。JDK1.6です。JDKでなくても、その他ライブラリであれば合わせて教えていただけないでしょうか。

215:デフォルトの名無しさん
08/06/16 18:23:05
文字列「C:\」を「C:」に変換したくて
String path="C:\\";
path.replaceAll("\\","");
とやったのですが、java.util.regex.PatternSyntaxExceptionが出ました。
バックスラッシュを表したくてエスケープさせて指定したつもりが、
どこがおかしいのでしょうか?

216:デフォルトの名無しさん
08/06/16 18:23:55
>>214
JTree

217:デフォルトの名無しさん
08/06/16 18:33:24
>>216
ありがとうございます。
これってawt用ですが、できれば親と子を持つという概念だけのコレクションクラスはないですかね。

218:デフォルトの名無しさん
08/06/16 18:40:02
>>215 [\\\\]->[\\]

219:デフォルトの名無しさん
08/06/16 18:41:49
>>217
それくらい自分で作れ

220:デフォルトの名無しさん
08/06/16 19:00:37
>>217
コレクションでツリーなんて良くあることなのに、高級言語の1.6にしてもないなんてね。そのくせ余計なクラスばかり多い

221:デフォルトの名無しさん
08/06/16 19:21:52
>>218
ありがとうございます。
しかし何故\\\\になるのでしょうか?
replaceを使うと普通に\\で大丈夫なのに。

222:デフォルトの名無しさん
08/06/16 19:25:16
>>217
ない。

URLリンク(bugs.sun.com)
evaluationによれば、Doug Lea御大がC++で実装した経験から、
汎用かつ軽量でパフォーマンスに優れた実装を作るのが難しいからだってさ。

223:デフォルトの名無しさん
08/06/16 19:26:34
>>221
URLリンク(java.sun.com)
> String replace(CharSequence target, CharSequence replacement)
> リテラルターゲットシーケンスに一致するこの文字列の部分文字列を、指定されたリテラル置換シーケンスに置き換えます。
> String replaceAll(String regex, String replacement)
> 指定された正規表現に一致する、この文字列の各部分文字列に対し、指定された置換を実行します。


224:デフォルトの名無しさん
08/06/16 19:46:06
>>223
ここから考えると、
\を表す文字列で表したい→\\
\を正規表現で表したい→\\\\
ってことですよね。

なんか考えているうちにこんがらがってきましたが、
コンパイル時のエスケープと正規表現のエスケープで二重にエスケープする
必要があるってことでしょうか??


225:224
08/06/16 19:47:09
× \を表す文字列で
○  \を文字列で

226:デフォルトの名無しさん
08/06/16 19:57:44
>>224
URLリンク(java.sun.com)
>たとえば、文字列リテラル "\b" は、正規表現と解釈されると、バックスペース 1 文字とマッチされます。 しかし、"\\b" は単語境界とマッチされます。

227:デフォルトの名無しさん
08/06/16 20:29:46
JListでListCellRendererを使いアイコンをセットする際に、
システムで設定されているアイコン(htmlならIEやFxのアイコンのような)を表示したいのですが、
Javaではこういう情報を取得する方法はあるでしょうか?


228:デフォルトの名無しさん
08/06/16 20:38:39
知識不足によりはまっているのでご教授願えればと思います。

現在、Apache + Tomcat の環境で、SSLによるWebアプリケーションを構築しています。
その中でAppletも併用しているのですが、このAppletに証明書を付けて配布したいと考えています(AppletからWebサービスを呼び出す)

Apacheにopensslで作成したキーを登録し、WebアプリケーションやAppletのダウンロードのSSL化はできました。
ところが、そこで作成した証明書をkeytool で登録し、AppletのJarに付与しようとするとエラーとなります(認証チェインがルート証明書に届いていない云々)

そこでkeytoolでキーと証明書を作ればと思ったのですが、keytoolでは証明書はエクスポートできるのですが、鍵は抽出できません。

本番環境では正式なCAを通した鍵と証明書があるのですが、開発環境でオレオレ認証でApacheと署名Jarを同時に行うにはどうすれば良いでしょうか?

229:218
08/06/16 21:39:29
String r;
r = path.replaceAll("[\\\\]",""); // Compile -> "[\\]"
r = path.replaceAll("\\\\",""); // Compile -> "\\"
r = path.replace("\\",""); // Compile -> "\"
コンパイルすると、2つ重なる¥が1つの¥になるので、
逆に1つの¥を表すためには¥を2つ重ねる必要がある。(C/C++も同じ。)
その上で、正規表現の¥自身を表すときは¥を2つ重ねる必要がある。
正規表現で"\"や"[\]"はおかしい。
コンパイル後、String内の¥¥bは2バイト、一方¥bは1バイト文字になる。

230:デフォルトの名無しさん
08/06/16 21:52:01
>>227
JFileChooser で使ってるサイズしか取れないけど。
javax.swing.filechooser.FileSystemView#getSystemIcon(java.io.File)

231:デフォルトの名無しさん
08/06/16 22:06:06
>>230
こんなのあったのですか、ありがとうございます!

232:デフォルトの名無しさん
08/06/16 23:29:30
>>228
オレオレCAの証明書をJREのルート証明書群に追加すればいいんでない?
(jre/lib/security/cacerts)


233:デフォルトの名無しさん
08/06/17 14:06:02
Javaで開発する際に、プロジェクトの構成というか、ディレクトリの整理作法がわからないんだけど
たとえばこんなのとかので
trunk
 +-/build/build.xml              #ビルドに関するもろもろ
 +-/src/net/2ch/pc11/Hoge.java     #ソース
 +-/tests/net/2ch/pc11/HogeTest.java #テスト用
参考になるウェブサイトとか公開されているsvnで秀逸なのを教えてくんろ

234:デフォルトの名無しさん
08/06/17 14:39:42
apacheでは参考にならないと?

235:デフォルトの名無しさん
08/06/17 16:03:25
nextした数を保持するiteratorクラスってありますか?

236:デフォルトの名無しさん
08/06/17 16:16:02
それくらい作れよ

237:デフォルトの名無しさん
08/06/17 17:15:21
>>235
つListIterator

238:デフォルトの名無しさん
08/06/17 17:50:28
一般には>>236かな。反復回数の実績をカプセル化したいんでしょ。

239:デフォルトの名無しさん
08/06/17 19:06:42
Hibernateで、エンティティとして定義しているクラスに継承をしているものがあるとクエリ結果がダブってuniqueRequestでエラーになる、、
ビューを定義していたから楽しようとして落とし穴にはまった、、

継承せずにベタに書くと解決しました。

継承したままうまくクエリする方法ってないでしょうか。

240:デフォルトの名無しさん
08/06/17 19:41:06
音楽を鳴らしたいが、シンボルが見つかりませんというエラーがでるんだ。
何が必要なのかおしえてくれ~~~

play("./burst.wav");//爆発音声

241:デフォルトの名無しさん
08/06/17 20:07:08
>>240
参考資料をよく読むんだッ

242:デフォルトの名無しさん
08/06/17 20:10:43
int x = 2345;
int y = 1585;

xの百の位の3とyの十の位の8を
抜き出して演算処理したいのですが
どのようにしたらいいですか?心優しい方助言をば・・

初心者でごめんですm(_ _)m

243:デフォルトの名無しさん
08/06/17 20:13:36
>>242
123わる10は、12あまり3

244:デフォルトの名無しさん
08/06/17 20:36:27
>>240
アプレットのplayメソッドに渡すのは文字列で表されたURLじゃなくて、
「URL」というクラスのオブジェクト。

play getCodeBase
でぐぐるとわかるよ。

245:デフォルトの名無しさん
08/06/17 20:45:16
>>123わる10は、12あまり3

わかりそうで・・・わかりませんOrz
具体的にコードで操作するにはどうすれば int x = 2345; の
百の位の 3 抜き取れますか?

タイトルに・・初心者大歓迎って書いてあったから・・ごめんなさい

246:デフォルトの名無しさん
08/06/17 20:51:37
ComponentのcreateImageで戻ってきたImageをBufferedImageを変更したいのですが、
どうすればよいでしょうか?

247:デフォルトの名無しさん
08/06/17 20:53:40
Tomcat 6上で動くアプリを開発してます。
サーブレットのユニットテストを書こうと思っていて、
ちょっと調べた所HttpUnitとCactusってのが有名っぽいので
どちらかを使おうと思ってます。、

それぞれの長所短所とか教えて下さい。

248:デフォルトの名無しさん
08/06/17 20:55:14
>>245-246
こういうのって良くあるTIPだと思うんですけど、そういうサイトとご存知ないですか?

249:デフォルトの名無しさん
08/06/17 20:56:46
>>245
x=String.valueOf(2345);
x.charAt(2);


250:デフォルトの名無しさん
08/06/17 21:02:15
>>248
すみません。いろいろ調べたのですが。InputStream見たいにデコレータ形式だと思ってjavadocも見たのですが、
コンストラクタにもなくて。

251:デフォルトの名無しさん
08/06/17 21:02:28
>>246
PixelGrabberでピクセル値とってきてBufferedImageに書き込むとかは?

252:245
08/06/17 21:12:56
どこかこういうTIPが載っているサイトありましたら教えてください
初めてiアプリ自作してるのでわからないことだらけ・・ですOrz

253:デフォルトの名無しさん
08/06/17 21:16:17
>>245
整数の商、整数の剰余の出し方はさすがにわからないとおかしいと思ったんだけど。。
123 / 10 == 12
(123 / 10) % 2 == 2
123の十の位は2。

254:デフォルトの名無しさん
08/06/17 21:16:38
やべ、何だ % 2 ってw
% 10 ね

255:デフォルトの名無しさん
08/06/17 21:19:51
>>245
いえ、大歓迎とまでは

256:デフォルトの名無しさん
08/06/17 21:27:47
初心者っつーか
ちと、質問がある 誰か教えてくださいまし

俺はインターネットファイルを取り出して
自分のPCにディレクトリごとにフォルダを作ってコピーし
オフライン時にこのように模擬サイトを作って見るんだが

javaアプレットが入ったサイトだと、そのファイルを取り出せずに
仕方なくjavaなしのオフラインサイトを見ることになるんだが
どうやったら、javaアプレットを動作させる模擬サイトを作れるか教えてくださいまし


257:デフォルトの名無しさん
08/06/17 21:36:30
>>233
Pragmatic Starter Kitのどれか(たぶんVersion ControlかAutomation)に載っ
てるのがひとつの参考にはなると思う。

訳は↓
達人プログラマー―ソフトウェア開発に不可欠な基礎知識 バージョン管理/ユニットテスト/自動化
URLリンク(www.amazon.jp)

まぁ立ち読みしてみてくれい。


258:245
08/06/17 21:45:12
>>253
ありがとぅ><

>>255
大歓迎・・は、してなかったですねOrz



259:デフォルトの名無しさん
08/06/17 21:46:05
>>256
アプレットがどのファイルを使うか、というのは基本的にHTML上のリンクとして現れないから、
アプレットの中身を分析するとか、そういうツールを調達するとかしないとダメな場合が多いと思われ。

260:デフォルトの名無しさん
08/06/17 21:48:43
いや、JREのキャッシュから復元できたりするのか?やったことないけど

261:256
08/06/17 21:57:17
>>259>>260
どもども、すいませんです
プログラミングとしての質問でなくて肩身狭いっす><
java自体仕組みが分かってないので 専門の方にはバカっぽい質問でしょうが、

その、俺が復元したいサイトはjavaアプレットを使って中学数学を教えているサイトでして、
そのアプレットが動作しないと、文章や画像があってもサイトとしての意味がないものに
なってしまいます><

ソースを見るとどうやら、拡張子がclassのファイルがjavaアプレットだと思うのですが(それって当たってます?)
どうも、キャッシュにないです><

どうにか復元したいので、教えてください;;

262:デフォルトの名無しさん
08/06/17 22:06:27
Appletはオフラインよりオンライン(ネット上のアプリ)を想定してるので、素直につなげていた方がいいですよ。
出来なくも無いですけど、アレコレやるの面倒でしょ
何なら作者に連絡取るとか

263:デフォルトの名無しさん
08/06/17 22:07:49
>>261
>javaアプレットを使って中学数学を教えているサイト

ちょっと設定に無理がある

264:デフォルトの名無しさん
08/06/17 22:12:01
参照渡しの概念って厳密にはどんな定義なんですか?
今まで自分は配列を参照する変数やオブジェクトを参照変数を引数で渡すことが
参照渡しだと思ってたのに、Cの本なんかを読むとどうやら違うみたいなので。

265:デフォルトの名無しさん
08/06/17 22:56:08
厳密な定義などはないけど、C的にはメモリ上のアドレスの値を渡すこと

266:デフォルトの名無しさん
08/06/17 23:00:31
javaでいう参照渡しとC++でいう参照渡しは別モノ

267:デフォルトの名無しさん
08/06/17 23:05:41
>>258
オレの答えたcharAtじゃご不満なわけか

268:デフォルトの名無しさん
08/06/17 23:11:32
>>265
Cに参照渡しはない

269:デフォルトの名無しさん
08/06/17 23:12:58
FORTRANの引数やC++の参照型の引数は純粋な参照渡し。
Cのはポインタ渡し。

270:デフォルトの名無しさん
08/06/17 23:13:14
用語は違うがあるけど?
Cやったこと無いくせにに、適当なこと言う言うな

271:デフォルトの名無しさん
08/06/17 23:14:51
Cのはポインタの値渡し。
参照渡し使ってる言語をちゃんと知ってるなら
ポインタ渡しが参照渡しなんて口が裂けても言えないはず。

272:デフォルトの名無しさん
08/06/17 23:16:28
>>265

273:デフォルトの名無しさん
08/06/17 23:18:07
>>267
たぶんこのjavaスレは呪われてんだろ

274:デフォルトの名無しさん
08/06/17 23:18:23
多重継承とか参照渡しとか何時まで釣れるんだよw

275:256
08/06/17 23:18:54
>>262,263
やっぱりサイト主に連絡しないとですか…
復元してるなんて、、言って大丈夫なのか心配です、、

いい方法があったら、教えてください。 
場違いを感じてきたので、ロムりながら勉強します。


アプレットは
作図の手順をクリックすると順番に線が現れるやつとか
比例反比例のグラフが点が多くなってゆき最後に線になる奴とか

なんかフラッシュでもできそうなやつです…


276:デフォルトの名無しさん
08/06/17 23:20:20
>>264
「変数」に関する参照渡し(参照呼出し)はできない、と言っていい。
URLリンク(javafaq.jp)

Cの場合、「参照による変数渡し」のような文法的概念はないけど、
変数への参照を明示的に渡すことによってほぼ同等のことができるという感じか。

277:デフォルトの名無しさん
08/06/17 23:21:30
>>275
初めの質問のときとだいぶ態度が違うけど、何で?

278:デフォルトの名無しさん
08/06/17 23:22:54
>>272
仮引数の値をコピーして実引数に渡すのが値渡し。
仮引数に対する操作が(可能なら)実引数に及ぶのが参照渡し。
厳密に定義されています。

ポインタ渡しは単に値をコピーするだけなのであくまで値渡し。
参照渡しのエミュレートでしかありません。
残念でした。

279:256
08/06/17 23:27:14
前スレ読まず、ただ教えてくれ~の気持ちが強くて
ちょっと強気に言ってました。。。  気に障ったらごめんなさい。。

すげぇ場違いだったと今反省してます;;
オフラインで使用可能な方法がありましたら、よろしくです。
id表示ありませんがすべて自分ですのでよろしく。


280:デフォルトの名無しさん
08/06/17 23:30:36
>>278
はぁ?

281:デフォルトの名無しさん
08/06/17 23:33:42
>>279
十分教えてもらったのにまだ教えてもらいたいなどと考えてるし、
たぶん君が願っている事はもうかなわないと思う。

282:デフォルトの名無しさん
08/06/17 23:34:08
まあなんていうか、「厳密には参照渡しじゃねーよ」というものも、
「実質的にはそーじゃねーか」とか言われてるね、みたいな空気を感じるあたりで手を打たないかw

283:256
08/06/17 23:38:02
279
あ、前スレじゃなく このスレを読まず 
いきなり質問してしまいましたが、
レス入れていただいた方ありがとうございます。

では、<(__)> 

284:デフォルトの名無しさん
08/06/17 23:38:06
そうやって甘やかすから
void foo(int *p) { p = malloc(sizeof(int)); }

int *p;
foo(p);
free(p);
とかして、ポインタに代入して参照渡しにしたのに
何かエラーになりますとか言う奴が現れるんだろ・・・。

285:デフォルトの名無しさん
08/06/17 23:41:55
Cをちゃんと勉強してからジャヴァやるもんじゃないですか?普通は

286:デフォルトの名無しさん
08/06/17 23:42:05
>>256
はいさようなら

287:デフォルトの名無しさん
08/06/17 23:43:36
Java の引数も値渡しだな。

288:デフォルトの名無しさん
08/06/17 23:45:20
>>283
個人的な意見で申し訳ないが、なんかアパマン・ショップの物件案内の社員(DQN)と似てるんだがw
やっぱりDQNはどの分野でもDQNであって、決してそのようなDQNに期待してはいけないのだろうかといつも悩んでいるんだけど、誰か教えてくれませんか?

289:264
08/06/17 23:47:24
たくさんのレスありがとうございます。
まだモヤモヤしてるけど雰囲気は掴めました。
CもJavaも基本は値渡しだけどポインタとか使っちゃうと似た感じにできちゃうけど
でもそれは厳密には参照渡しじゃないぜ
って感じですね
面白そうだから純粋な参照渡しを仕様としてる言語を勉強してみます

290:デフォルトの名無しさん
08/06/17 23:47:30
何か質問者も回答者も頭おかしいのがちらほら増え始めたな
>>288はそんな質問ここでして何がしたいんだ

291:デフォルトの名無しさん
08/06/17 23:48:23
毎度のことながら値渡し/参照渡しで揉める理由が分からん

C, Javaには参照渡しはない。C++, C#にはある。

というだけの話しだろう

292:デフォルトの名無しさん
08/06/17 23:48:40
>>289
正確に理解してくれて嬉しいぜ。

293:デフォルトの名無しさん
08/06/17 23:49:50
>>289
というか、あなたの理解は根本的に間違ってますね。
少しCをかじったことあるみたいですけど・・

294:デフォルトの名無しさん
08/06/17 23:50:52
>>293
^^;

295:256
08/06/17 23:52:20
・・・すいません。失礼します。

296:デフォルトの名無しさん
08/06/17 23:55:05
>>256
>>286
おいでくさいまし

297:デフォルトの名無しさん
08/06/17 23:55:22
C++でもint& b = a;を「参照」という言葉で表現するという罠があるし、
まあいいんじゃねそんな世界

298:デフォルトの名無しさん
08/06/17 23:57:04
値渡しor参照渡しってのは、呼び元に影響を与えるかどうかだ。
int[] data = new data[5];
この変数dataには実体ではなく配列データが保存されたメモリを指す
だからf(data)と渡してf関数の中でdataをいじれば呼び元の配列に影響を及ぼす
よって参照渡しである。
OK?

299:デフォルトの名無しさん
08/06/17 23:57:09
いや、それは参照で合ってるだろ。
b に対する操作が a に及ぶんだから。

300:デフォルトの名無しさん
08/06/17 23:58:20
>>298
data の参照先に影響を及ぼすが
data には影響を及ぼさない。
仮引数をいくらいじろうが、data の中身が急に int[10] に変わることは無い。
よって値渡し。
OK?

301:デフォルトの名無しさん
08/06/17 23:59:32
>>298
引数に指定した変数そのものを指すのが参照渡し
実体がどうとかじゃなくて,そういう風に見せる言語機能

302:デフォルトの名無しさん
08/06/18 00:00:39
>>300
例えば関数の中でdata[0] = 1 と代入したら
呼び元のdataに入ってる配列の値も変わるんですが。
意味分かってる?

303:デフォルトの名無しさん
08/06/18 00:00:50
>>256みたいな人をここでバカにすると、今度は>>256みたいな人が他のところでjava技術者を馬鹿にするから、そういう事はやっちゃダメ!!

304:デフォルトの名無しさん
08/06/18 00:01:40
298 = 馬鹿
ってことぐらいしか分からない

305:デフォルトの名無しさん
08/06/18 00:01:46
>>302
分かってるに決まってるだろwww

306:デフォルトの名無しさん
08/06/18 00:02:12
盛り上がって参りました(棒読み)

>>299
あれは参照渡しに使えるけど、参照そのものではない

307:デフォルトの名無しさん
08/06/18 00:02:47
もうツマンネー自演はいいから

308:デフォルトの名無しさん
08/06/18 00:04:13
>>288
をこのスレの方々はどう考えてるのか教えていただけないでしょうか・・

309:デフォルトの名無しさん
08/06/18 00:05:04
void 参照渡し(ref int[] data) { data = new int[] { 4, 5 }; }

int[] a = { 1, 2, 3 };
参照渡し(ref a);
出力(a);//{4, 5}が出力される

C#だとこんな感じ

310:デフォルトの名無しさん
08/06/18 00:05:33
ポインタの話と同様、
void foo(int[] hoge) { hoge = new int[10]; }

int[] data = new int[5];
foo(data);
とやっても data が参照してるのは new int[5] のままであって new int[10] ではない。
Java の引数が本当に参照渡しなら、data は new int[10] を指すようになる。

311:256
08/06/18 00:08:05
一応、ロムしてましたが、

アプレットはオフラインはできない
という答えを受け取って消えます。

さようなら。

312:デフォルトの名無しさん
08/06/18 00:08:13
>>309>>310 の差をきちんと理解し実感していれば
Java が参照渡しなんて口が裂けても言えなくなる。
「Java が参照渡し」 という言葉は初心者にいらぬ誤解を与える邪悪な言葉だ。

313:デフォルトの名無しさん
08/06/18 00:09:48
いつの時代でも、Cのポインタを理解するのは鬼門ってこと
char*manko=&tinpo

314:デフォルトの名無しさん
08/06/18 00:12:21
>>310
それってdataはnew int[10]になるんじゃないの?

315:デフォルトの名無しさん
08/06/18 00:12:59
>>312
じゃ、何渡しがいいかな?

316:デフォルトの名無しさん
08/06/18 00:13:34
「オブジェクトの参照値渡し」とか?w

317:デフォルトの名無しさん
08/06/18 00:14:07
>>315
ポインタ渡しでいいよ。
ぬるぽとか言うくらいだし。

318:デフォルトの名無しさん
08/06/18 00:14:30
一応、ポインタを全快に理解してないと、GCを実装できないんだが・・

319:デフォルトの名無しさん
08/06/18 00:14:48
お前らが頭いいのは分かったが
何言ってんのかがさっぱり分からん!

320:デフォルトの名無しさん
08/06/18 00:15:48
>>314
ならないよ

321:デフォルトの名無しさん
08/06/18 00:15:54
>>316
あまり厳密に突っ込みを入れたくは無いだが、それは「インスタンスの」じゃないの?

322:デフォルトの名無しさん
08/06/18 00:17:34
>>314 みたいなのが出てくるから
Java は参照渡しとか言うのは邪悪としか言いようが無いんだよな。

323:デフォルトの名無しさん
08/06/18 00:19:12
Javaやる前にCを勉強してください。それも鬼門とか超難関といわれる「ポインタ」(と参照)についてしっかりやっておかないとついてこれなくなります。

324:デフォルトの名無しさん
08/06/18 00:20:57
>>315
参照の値渡しでいいんじゃね?

325:デフォルトの名無しさん
08/06/18 00:21:17
Cに参照はないし
別にポインタは難関でもなんでもない。

326:デフォルトの名無しさん
08/06/18 00:23:45
アパマンの奴はDQNしかない。「とーちゃん。派遣面接受かったみたいだよー」のあの派遣会社のCMと同程度のDQNしかいない。

327:デフォルトの名無しさん
08/06/18 00:33:46
>>326
なにいってんだ?同じ人間だし、確かに変なやつだとしてもな、どこかにいいところがあるだろ。
そういうところを互いに評価しないといけないんじゃないのか?

328:デフォルトの名無しさん
08/06/18 00:38:13
>>321
URLリンク(java.sun.com)
> An object is a class instance or an array.

だから「オブジェクト」のほうが正確なんじゃないかな?

329:デフォルトの名無しさん
08/06/18 00:44:08
いや、Java的にはね

330:デフォルトの名無しさん
08/06/18 01:00:22
>>328
たぶん君もアパマンのDQNと同等と思ったけどね、そう噛み付きなさんなw

331:デフォルトの名無しさん
08/06/18 01:03:15
「アパマン」「DQN」がマイブームの香具師がいるな

332:デフォルトの名無しさん
08/06/18 01:03:53
オレ的解釈だと、C的にはオブジェクトの」、Java的にはインスタンスの」かな。
オブジェクトの単語自体があいまだからなんともいえないけど。>>328の引用は単なる君が権威主義(英語とかSUNとか)が好きなだけじゃないのかな?

333:デフォルトの名無しさん
08/06/18 01:05:57
よくわからんw

334:デフォルトの名無しさん
08/06/18 01:09:26
>>328は権威にあこがれるDQNってことじゃないの?

335:デフォルトの名無しさん
08/06/18 01:17:09
>>328,331,333
食わず嫌いはいけませんね。
そうなってしまったのは、あなたの人格が歪んでるからでしょうか?

336:デフォルトの名無しさん
08/06/18 01:55:47
権威も何も、Sunが作った言語なんだから、
Sunの見解を参照するのは当然でしょ。

337:デフォルトの名無しさん
08/06/18 02:26:01
英語の文脈で使われるobjectと日本語の文脈で使われるオブジェクトは違うでしょ
javaを使うならJLSは当然第一に参考にすべき文書だけど日本語に訳する時に直訳はいかんよ

338:デフォルトの名無しさん
08/06/18 06:28:49
>>268 >Cに参照渡しはない
>>270 >用語は違うがあるけど?
Javaでいう参照渡しはC/C++でいうアドレス渡し

ところで、
>>270 >Cやったこと無いくせにに、適当なこと言う言うな
??

339:デフォルトの名無しさん
08/06/18 09:11:17
toStringで任意の型のオブジェクトを文字列に変換することができますが、
逆に、Type型の値と文字列からオブジェクトを作成するような枠組みは無いのでしょうか?

よろしくお願いします。

340:デフォルトの名無しさん
08/06/18 10:00:02
>>339
意味がよく判らないんだけど、
 "int", "1" => int で 1
 "float", "1" => float で 1.0
みたいな感じ?
で、それは既存の組み込み型だけでいいの?

341:デフォルトの名無しさん
08/06/18 10:32:46
sprintf() の 逆なら atoi()
static Integer Integer.valueOf(String s)
<指定された String の値を保持する Integer オブジェクトを返します。>
Type型と文字列から、じゃなくて? 表現は正確に。

342:デフォルトの名無しさん
08/06/18 11:56:44
Cのscanf()に相当する関数が欲しいって話かな。

343:デフォルトの名無しさん
08/06/18 12:15:23
スクリプト系言語のeval相当のものが欲しいようにも読める

344:デフォルトの名無しさん
08/06/18 12:34:41
そこでJson-libですよ。

345:339
08/06/18 13:50:08
説明がわかりにくくてすみません。

Object a = fromString(java.util.Date.class,"2008/1/1");
System.out.println(a.getClass()); // class java.util.Date
System.out.println(a); // Tue Jan 01 00:00:00 JST 2008

Object b = fromString(Integer.class,"10");
System.out.println(b.getClass()); // class java.lang.Integer
System.out.println(b); // 10

上のfromStringのように、文字列と変換後の型を指定すると、
文字列を指定した型のオブジェクトに変換できるような物が欲しいのです。

.NETのTypeConverterのように、
既存の組み込み型や標準ライブラリで定義された型に対して使用でき、
さらに、自分で作成したクラスに対する動作も指定できるような枠組みがあればよいのですが
このようなものはありませんでしょうか?

346:デフォルトの名無しさん
08/06/18 13:51:30
JDK6でrhinoでevalすればいいだろ

347:346
08/06/18 13:53:03
>>343-344あてね

348:デフォルトの名無しさん
08/06/18 13:57:57
Class.forName()

349:デフォルトの名無しさん
08/06/18 13:59:30
>>339
「toStringの逆」という変換が一般には無理だとわかった上で?
具体例をどうぞ

350:デフォルトの名無しさん
08/06/18 13:59:51
やべ遅れたw

351:デフォルトの名無しさん
08/06/18 14:32:23
リフレクションで出来そうじゃない?

352:デフォルトの名無しさん
08/06/18 14:35:23
よくわからんけど、インターフェースが統一されないとやなのか

353:デフォルトの名無しさん
08/06/18 15:20:13
いやいや、単なるC#宙でしょ

354:デフォルトの名無しさん
08/06/18 16:00:56
自分で作ればいいんじゃない
Object fromString(Class c, String s) {
if (c == Date.class) return DateFormat.getInstance().parse(s);
if (c == Integer.class) return Integer.parseInt(s);
if (c == Float.class) return Float.parseFloat(s);
以下略
}

355:デフォルトの名無しさん
08/06/18 16:52:10
toStringが返す文字列からオブジェクトを復元することは汎用的には無理

356:デフォルトの名無しさん
08/06/18 17:42:53
Object#toString()ってサブクラスの実装依存じゃなかったっけ?

357:デフォルトの名無しさん
08/06/18 18:41:28
うん。というか、
Object#toString()がオーバーライドされていないと、
クラス名とハッシュ値しか返ってこないから、
インスタンスの内部状態を知ることができない。

358:デフォルトの名無しさん
08/06/18 18:58:04
URLリンク(msdn.microsoft.com)(VS.80).aspx
Windows フォームのプログラミング
方法 : 型コンバータを実装する

ここなんかを見ると、GUI要素のプロパティをいじる時に文字列を経由したりするよねっていう感じの
用途がかいま見える

359:デフォルトの名無しさん
08/06/18 19:02:03
TypeConverterってそういうもんだよ
実装したらメタデータとして型やプロパティに指定しといてリフレクションで取ってくるの

360:デフォルトの名無しさん
08/06/18 19:39:10
これは邪道かな(あとPnutsですまん)
pe = class java.beans.PropertyEditorManager::findEditor(Integer.TYPE)

pe.setAsText("100")
println(pe.value - 1) // 99

pe.value = 200
println("200".equals(pe.getAsText())) // true

361:デフォルトの名無しさん
08/06/18 20:27:12
だからそれならrhinioで出来るって

362:デフォルトの名無しさん
08/06/18 20:36:38
このスレでは、String.charAtやClass.forNameじゃ不満なのか?
もう答えるつもりないし、どうでもいいけど

363:デフォルトの名無しさん
08/06/18 20:45:44
>>361
ぐぐったら前立腺マッサージャーが出たYO

364:デフォルトの名無しさん
08/06/18 21:44:13
>>362
Class.forNameは外していると思うけど、String.charAtはまあまあかな。桁数チェックにもなるし。

365:デフォルトの名無しさん
08/06/18 22:09:43
だれだ、おまえ?

366:デフォルトの名無しさん
08/06/18 22:50:54
>>364
ここではあなたの評価を気にしながら質問に答えなければいけないのですか?

367:デフォルトの名無しさん
08/06/18 23:14:03
>>366
どこからそういう疑問が湧いたのですか?

368:デフォルトの名無しさん
08/06/19 00:12:43
C言語でいう
int data = 3;
printf("%3d",data);
のように右寄せするメソッドご存じないでしょうか?

369:デフォルトの名無しさん
08/06/19 00:17:55
>>368
System.out.print(String.format("%3d", data));


370:デフォルトの名無しさん
08/06/19 00:18:33
>>368
System.out.printf

371:デフォルトの名無しさん
08/06/19 00:18:54
または
System.out.format("%3d", data);


372:デフォルトの名無しさん
08/06/19 00:19:10
ごめん,かぶった.

373:デフォルトの名無しさん
08/06/19 00:19:32
System.out.printf();

改行は ¥n ではなく %n を使う。


374:デフォルトの名無しさん
08/06/19 00:29:23
>>369-373
迅速にお答えいただきありがとうございました。

375:デフォルトの名無しさん
08/06/19 01:13:23
1.4系だったという落ちですね。わかります。

376:デフォルトの名無しさん
08/06/19 02:40:00
質問です
開発は windowsXP+Eclipseで行い、jarファイルを生成
実行は Solaris10 にて行いました
実行時にエラーとして
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Layout
at Cardget.<clinit>(Cardget.java:40)
と出てしまったのですが、ドコから調べればよいかヒントなど
ありませんでしょうか

実行方法は $ java -cp zgss_core.jar Cardget としました


377:デフォルトの名無しさん
08/06/19 02:59:14
log4jをクラスパスに通せ

378:デフォルトの名無しさん
08/06/19 04:00:33
うむ

379:デフォルトの名無しさん
08/06/19 04:29:15
if(test[s]<test[t]){
int tmp=test[t];
test[t]=test[s];
test[s]=tmp;
}

if(test[s]<test[t]){
int tmp=test[s];
test[s]=test[t];
test[t]=tmp;
}
はどっちを書いてもいいの?


380:デフォルトの名無しさん
08/06/19 04:35:39
どこに

381:デフォルトの名無しさん
08/06/19 08:01:31
そのソースだけだと、どっちでもいいとしか言えんがなw

382:デフォルトの名無しさん
08/06/19 09:17:15
TraverseEventってなに?
マウスイベントとか、キーイベントで、ででてくるんだけど、
イマイチ英和辞典の訳じゃ掴めない。

trav・erse ━ vt. 横切る, 横断する; 通過する; あちこち動く;

383:デフォルトの名無しさん
08/06/19 11:25:27
質問させてください。
Mapの値を降順に表示したいんです。現在下のような記述をしてるのですが、
どうも最善な気がしません。これよりマシな方法をごぞんじなら教えてください。
Mapのインスタンス名はmapです。

Set<Integer> ts = new TreeSet<Integer>();
ts.addAll(map.values());

List<Integer> order = new ArrayList<Integer>();
order.addAll(ts);

for(int i= order.size()-1; i>=0; i--){
int num = order.get(i);

for(Entry<String, Integer> en:map.entrySet()){
String key = en.getKey();
Integer value = en.getValue();
if(value == num){
StringBuilder sb = new StringBuilder("Products: ");
sb.append(key).append(": Number: ").append(value);
System.out.println(sb.toString());
}
}
}

384:デフォルトの名無しさん
08/06/19 11:32:59
TreeSetの値を出力すればいいのではなくて?

385:デフォルトの名無しさん
08/06/19 11:54:42
>>383
値の降順にソートするコンパレータを設定したTreeMapにmapをputAllして、
そのTreeMapから順番に取り出せばいいんじゃない?

386:デフォルトの名無しさん
08/06/19 11:58:04
あ、キーの値じゃなくて値か
じゃあ385はダメだね

387:385
08/06/19 12:08:03
Entryの値の方で降順にソートするコンパレータを設定したTreeSet<Map.Entry<String, Integer>>に
map.entrySet()をaddAllして、そのTreeSetから順番に取り出せばいいのかな。

388:デフォルトの名無しさん
08/06/19 12:11:05
配列に全部突っ込んでからソートした方が速そう

389:デフォルトの名無しさん
08/06/19 12:23:26
おおまかにはこんな感じかな?
Set<Map.Entry<String, Integer>> set = new TreeSet<Map.Entry<String, Integer>>(
new Comparator<Map.Entry<String, Integer>>() {
public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {
return o2.getValue().compareTo(o1.getValue());
}
});
set.addAll(map.entrySet());
for (Map.Entry<String, Integer> e : set) {
System.out.println("Products: " + e.getKey() + ": Number: " + e.getValue());
}

StringBuilderを使っているところはインスタンスをループの外で生成するのなら別だけど、
わざわざそう書かなくても+で結合する書き方でもコンパイラがそんな感じにしてくれる。

>>388
それもいいかも

390:デフォルトの名無しさん
08/06/19 12:34:23
どうもgenericsの記述量に負けてあまりシンプルって感じに見えないや。
流れは単にnew TreeSetしてaddAllだけなのに。

391:デフォルトの名無しさん
08/06/19 17:34:42
JavaSE6からjavax.tools.Compilerを使えばJREだけでJavaのコンパイルできるってこと?

392:デフォルトの名無しさん
08/06/19 18:05:52
>>391
JRE には tools.jar が無いから無理のはず。

393:デフォルトの名無しさん
08/06/19 18:18:21
JREにtools.jarは入っていないけれど、
tools.jarをJREといっしょに再配布するのは構わなかったはずなので、
あとはtools.jarにパスが通っていればおk

394:393
08/06/19 18:23:07
自分の作成した動的コンパイル機能付きのプログラムを配布する場合、という意味ね
自分の環境だけでいいのなら素直にJDKをインストール

395:デフォルトの名無しさん
08/06/19 18:24:52
なるほど、tools.jarの再配布条件を調べてみます
ありが㌧

396:デフォルトの名無しさん
08/06/19 22:17:29
質問です
jarを実行したところエラーが出まして
Can't find resource for bundle java.util.PropertyResourceBundle, key table.section.pointup9
というエラーが出たのですが、ドコから調べていいのかわからず。
設定ファイルを読んで処理をするjarなのですが・・


397:デフォルトの名無しさん
08/06/19 22:43:48
久しぶりにJavaのお仕事…
既存のWebシステムに一画面追加するだけのお仕事だったのですが、
SIとSLを作成し、ローカルでコンパイルし、
作ったクラスファイルをUNIXサーバにFTPで配置したのに404

WebOTXを何度落とし上げしても404・・・

ずっと悩んでしまったんだけど、
これってもしやasant deployを忘れてるってことでおkですか?

398:デフォルトの名無しさん
08/06/19 22:52:14
>>396
その設定ファイルが正しく読めてない予感

399:396
08/06/19 23:00:58
pointup9
という項目を追加して読もうとしてるので、そこがおかしいみたいです・・ね
javaのmain定義部分をもう少し見直してみます

400:デフォルトの名無しさん
08/06/19 23:26:37
初心者です
歌詞検索みたいなのってJavaでつくることは可能ですか?

401:デフォルトの名無しさん
08/06/19 23:34:30
データがあればね

402:デフォルトの名無しさん
08/06/20 00:00:07
>>383
もっと素直に
ArrayList<Map.Entry<String, Integer>> list = new ArrayList<Map.Entry<String, Integer>>(map.entrySet());
Collections.sort(list, new Comparator<Map.Entry<String, Integer>>(){
public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {
return o1.getValue().compareTo(o2.getValue()) * -1;
}
});

for (Map.Entry<String, Integer> entry : list) {
System.out.printf("Products: %s, Number: %s%n", entry.getKey(), entry.getValue());
}


403:デフォルトの名無しさん
08/06/20 00:23:02
> * -1;

初めて見た

404:デフォルトの名無しさん
08/06/20 01:26:42
そんな奴には Integer.MIN_VALUE を渡すことにしている。

405:デフォルトの名無しさん
08/06/20 02:11:20
すいません、質問させて下さい。

classpath上に存在するクラスの中から、特定のアノテーションが付いているものだけを抽出する方法を調べています。

Javaで実行時のclasspath上に存在する全クラスを取得する方法ってないのでしょうか?
もしくは特定のpackage以下に存在する全クラスでも良いのですが・・・。

ClassLoaderを自作するサンプルとかにあるみたいに、ディレクトリ以下の.classを直接読みに行く他ないのでしょうか・・・。


406:デフォルトの名無しさん
08/06/20 02:24:26
ええ本教えて

407:デフォルトの名無しさん
08/06/20 03:29:59
>>397

JavaとWebOTXについて言うと
WebOTXを使ったWebアプリ開発についての書籍とかサイトって
なかなかないんだよな・・・

WebOTXユーザって相当少ないのかな・・・
事例とか簡単入門とかもあんまり見当たらないよな・・・

だれか詳しい人、何か参考になる情報あれば、ぜひ

408:デフォルトの名無しさん
08/06/20 03:34:46
>>407
君が詳しい人になって本を書くかサイトを立ち上げてほしいな。

409:デフォルトの名無しさん
08/06/20 03:40:18
3ヶ月間職業訓練校行った人
授業の内容どんなの?

410:デフォルトの名無しさん
08/06/20 06:35:48
>>389
>>402
383です。おそくなりましたが、カキコをありがとうございます。
教えていただいたComperatorインタフェースの使い方、大変参考になりました!
まさに知りたい事だったように思います。

411:デフォルトの名無しさん
08/06/20 06:44:01
スペル間違い、Comparatorでした。

412:デフォルトの名無しさん
08/06/20 09:03:29
私は今年javaを本格的に学び始めた者ですが質問です。

interface Frame {
String Frame = "Alumi";
String getFrame();
}
上記の内容のinterfaceがあるとき実際にはどのような記述と同意であるか?というものです。

いろいろ調べてはみたのですが問題の定義もなんだかイマイチ曖昧で分かりません。
どなたか分かる方教えていただけませんか?

413:デフォルトの名無しさん
08/06/20 09:21:18
っinterface 暗黙 修飾子


414:デフォルトの名無しさん
08/06/20 09:29:50
>>413
abstract?

415:デフォルトの名無しさん
08/06/20 11:49:00
DecimalFormat exFormat2 = new DecimalFormat("###,###,###,##0.##");
System.out.println("hoge=" + exFormat2.format(99.999));

上記ソースで実行結果が99.99となるような切捨てにしたいのですが
どうしたらよいでしょうか?


416:デフォルトの名無しさん
08/06/20 11:51:54
>>405
クラスパスを自力で辿って、すべてのクラスの名前を (ファイル名等から) 知る
Class#forName で、その名前のクラスをロードする
Class#getAnnotation で、ロードしたクラスのアノテーションを調べる

417:デフォルトの名無しさん
08/06/20 12:35:18
>>415
1.6以降なら exFormat2.setRoundingMode(RoundingMode.DOWN) とかすりゃ切捨てできるけど

418:デフォルトの名無しさん
08/06/20 13:33:21
すいません、ここでJSPの質問をしても大丈夫でしょうか?

419:デフォルトの名無しさん
08/06/20 13:34:09
>>417
さんくす。1.5なので100かけて100で割ることにしました。

420:デフォルトの名無しさん
08/06/20 14:58:24
BufferedImageに読み込んだ画像の背景を透明にしたいのですが
どのような方法がいいでしょうか?


421:デフォルトの名無しさん
08/06/20 15:11:56
最初から背景が透明な画像 (透過GIFやアルファ付きPNG) を読み込むのが一番簡単だと思うよ
それじゃだめな理由があるなら、説明よろしく

422:デフォルトの名無しさん
08/06/20 15:53:16
>>420
何をもって背景にするかによって方法はいろいろあるけど、
一番お手軽で処理が速いのは>>421の言う通り最初から透明化したリソースを用意すること。
動的に透過色を変更したいとかの要求があるなら、イメージフィルタを通す方法がある。
例えば真っ白を背景色として透明にするなら、白のピクセルのアルファを0にするイメージフィルタを介してやる。
おおまかにはこんな感じで。
Image transimage = Toolkit.getDefaultToolkit().createImage(new FilteredImageSource(
sourceimage.getSource(),
new RGBImageFilter() {
public int filterRGB(int x, int y, int rgb) {
return (rgb & 0x00ffffff) == 0x00ffffff ? rgb & 0x00ffffff : rgb;
}
}
));
これは背景色が固定された処理だけど、
背景にしたい色を与えて動的に背景色を変更するようにフィルタを実装すればそれなりにいろいろと。

423:420
08/06/20 16:14:09
>>421>>422
返信ありがとうございます

できれば最初から透過された物を使用するのがベストだと思うのですが
アプリケーションを実行する時にpngに関する事でエラーを起こしてしまい
うまくいきません

これは画像の作り方が悪いのでしょうか?

424:デフォルトの名無しさん
08/06/20 16:16:54
>>423
少なくともエラーは晒せ
できればソースも
それともエスパーによる回答希望?

425:420
08/06/20 16:41:26
本当にすいません
画像を作り直したら成功しました
ありがとうございました

426:デフォルトの名無しさん
08/06/20 17:12:38
whileで永久ループしているプログラムに外から停止命令を
出したいのですが、こういう場合はソケット通信が適切でしょうか?
ほかに良い方法がありましたら教えてください。

427:デフォルトの名無しさん
08/06/20 17:15:40
普通はThreadじゃないの?

428:デフォルトの名無しさん
08/06/20 17:15:48
っスレッド

429:426
08/06/20 17:23:55
>>427,428
ありがとうございます。

たとえば
>java hoge.class
で実行して
>java hogestop.class
を実行するとhoge.classのプログラムが終了するような感じにしたいです。

このような場合ですがスレッドはどのように使えますでしょうか?

430:デフォルトの名無しさん
08/06/20 17:45:17
なんだ、小出し野郎か。

431:デフォルトの名無しさん
08/06/20 18:11:37
staticなflagを作って外部から書き換える

432:デフォルトの名無しさん
08/06/20 18:32:00
canvas3D上にpaintでfillRectを用いて描画したいと思っているのですが、
最前面に表示されません。何かいい方法ご存知でしたら教えて下さい。
よろしくお願いします。


433:デフォルトの名無しさん
08/06/21 01:53:26
javaアプリケーションからjarファイル(他のjavaアプリ)を起動することはできるのでしょうか?
方法をご存知でしたら教えていただきたいです。よろしくお願いします。

434:デフォルトの名無しさん
08/06/21 02:03:41
>>433
クラスパスが通ってれば、String[] argsを用意して
com.example.app.FooApplication.main(args);
を呼ぶだけ。

・クラスパスが通ってない場合
・mainのクラス名がわからない場合
などなどあるけど、まあ基本は↑ので。


435:デフォルトの名無しさん
08/06/21 08:58:12
>>434
ありがとうございます。試してみたところ起動できました。
今は同一プロジェクト内のクラスのmainを複数起動してみたのですが、
クラスパスが通っていれば他プロジェクトのmainも起動できるのでしょうか。
一つ問題なのが、この方法だとおそらく複数のアプリが同一プロセスで
実行されている気がするのですが、別々のプロセスで実行することは可能でしょうか。
答えていただければ幸いです。

436:デフォルトの名無しさん
08/06/21 09:21:18
ProcessBuilderとかRuntime(1.4まで)とか

Javaではサブプロセスと縁を切ることはできないんだっけ?


437:デフォルトの名無しさん
08/06/21 10:45:23
独習JAVAで勉強してるんですが
スレッドの章でRunnableを実装したクラスで
MyThread4(String str, long msec) {
this.str = str;
this.msec = msec;
new Thread(this).start();
}
と言う部分があり、その中の
new Thread(this).start();
の部分が意味がいまいちわかりません。
質問があいまいですいませんが
どなたか説明していただけないでしょうか。
お願いします。

438:デフォルトの名無しさん
08/06/21 10:51:36
// 自分自身をスレッドで実行されるコードとして、スレッドを作成する
Thread t = new Thread(this);
// スレッドを開始する
t.start();


439:デフォルトの名無しさん
08/06/21 11:23:58
MouseMotionListenerをimplementsしないと
・mouseDragged(MouseEvent e)
・mouseMoved(MouseEvent e)
が実装できないのはなぜでしょうか。
インターフェイスはあくまで、指定したメソッドの
実装を義務付けるみたいな感じで習ったので。

440:デフォルトの名無しさん
08/06/21 11:33:21
>>439
MouseMotionListenerをimplementせずに
・mouseDragged(MouseEvent e)
・mouseMoved(MouseEvent e)
を実装しても一向に構わないが、
MouseMotionListenerを実装したとは認識されない。ただそんだけ。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch