くだすれJava(超初心 ..
[2ch|▼Menu]
116:デフォルトの名無しさん
07/05/13 08:21:31
>>115
ありがとうございます!
あるソフトを起動しようと思ったら、5.0が必要です。
って言われたので…
今はもっと新しいんですね。

117:デフォルトの名無しさん
07/05/13 12:52:01
ってことは1.4や1.3を使ってるわけね。

5が必要なのか5以降が必要なのか、そのソフトによっては6でも動くのかも
しれない。



118:デフォルトの名無しさん
07/05/13 17:51:32
ホント、マ板は社会不適合者のカスが多いな

119:デフォルトの名無しさん
07/05/13 23:54:56
>>118
( ・∀・)人(・∀・ )カスナカーマ

120:デフォルトの名無しさん
07/05/14 15:58:43
Eclipseのプラグイン作るのって難しいの?

121:デフォルトの名無しさん
07/05/14 17:45:38
どんなものを作るかによる。
凝ったものを作ろうとすればそれなりに大変なのはプラグインに限らない。
プラグインの基本は単純なので簡単なものから作り始めて慣れていったら?

122:デフォルトの名無しさん
07/05/15 00:16:03
簡単
javaをわかってりゃ1日で覚えれる
HelloWorldPluginならその一日でできる

あとは何を作るかだ

123:デフォルトの名無しさん
07/05/19 02:22:11
ネットワーク対戦型ゲームを作りたいのですが、
まず何から始めれば良いでしょうか。

124:デフォルトの名無しさん
07/05/19 04:18:48
>>123
クライアントサイドにSwingをサーバサイドにサーブレットを使ってください
通信部分はJakarta Commons HTTP Clientを使えばいいかもですが
ググってよくわからなければ
素直にSocketでも使ってください

125:デフォルトの名無しさん
07/05/19 11:38:01
>>124
ご親切に何から何までありがとうございます。

126:デフォルトの名無しさん
07/05/20 20:28:25
はじめまして☆どうやってつくればいいのか分からないので教えてください。知らなすぎるからと馬鹿にしないでください。本当に困ってます・・。

課題なんですけど・・。
問題1プログラム「kadai01.java」
1・整数型の変数x、y、answerを定義する。
2・x、yにそれぞれ定数8および10を初期値として設定する。
3・変数answerにxとyを加算した結果を代入する。
4.answerの内容を下記のように表示する。
x+y=18

問題2プログラム「kadai02.java」
1・問題1にて1、2は同様とする。
2・変数xを10倍する。
3・変数answerにxとyを加算した結果を代入する。
4・answerの内容を下記のように表示する。
x+y=90

問題3プログラム「kadai03.java」
1・問題1にて1,2は同様とする。
2・変数zを定義し初期値を10とする。
3・(x+y)*2/zの答えをanswerに代入する。
4・answerの計算結果を表示する。
〜実行結果の表示のしかた〜
 計算結果は○○です。

お願いします!!


127:デフォルトの名無しさん
07/05/20 21:02:39
21日の午前10までにおねがいしたいです。自分勝手ですみません!!

128:側近中の側近 ◆0351148456
07/05/20 22:03:16
>>126,127
(っ´▽`)っ
宿題は少しは自分でやれ。

(っ´▽`)っ
留年っていいよね☆

129:デフォルトの名無しさん
07/05/22 20:54:14
>>126
宿題スレに書き込めば問題解きたくてうずうずしている奴らがやってくれたのに
普通、教科書最初から読んだり、Web上の入門講座読めば分るはず。
わからない所があれば、何所がどう分らないか具体的に書けば誰か答えてくれる。
教科書が難しいなら以下の講座を覗いてみると良いかも
URLリンク(www.smg.co.jp)
URLリンク(www.javadrive.jp)

130:デフォルトの名無しさん
07/05/23 15:59:34
みんなどうやって勉強してますか?
僕は入門書読むだけじゃ、頭に入らないので例題コードすべて書いて実行してます。
例題をちょっと改造なんかしてみたりもしています。
それでも覚えてなかったりしている所があったりします。
こういうやり方は不効率ですかね?

みなさんの勉強法をしりたいです。






131:デフォルトの名無しさん
07/05/23 16:27:19
>>126
ちょっと復習のために解いてみる。

問題1

class Kadai01{
public static void main(String[]args){
int x;
int y;
int answer;

x=8;
y=10;
answer=x+y;

System.out.println("x+y="+answer);
}
}




132:気まぐれアナスイ
07/05/23 16:42:35
>>131
『int』に定義が無いように見えますが?

133:デフォルトの名無しさん
07/05/23 17:06:13
>>132
ちょっと「定義」の意味調べてきます。

134:131
07/05/23 17:29:44
>>132
intの前に『public final static』をつければいいのですかね?

まだ、class宣言と 『public static void main(String[]args)』は
おまじない程度にしかおぼえてません。
学校に行きたいよ〜

135:気まぐれアナスイ
07/05/23 17:42:00
int x=8,y=10,answer=x+y;

136:デフォルトの名無しさん
07/05/23 17:44:57
>>129
>>126みたいな詰まらん問題解くやついるのか?……まあいるだろうけど

137:気まぐれアナスイ
07/05/23 18:55:03
>>136
!(-_Φ+){失礼。}
それは間違いです。
数式の世界に於いて基礎は大切です。

138:131
07/05/23 19:07:59
>>135
『定義』ってint型変数を初期化するってことですかね?

139:気まぐれアナスイ
07/05/23 19:39:55
#include <stdio.h>
main()
{
   if error.
   {
      print
      in((printf(int x=8,y=10,answer=x+y;)=)"yes");
   }
}

140:気まぐれアナスイ
07/05/23 19:44:47
『定義+言語application+文字配列』
!(Φ_Φ+){???}

141:気まぐれアナスイ
07/05/23 19:46:49
開発者は偉大です。

142:デフォルトの名無しさん
07/05/23 20:08:06
>>130
俺は、例題コードをほとんどやらない。そこで解説されている機能を使った
プログラムを組んで理解しするようにしてる。
あとソートや数値計算の基本的なプログラムを組んだり、宿題スレに投下された
問題を解いたり、そこいらにに転がってるのコードを読んだりしてる。
あと、覚えてない所があっても問題無いと思う。そう言うのは使って行くうちに
覚えると思う。


143:デフォルトの名無しさん
07/05/23 23:04:32
>>139-140
勉強しなおしてきます。
ありがとうございました。



144:デフォルトの名無しさん
07/05/25 01:43:00
>>130
年寄りには引出しが少ないのでコードを覚えることが出来ません
どこにその情報があったかだけを覚えます

もう一回見たらなんとなくわかって、
もう2回みたらちゃんとわかってきて・・

そんなもんです

145:デフォルトの名無しさん
07/05/25 03:58:00
いろんな粒度のパターンを頭の中に持って各問題に対してどう適用するか応用力を養えばいい

146:デフォルトの名無しさん
07/05/26 04:17:46
こちらにリネージュ2エミュレーションサーバーのことを
わかる方いらっしゃいますか?

147:デフォルトの名無しさん
07/05/29 15:22:22
こんにちは。『やさしいJava第3版』の練習問題に取り組んでいて、

*
**
***
****
*****

このようなものを出力するコードを書いてみたのですが、私の回答が

class SampleP4
{
public static void main(String args[])
{
for(int i=1; i<=5;i++){
for(int j=1; j<=i; j++){
System.out.print("*");
}
System.out.print("\n");
}
}
}

であったのに対し、模範解答は変数jをインクリメントするfor文が for(int j=0; j<i; j++){
となっていました。jのインクリメントの仕方が、私は1,2,3,4,5で、模範解答は0,1,2,3,4となるのでしょうが、
この問題の場合はどちらでも良いのでしょうか?よろしくお願いしますm(__)m



148:デフォルトの名無しさん
07/05/29 18:31:22
>>147
結果は同じなのでそれでも構わない
for(int i=0; i<5;i++){
for(int j=0; j<=i; j++){
とかでもいいよ
実現方法は一種類ではない

149:デフォルトの名無しさん
07/05/30 03:53:48
>>148
ありがとうございました。m(__)m


150:デフォルトの名無しさん
07/06/08 01:18:36
>>147
ただし、配列とか扱うようになると0から数える場合が多くなって1からカウントするとエラーの元になる場合が多いから、
n回繰り返すときは for(i = 0; i < n; i++) と覚えた方が後々楽になる。

151:デフォルトの名無しさん
07/06/09 08:17:38
どなたか解決方法をお教えください。
01
01
01

02
02
02

03
03
03
上記のようのに並んだデータを

01


02


03

と、重複する値を削除し、重複する値の箇所には何も表示しない様に
するにはどうすればいいでしょうか?
ちなみに、01,02,03はSTRING型です。

152:デフォルトの名無しさん
07/06/09 13:43:39
>>151
STRING型がString型のことだとして、それはどこに並んでるデータなんだ?
わざわざString型と言っているということは、既にインスタンスの並びになっているということか?
たとえばString型の配列なんだとしたら、要素にnullがないことを条件に、
String[] array = { "01", "01", "01", "", "02", "02", "03", "03", "03" };
String t = null; for (String s : array) if (s.equals(t)) System.out.println(); else System.out.println(t = s);
ここでは、何も表示しない=改行のみとしたが、適宜自分の仕様に合わせろ。

153:デフォルトの名無しさん
07/06/09 17:41:11
>>151
01 AAA 12-34
01 BBB 22-34
01 CCC 33-34
・・・

みたいなテキストファイルがあると仮定してみる。
FileReader>BufferedReaderでそれを読み込んでreadLine()
BufferedWriter>FileWriterで出力先を作る
最初をゼロで埋めているので値が二桁に確定していると考えるとsubstring()で最初の2文字を取得
既得リストを作っておいてなければリストに格納しそのまま出力、あれば改行を出力
とか言ってみる。たぶん違う。

154:デフォルトの名無しさん
07/06/10 01:02:18
newが良く分からないのですが、メモリを確保するための予約語なんですよね?
 基本型では確保するメモリ量が決まってるから省略
 参照型では、参照先を指定する値の為のメモリ量が決まってるから省略
 それ以外では、どれだけメモリ取っとけばいいか分からないからnewではっきりさせる
こんな理解で良いですか?
うざい質問かもしれないのですが、より初心者向けなスレとか教えて頂けると助かります

155:デフォルトの名無しさん
07/06/10 02:04:11
メモリを確保する予約語じゃない
インスタンスを作成する演算子だ

156:デフォルトの名無しさん
07/06/10 02:13:57
基本型でもなく参照型でもないものって何だろ?

157:デフォルトの名無しさん
07/06/10 02:24:46
null型がある。任意の参照型にキャストできるが参照型とは別の特別な型。
154の話とは無関係だが。

158:デフォルトの名無しさん
07/06/10 09:02:39
混乱してきたので出直します
お答え頂きありがとうございました


159:デフォルトの名無しさん
07/06/10 10:57:08
じっくり頭を整理するのがいいさー

160:デフォルトの名無しさん
07/06/10 13:36:04
型について勘違いしてたみたいです。でもやっぱり分かりません。

自分が混乱している理由を整理すると、
 1. String等でnewを使わなくて良いのはなぜ?
 2. newは予約語なのに、演算子として解説されているのはなぜ?
ということだと思います。

newについては
 用途:コンストラクタを呼び出す
 動作:メモリ上の任意の領域を確保し、その領域を参照するための値を代入する
ということで良いですか?

161:デフォルトの名無しさん
07/06/10 13:48:07
動作ではなくて結果でした。

162:デフォルトの名無しさん
07/06/10 20:49:58
>>160
1. "abc" は ConstantPool 上の String オブジェクト "abc" を表すリテラル。

2. instanceof も予約語かつ演算子な語句だよな。
new も同じように予約語かつ演算子だから、「約語なのに、演算子として解説」 されてるんだと思うよ。

用途:インスタンスを作成する過程でコンストラクタを呼び出すんだな。

動作:実際にはメモリ(=ヒープ領域)を確保しないで済ませちゃうかもしれない。
160 に書いてある動作は実装上の動作であって、言語仕様上の動作じゃないな。


とりあえず、言語使用を読むことをお勧めするよ
URLリンク(www.y-adagio.com)

163:デフォルトの名無しさん
07/06/11 03:40:32
>>162
ありがとうございます。大分もやもやが取れてきました
頑張るぞー!

164:デフォルトの名無しさん
07/06/12 02:01:28
C言語で
typedef struct _header {
unsigned char opcode;
unsigned long oprand;
} header;

memcpy(&header, src_ptr, sizeof(header))

unsigned char 1byteリトルエンディアン
unsigned long 4byte リトルエンディアン

みたいな感じでバイナリファイルのヘッダ解析とか
したりしますよね?

これってJavaでどうやって書けばいいんですか?
教えてください。

165:デフォルトの名無しさん
07/06/12 02:08:59
/*
typedef struct _header { 
unsigned char opcode; 
unsigned long oprand; 
} header; 

memcpy(&header, src_ptr, sizeof(header));
*/

166:デフォルトの名無しさん
07/06/13 00:44:16
nioのバッファとか使えばいいんだろうけど。

typedef struct _header {
unsigned char opcode;
unsigned long oprand;
} header;

memcpy(&header, src_ptr, sizeof(header))

これ、パディングどうなってんのよ。


167:デフォルトの名無しさん
07/06/15 06:26:47
OutputStreamWriter,およびInputStreamReaderを利用時に、指定すると文字化けしてしまう文字エンコーディングがあります。
具体的にはEUC_JP、ISO2022JP、とサポートされているはずのものです。

ちなみにOSはWindowsXPで、SJIS、MS932が現在正常に使えるエンコーディング名です。
どこに問題があるものなんでしょうか?






168:デフォルトの名無しさん
07/06/15 08:30:18
>>2
DirectByteBuffer

169:デフォルトの名無しさん
07/06/16 03:06:49
IDE のプラグインじゃないプロファイラはありませんか?
TPTP のためだけに Eclipse 入れるのもどうかと思っちゃいまして……

-agentlib:hprof って手もありますけど、できれば
・時間ごとのヒープ使用状況と GC の様子
・各メソッドの実行時間・実行回数の統計
の2つが知りたいんです。


ぶっちゃけ CLRProfiler みたいなのって無いっスかね。

170:デフォルトの名無しさん
07/06/28 21:53:30
大学で今までCをやっていたのですが、教授が入院したためにjavaのクラスに急に移動させられました。
javaを始めて一週間なのですが、明後日までに課題の提出を迫られました。
必死にやってみたのですが、さっぱり意味がわかりません。
わかる方、どうか助けて下さい。
下にわかるだけの課題の内容は書き込んでおきます。

【 課題 】

@右詰で数字を入力し、Enter キーを押した時、数字の値を10倍して表示する。
A何度も数字を入れたらそれらを10倍した数をそれぞれ足し合わせた数同じウィンドウの中に表示する。

【 形態 】Javaアプリケーション
【 期限 】土曜日の授業まで(朝の9時開始)
【 Ver  】1.5


ですよろしくお願いします。

171:デフォルトの名無しさん
07/06/28 22:11:46
java -deprecationでコンパイルしたら
Test$1.classというのが出来たんですけど、これって何ですか?

172:デフォルトの名無しさん
07/06/28 22:18:25
>>171
匿名クラスのクラスファイル
deprecationをつけなくてもできるはず
Testクラスの中に無名クラスの定義が入れ子になって入っている
あとjavaではコンパイルできないんでjavac使え

173:デフォルトの名無しさん
07/06/28 22:35:08
>>172
c付けるの忘れてました(´・ω・`) ありがとう

>>170
"java 入力待ち"でぐぐって見て下さい
あとはfor文とif文を駆使すれば出来ると思います

174:170
07/06/28 22:35:46
すみません
板をまちがえました

正規の課題の板でアドバイスを頂いています
ご迷惑をおかけしました

175:デフォルトの名無しさん
07/06/29 09:20:04
今度仕事でjavaを使ってアプリケーションを作ることになりました。
具体的には、画面からデータ入力してデータベースというものに格納され、
かつ帳票も作成するといった感じです。
プログラミングも初めてなので、正直何から初めてよいかわかりません。
いい勉強の仕方があれば教えてください。
また、現実的に開発にはどのぐらいかかりそうなのか経験者の方に
お尋ねしたいです。
ちなみに機能的には、画面数10帳票数5程度です。

176:デフォルトの名無しさん
07/06/29 12:36:30
まずは上司や先輩などの経験者に聞くべき
君がやろうとしている仕事の内容を一番知っているのも彼らだ
社員を育てるのも会社の仕事

177:デフォルトの名無しさん
07/06/29 14:43:46
>176
社内にはjavaを知っている上司や先輩はいません。
独学で学ぶしかないのですが、わかりやすい書籍や
WEBサイトとかないですかね。


178:デフォルトの名無しさん
07/06/29 15:11:04
君にとってわかりやすいのはどんな本なのか、、、材料が無いのでわからん

179:デフォルトの名無しさん
07/06/29 19:35:54
java未経験者とかならともかく、何でプログラミング未経験者にそんなものを作らせようと考えたんだろう。
プログラミングに対する適性にもよるがその開発が完了するのにかなり時間がかかりそうだ。
誰も知らないのにjavaを開発言語に選択した経緯とかも疑問だな。
周囲にjavaは知らなくてもプログラミング経験者がいるのなら、
まずその人間にプログラミングの基礎から教えてもらった方がいいかもしれん。
手取り足取りまでいかなくても直接疑問をぶつけられる人間がいると独学より効率がいい。
プログラミングの基礎が少しでもできればjavaに独学で入っていくのも楽になる。
だいたいどれくらいの期間のプロジェクトなんだ?
短期間でとかいうならよほど努力するか天賦の才がなければ大変なことになりそうだ。

180:デフォルトの名無しさん
07/06/30 00:07:27
プログラミング初心者になにも教えず、一人で開発させるなんて、
いったいどんな会社だwww

181:デフォルトの名無しさん
07/06/30 00:16:47
始めまして。
ラッパークラスの用途、利点が分かりません。
ラップするクラスの機能を拡張するという事でいいのでしょうか?

182:デフォルトの名無しさん
07/06/30 01:02:03
拡張だけじゃなくて隠蔽もできるぞ
特定の内部動作を外部からいじられないようにしたり
バグのできやすい部分を補ってやったり

183:デフォルトの名無しさん
07/06/30 07:53:44
>>175
ひだりもみぎもわからない初心者が独学でやるのは難しいんじゃないかな?
つらすぎると思うよ
なにも出来ないままただ時間が過ぎるだけになりそう
なにかとわけのわからない事が多いから
誰かしらおしえてくれる人がいないと
進まないでつまづいたままになって終わらないと思うよ


184:デフォルトの名無しさん
07/06/30 10:38:29
>>181
エレベーターガールを置くようなものだよ

185:デフォルトの名無しさん
07/06/30 16:44:52
>>181
あるクラスが柔軟性が高いとかできることが多様などの理由で呼び出しに複雑な手順を踏む必要がある場合、
柔軟性などを犠牲にしてでも簡単な手続きで呼び出せるようにしたいという需要を満たすために作るのがラッパクラス

186:デフォルトの名無しさん
07/07/01 16:03:13
質問です。
2chビューアを作りたいのです。
dat落ちしたスレのログを他のユーザが持っている場合はそちらからコピーできるようにしたいのです。
ネットワークプログラミングならJavaが良いと漠然と思うのですが、Javaはほとんど初心者です。
そこで次の質問にお答えください。
1 Javaよりもふさわしい言語は他にありますか?
2 開発環境はEclipseが有名なようですがどうですか?
3 SWINGとSWTがあるようですがどちらが良いのでしょうか?
4 何か良い本を薦めてください。
5 既にそういうソフトがあれば教えてください。車輪の再発明はやめます。

187:デフォルトの名無しさん
07/07/01 16:42:52
>>186
やめとけ

swing
URLリンク(v2c.s50.xrea.com)
スレリンク(software板)l50

swt(JFace)
URLリンク(lcm.hp.infoseek.co.jp)

188:デフォルトの名無しさん
07/07/01 16:53:23
>>187
即レスありがとうございます。
紹介してくださったソフトでは過去ログの共有はできますか?

189:デフォルトの名無しさん
07/07/01 18:18:55
>>188
あんたは何使っても無理だと思うよ

190:デフォルトの名無しさん
07/07/01 18:32:15
>>189
そういう返事はもっとレベルの高い質問スレでどうぞ。

191:デフォルトの名無しさん
07/07/01 18:40:01
>>190
どこ?

192:187
07/07/01 19:44:19
>>188
てっきりJavaで2chブラウザを作りたいのかと勘違いしました。申し訳ないです。
ログの共有に関しては2chブラウザによって形式が違ったりなどいろいろな問題があるので、
単純に対応というのは難しいと思います。
正直申し上げますと>>186の書き込みからしてこれを自作するのは困難かと思われます。
2chブラウザを探すのはソフトウェア板で聞かれたほうが有益かと思いますので、
そちらへ行かれることをお勧めします。

193:デフォルトの名無しさん
07/07/01 21:35:23
>>192
度々ご回答くださりありがとうございます。
P2Pのようなしくみでログを共有してスレや鯖が落ちているときも読めるようにしたいのですが。
まずは既存のソフトでそのようなものがないか探してみます。

194:デフォルトの名無しさん
07/07/01 22:54:17
共有は共有でもP2Pか
おれてっきり拾ったdatファイルを2chブラウザで見れるようにしたいのかと思ってたよ・・・orz

195:デフォルトの名無しさん
07/07/02 10:33:20
車輪の再発明って初心者が使うには便利な言葉だな。
やりたくないって意味だろ

196:デフォルトの名無しさん
07/07/02 16:18:51
おまいら、もっと初心者を甘やかしてJavaを普及させなきゃダメじゃないかw

197:デフォルトの名無しさん
07/07/02 18:32:51
甘やかして普及するくらいなら、滅びよ現実!

198:デフォルトの名無しさん
07/07/02 20:23:11
すみません。
サンのHPから JDK 6u1 をダウンロードしようと思うのですが、サーバーが見つかりませんの表示しか出ませんorz
開発環境をダウンロードするのって今はもう無理なんでしょうか。。。

199:デフォルトの名無しさん
07/07/02 20:50:29
JDK6 って公開されてからまだ1年経ってないよな

200:デフォルトの名無しさん
07/07/02 23:52:16
>>198
問題なく落とせるよ
何を使って落とそうとしてる?

201:デフォルトの名無しさん
07/07/03 00:06:30
IE6.0で、ダウンロードをいくら押してもサーバーが見つかりませんと出ますorz


202:デフォルトの名無しさん
07/07/03 00:15:02
うちもIE6だけど普通に繋がるなあ
ダウンロードボタンを押すと、リダイレクトされたり、その接続先がhttpsになったりで激しいから
201のセキュリティ環境が厳しすぎるとかなのかな
または、DNSがバカになっててダウンロード用の接続先を解決できないか

203:デフォルトの名無しさん
07/07/05 07:34:57
JFrame frame1 = new JFrame();
JTextArea jta = new JTextArea();
func1(){
frame1.setSize(300, 300);
frame1.setVisible(true);
frame1.add(jta);

これでテキストエリアが表示されないのですが
どうすればいいのでしょうか

204:デフォルトの名無しさん
07/07/05 09:01:01
>>203
func1(){って何だよw

表示されてしまったコンテナのサブコンポーネントが変更された時は
そうと知らせなければコンテナは自身の大きさが変更されるとかのイベントでも起きない限り
サブコンポーネントの変更を知りようがない

試しに元のままでフレームのサイズを変更してみればJTextAreaが表示されるはず

frame1.add(jta);
frame1.setVisible(true);
のようにaddしてからsetVisibleするか

frame1.setVisible(true);
frame1.add(jta);
frame1.validate();
のようにaddしたあとvalidateで再配置させる

205:デフォルトの名無しさん
07/07/05 15:07:57
>>204

表示されました
ありがとうございます

206:デフォルトの名無しさん
07/07/07 16:49:19
URLリンク(www.uploda.org)

この問題の解答例をお願いします。

207:デフォルトの名無しさん
07/07/07 16:56:40
>>206
宿題は宿題スレへ

208:デフォルトの名無しさん
07/07/07 16:59:43
>>207
すまん、そんなスレがあったのか。
ありがとう。

209:質問1/2
07/07/08 07:16:45
コマンドラインから入力した数字以下の素数を表示させるプログラムを作っていたのですが



public class Sosuu1 {
public static void main(String[] args) {


int[] data = new int[args.length];//ここから3行はコマンドラインから数字を入力するためのものである。まず、int型の配列dataをつくる。
data[0] = Integer.parseInt(args[0]);//ここで整数に変換する
System.out.print(data[0] + "以下の素数を表示します ");//コマンドラインから入力した数字を表示する



boolean[] prime =new boolean[1000];//判別
for(int tasikame = 2 ; tasikame < 27 ; tasikame++){ //37×27=999 ここでは配列を1000個しか用意していないのでtasikame < 27とした。
prime[2*tasikame] = false;//素数でないというフラグをつける
prime[3*tasikame] = false;//素数でないというフラグをつける
prime[5*tasikame] = false;//素数でないというフラグをつける
prime[7*tasikame] = false;//素数でないというフラグをつける
prime[11*tasikame] = false;//素数でないというフラグをつける
prime[13*tasikame] = false;//素数でないというフラグをつける
prime[17*tasikame] = false;//素数でないというフラグをつける
prime[19*tasikame] = false;//素数でないというフラグをつける
prime[23*tasikame] = false;//素数でないというフラグをつける
prime[29*tasikame] = false;//素数でないというフラグをつける
prime[31*tasikame] = false;//素数でないというフラグをつける
prime[37*tasikame] = false;//素数でないというフラグをつける
}

210:デフォルトの名無しさん
07/07/08 07:18:06


int i = 0;//int型の変数iを初期化
for (int s = 2 ; s < data[i] ; s++) {
if(prime[s]==false){//もしprime[s]がfalseのときは・・・
System.out.print("×");//なにも表示しない
}else{ // それ以外のときは
System.out.print(s+",");//表示せよ
}
}


}
}

で実行しても、どうしても上手くいかないのですがなぜなのかどうしても分かりません。
どうすればいいのでしょうか?

211:デフォルトの名無しさん
07/07/08 17:13:00
Podcastの動画再生(MPEG4)ってJavaでできる?
wmvに変換してCで作った方が楽?

212:デフォルトの名無しさん
07/07/08 18:26:16
>>209
boolean配列の要素の初期値はfalseだということ。
全てにfalseが入っている配列にfalseでフラグを立てても意味がない。
最初に全要素にtrueを代入するか、または、trueで非素数のフラグ立てをするかする。

どううまくいかないのか、どうなってほしいのか書いていないから推測だが、
その方法だと、例えば、2の倍数は2*26=56までしか非素数フラグを立てられない。
3の倍数だと3*26=78まで。もし、そういう方法を取るのなら各素数ごとに、
tasikameの終わりの値を変えないと取りこぼしがいくらでも出てくる。
それに、その方法は41の倍数の排除ができないよね?
もしそのやり方を通したいなら、まず2自身を除く2の倍数だけ排除して、
排除されなかった最小の整数(つまり3)自身を除くその整数の倍数を排除して、
という感じで順番にやれば簡潔なプログラムになると思う。

213:デフォルトの名無しさん
07/07/08 19:17:47
>>212
ありがとうございました、もう一度その方法でやってみます

214:デフォルトの名無しさん
07/07/08 19:27:51
>>212
上手くいきました、ありがとうございました。
どうやらboolean配列の要素の初期値はfalseだという基本的なことを理解していなかったのが原因だったようですorz

215:212
07/07/08 19:40:43
問題に本質的ではないけど、つっこまれる前に訂正しておく。
2*26=52だねorz

216:デフォルトの名無しさん
07/07/16 22:52:16
java、超初心者です。
諸事情により、javaでマウスポインタの軌跡を測定し保存することになったのですが…
そういうのってできますか?javaならできる!と言われたのですが自分では解らなくて…。

217:デフォルトの名無しさん
07/07/16 22:53:46
付箋を作成したいのですが、コンパイルができません。
C:\sample>javac FusenExec.java
FusenExec.java:6: シンボルを見つけられません。
シンボル: クラス Dodai
場所 : FusenExec の クラス
Dodai fusen;
^
FusenExec.java:7: シンボルを見つけられません。
シンボル: クラス Dodai
場所 : FusenExec の クラス
fusen = new Dodai();
^
エラー 2 個

因みに、ソースはこれです。どこがおかしいかを指摘ください。
class FusenExec{

public static void main(String[] args){


Dodai fusen;
fusen = new Dodai();
fusen.setSize(300,50);
fusen.setVisible(true);

}
}


218:デフォルトの名無しさん
07/07/16 23:09:52
>>216
できるかできないかと言われればできる。

219:デフォルトの名無しさん
07/07/17 01:52:27
>217
Dodai クラスが宣言されていない。

220:デフォルトの名無しさん
07/07/17 01:54:32
マルチするやつは低脳

221:Cの老師を目指す女
07/07/18 00:23:11
裕美子といいます。大都会の片隅で、×いちの孤独なOLをやっています。

>>217
最近出版された書籍のサンプルプログラムですね。Dodai.jarはきちんと
指定されたディレクトリにコピーして、Pathの設定も指定通りでしょうか?

よくわからなかったら、Dodai.jarをソースファイルが置いてあるディレクトリ
にコピーしてみてください。

222:デフォルトの名無しさん
07/07/24 07:09:48
2chでいきなり自己紹介する奴は久しぶりに見た

223:デフォルトの名無しさん
07/07/24 08:08:32
新参か

224:デフォルトの名無しさん
07/07/24 14:45:49
抽象クラスClassAから派生させた、
ClassAAのインスタンスやClassABのインスタンスの入る可能性のあるvariable1は

ClassA variable1;
variable1 = new ClassAA();
variable1 = new ClassAB();
てな風に使えますよね?

ここでClassAのメソッドは、variable1.cA_Method1();という風に使えると思うのですが、
ここで、変数の内容がclassABのインスタンスだった場合のみ、classABのみに実装されている
.cAB_Method1()を呼び出すにはどうすれば良いのでしょうか

if (variable1 instanceof ClassAB){variable1.cAB_Method1()}
とやっても ifの中の実行内容はなんら変わってないので何の解決にもなりませんでした

動的言語しか使った事無いのでよくわからません

225:デフォルトの名無しさん
07/07/24 15:20:24
>>224
何もしない同名のメソッドを他方にも作って継承元で仮想関数を定義。
「何かおかしい」と思うならそれは設計がおかしいんだろ、多分。

226:デフォルトの名無しさん
07/07/24 15:48:17
Javaって仮想変数ないですよね
やっぱり何もしない関数をスーパーに置いておいて、サブでオーバーライドするしかないんですね
ありがとうございました

227:デフォルトの名無しさん
07/07/24 18:24:57
>>224
静的な型がClassA型の変数variable1が呼び出せるメソッドはClassAで定義されているもののみ。
ClassAB型で定義されているメソッドを呼び出したければキャストで静的な型を動的な型に合わせればいい。
if (variable1 instanceof ClassAB){((ClassAB)variable1).cAB_Method1();}

228:デフォルトの名無しさん
07/07/24 18:29:08
キャスト演算子より.の方が優先順位が高いので、
(ClassAB)variable1.cAB_Method1();
としないように。

229:デフォルトの名無しさん
07/07/24 18:40:16
理解しにくけりゃ
if(variable1 instanceof ClassAB){ClassAB variable2=(ClassAB)variable1; variable2.cAB_Method1();}

ClassA variable1;
variable1=new ClassAA();
みたいにスーパークラス型の変数には無条件で代入できるけど
サブクラス型の変数へはキャストが必要になる
キャストは強引に型を変換するから代入したものが本当にその型でなければ当然死ぬ

230:デフォルトの名無しさん
07/07/24 22:02:29
>>224
>>226

仮想変数というものは寡聞にして知らないのだが:

Javaのインスタンスメソッドは全部C++でいう仮想関数だし、
純粋仮想関数(=0)はabstractで宣言したメソッドが該当するぞ。

何もしない
foo() {}
のようなメソッドではなく
abstract foo();
と宣言しておくことで、サブクラスでの実装を強制できる。




231:Tomcatについての相談ですが・・・
07/07/29 17:58:06
『やさしいJava活用編第2版』の学習をした方、あるいはTomcatを使ったことがある方が
いましたら以下の問題の解決にご協力くださいm(_ _)m。

付録CD-ROM内のTomcat 5.5をウィザードに従ってインストールしたのですが
すべてのプログラム→Apache Tomcat 5.5 →Monitor Tomcatという風にTomcatを
起動しようとしても、

   (X) アクセスが拒否されました。

      Unable to open the Service Manager


と表示され、プログラムを起動することができません。



インストールする際に、麻奈本に載っていたスクリーンショットではUser Nameがadmin、
Passwordが空欄だったにも関わらず、ユーザー名とパスワードを設定してインストール
したのが原因なのかな?と思い、アンインストールし、パスワードを設定せずにインストール
し直しましたが駄目でした。

ちなみにOSはWindows Vista Home Basicです。


よろしくお願いします。m(_ _)m

232:232
07/07/29 19:44:19
URLリンク(dream.mods.jp)

むむぅ・・・これが解決策なんでしょうか・・・。
Sysdeoっていうソフトを見つけてくればいいのかな。


233:デフォルトの名無しさん
07/07/30 11:09:35
流れぶった切ってスマソ

Javaをまじめに始めて3日ぐらいなんだけど、
PHPで言う所のsystem(); みたいなものって
Javaにもある?

234:デフォルトの名無しさん
07/07/30 13:42:09
くだすれでも聞きにくい超低レベルな質問というか確認なのですが・・・

現在c: >Program Files >javaに入っているフォルダが

jdk1.5.0_11
jdk1.5.0_12
jre1.5.0_11
jre1.5.0_12
jre1.6.0_01

となってます。古いバージョンが残っているようなのですが、最新バージョンを入れても
古いものが上書きされるのでなく、旧バージョンは手動で削除する必要があるのでしょうか?

この場合は
jre1.6.0_01、jdk1.5.0_12を残して他はすべてフォルダごと削除してもOKなのでしょうか?

幼稚な質問ですがよろしくお願いします。

235:デフォルトの名無しさん
07/07/30 18:58:34
プログラムの追加と削除でアンインストール。

236:デフォルトの名無しさん
07/07/30 20:19:11
>>233
PHPのsystem();がどんなものか分からんが
外部プログラムを起動するCのsystem関数に相当することをやるならProcessBuilderクラス
もし外部プログラムに対する入出力が必要ならProcessBuilder#startで得られるProcessインスタンスから
入出力のストリームをもらえ

でもjavaを始めて3日で外部プロセスに依存するなんていかんよ
まずはpure javaプログラムでどこまでできるか勉強したほうがいい

237:デフォルトの名無しさん
07/07/30 20:33:45
>>231
c:\programfileじゃないとこだったら
入ったよ。
一応、unc無効にしてからやったけど。

238:237
07/07/30 20:37:07
みすった。
uncじゃなくてuacだった。

239:デフォルトの名無しさん
07/07/30 20:41:08
>>236

おぉ、thx!

ProcessBuilder builder = new ProcessBuilder("notepad");

こういうことか。
いや、簡単なランチャー作れるね。

> PHPのsystem();がどんなものか分からんが
system("notepad",$retval);
こんな感じ。

> まずはpure javaプログラムでどこまでできるか勉強したほうがいい
今は基本部分やっとります。
延長上にそれがあるなら、楽しいなと思ってね。

ありがとう。

240:デフォルトの名無しさん
07/07/30 20:51:20
>>239
そうそう、そんな感じ
そのあとbuilder.start()で実際にプロセスを起動する
どんな言語もそうだけどjavaもいろいろ楽しいから楽しみながらがんばれ

241:デフォルトの名無しさん
07/07/30 23:02:58
あまり汎用性はないが、1.6だとGUI上のシェルみたいに
desktop.browse(uri)
desktop.open(file)
とかもできるようになった。


242:デフォルトの名無しさん
07/08/01 02:52:35
232へ
違うだろ。
これはあくまでもEclipseの場合じゃないかな?
サイトを見た限り。
で?できた?
この板ではなく別の板かサイトを見たほうがいいと思うよ。


243:231=232
07/08/01 12:00:11
>>242

>>232のサイトだと、Tomcatをインストーラーを使わずにzipでダウンロードし、
手動で導入すれば、フォルダのtomcat6.exeをクリックでとりあえず起動できる
ようになるということですよね。

さらにEclipse+Sysdeoを使えば普通にコントロールできるようになると・・・。

すみません。それらの方法はまだ試していません・・・。

一応全てのコードをメモ帳手打ちで学習したかったので、狭い部屋の狭い机の
Vista PCをどかして、XPのノートPCにTomcatを入れたら普通に動いたので
なんとか学習を継続しています。

244:デフォルトの名無しさん
07/08/01 16:03:01
いいんじゃないの?
それで。
しかし2台もPC持っているのはすごいな。
でも2台Windowsなのはもったいないから。
XPで学習が終わり次第、Linuxを入れよう。
幅が広がるよ。


245:デフォルトの名無しさん
07/08/01 16:19:22
PC2台って別にすごくないし珍しくも無いよ
特にこの板とかだとね

246:デフォルトの名無しさん
07/08/01 16:47:43
誰もメモ帳につっこまないw

247:デフォルトの名無しさん
07/08/01 18:50:15
>>245がKYだなw

248:231=232
07/08/03 01:34:03
もう一つお願いします(汗)。

サーブレット(Sample6.java)をコンパイルしようとしたのですが、コンパイルエラーとなり、

import mybeans;

の文が指摘されました(mybeansはサーブレットと同じディレクトリに属すフォルダ名です)。

「.」が無いということなので、次は「import mybeans.*;」に修正してコンパイルしても、
パッケージmybeansは存在しませんと言われてしまいます。

あるはずのパッケージがコンパイルにおいて認識されない場合、どういった原因が考えられ得る
でしょうか。ご教示いただけるとありがたいです。


Tomcatをインストール →(省略)→ WEB-INF →→ classes →→→Sample6.java
したディレクトリ                                         |
                                                       → mybeansフォルダ → CarBean.java

249:248
07/08/03 02:09:26
「やさしいJava 活用編 "import mybeans"」でググってみたら
「Java質問・相談スレッド102」でも全く同じ相談があったらしく、その人は自力で
解決できたみたいですけ、原因が分からなかったとか。

250:デフォルトの名無しさん
07/08/03 11:45:06
コンパイルって何を使ってんの?コマンドライン?

251:248
07/08/03 11:49:14
>>250
javacを使用しています。

252:248
07/08/03 11:56:11
コマンドプロンプトを使ってjavac Sample6.javaと入れてコンパイルを試みています。

253:デフォルトの名無しさん
07/08/03 12:06:28
まずさー、import mybeans.*; ってのは、以下のソースで

mybeans.hoge() とかのmybeans.を省略するためにあるんだから
hoge()とかがソース上に無いんだったら書かないでいいんだよ。

254:デフォルトの名無しさん
07/08/03 12:10:41
で、多分 mybeans.hoge() の省略である hoge()はあるんだろう
そしてそのmybeansの場所はclasspathに無いと駄目なんで
コンパイルしている場所をclasspathに含めるなら、 . を追加しないとね。

255:デフォルトの名無しさん
07/08/03 12:12:00
package も書いてあるのかどうかが気になるけど、まあいいや

256:248
07/08/03 12:44:45
>>253-255さんのおかげで解決できました。

classpathってこれのことですよね?と確認するために

変数名:CLASSPATH
変数値:C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib\servlet-api.jar;,

と書いたら、\servlet-api.jar;,←セミコロン、カンマとなっていました。
そしてインポート文をimport mybeans.*;にしたらコンパイルできました。

ご迷惑おかけしました。

257:248
07/08/05 16:52:34
以下は『やさしいJava活用編第2版』の232ページからの引用です。

import java.sql.*;

public class Sample1
{
public static void main(String args[])
{
  try{
     //接続の準備
     String drv = "com.mysql.jdbc.Driver";
     String url = "jdbc:mysql:///cardb";
     String usr = "";
     String pw = "";

     //データベースへの接続
     Class.forName(drv);
     Connection cn
       = DriverManager.getConnection(url, usr, pw);

258:257のつづき
07/08/05 16:53:40
     //問い合わせの準備
     Statement st = cn.createStatement();
     String qry = "SELECT * FROM car_table";

     //問い合わせ
     ResultSet rs = st.executeQuery(qry);

     //データの取得
     ResultSetMetaData rm = rs.getMetaData();
     int cnum = rm.getColumnCount();

       while(rs.next()){
         for(int i=1; i<=cnum; i++){
          System.out.print(rm.getColumnName(i)
            + ":" + rs.getObject(i) + " ");
        }
          System.out.println("");
        }
        //接続のクローズ
          rs.close();
          st.close();
          cn.close();
      }
  catch(Exception e){
     e.printStackTrace();
  }
 }
}

259:248
07/08/05 17:14:52
何度も申し訳ございません。m(__)m

上の2レスはMy SQLのデータベースに接続するためのプログラムで、コンパイルは
しっかりと通るので載せる必要はなかったのかも知れませんが、java Sample1の実行時
に次のように始まる大量の例外メッセージが出てきてしまいます。

C:\YJKSample\8>java Sample1
com.mysql.jdbc.CommunicationsException: Communications link failure due to under
lying exception:

** BEGIN NESTED EXCEPTION **

java.net.SocketException
MESSAGE: Permission denied: connect

(長すぎて後略します)

これはこのスレで相談することでなくデータベースソフト関連の板に当たった方が良いかも
しれませんが、何が原因で起きているか判別できる方はいらっしゃらないでしょうか。

他のスレで「やさしいJava」同梱のMy SQLはバージョンが古いと聞いていたので、My SQLも
JDBCドライバもTomcatと同様に最新のものをダウンロードしておきました。

My SQLにテキストファイルを読み込ませてデータベースを作成するテストは成功しているので
ちゃんと動いているはずなのですが・・・。

本ではJDBCドライバはTomcatのフォルダにコピーするようにとあるのですが、JDKには
インストールしないで大丈夫なの?とも思ってしまいます。

すみません!長文を大量に投稿してしまいました。もう少し、調べて問題点を整理してみます。

260:デフォルトの名無しさん
07/08/05 21:20:17
人間のゴミビンゴ(1列揃えばアウト)

   @│A│B
   ─┼─┼─
   C│D│E
   ─┼─┼─
   F│G│H

 @ 無職   A 童貞          B 引きこもり   
 C キモ顔  D 肥満          E 毎日オナニー
 F 低学歴  G 30歳以上で独身  H 貯金100万未満

261:デフォルトの名無しさん
07/08/06 02:00:19
わからんな。
ソースは間違っていそうにないのだが....
これってDBのデータをjavaで表示するんでしょう?
com.mysql.jdbc.CommunicationsException: Communications link failure due to under
lying exception:
このエラーググッても英語しかないんだよね?
これはjavaの質問スレッド板で聞いたほうがいいんじゃないかな?


262:デフォルトの名無しさん
07/08/06 02:29:32
問題はその下で実際にMySQLが出したエラーだから、
Permission denied: connect
こっちだよな。

connect(2)がPermission deniedすなわち EACCES エラーを
出すのは、手元のBSDのマニュアルによると
[EACCES]
The destination address is a broadcast address and the
socket option SO_BROADCAST is not set.
接続先アドレスはブロードキャストアドレスだがオプションに
SO_BROADCASTはセットされていない

または

Search permission is denied for a component of the path prefix.
パスの一部のディレクトリに検索パーミッションが出ていない
(パスってことはUNIXドメインソケットの場合限定か)

または

Write access to the named socket is denied.
名前付きソケットへの書き込みが拒否された。

だそうだ。

あとはMySQLのどこのconnectで実際にエラーになってるか
を探すくらいか。


263:248
07/08/06 06:22:52
>>261-262

教えてGooの似たような問題のトピックで「String drv = "com.mysql.jdbc.Driver"; 」のところが、
「org.gjt.mm.mysql.Driver」のように記述されているのを見たので、自分のソースコードもそれに
変更してみたら、例外の内容が少し変わりました。

java.sql.SQLException: Access denied for user ''@'localhost' (using password: NO
)

SQLException: Access deniedでググると例によって教えてGooなどの質問掲示板が続々ヒット
するのですが、回答者の多くが、それは読んで字のごとく、SQLへのアクセスが拒否されたことだろうと
説明していました。

MySQLの設定ウィザードでもセキュリティー設定(パスワード)のチェックを外してあるので、
アクセス拒否されるのが信じられないのですが。そのほかファイアウォールを切ってみたり
ソースコードを素人なりにごにょごにょいじったりしてみました。

うーん、難しいですね。とりあえずSQLExceptionだとググるとたくさん出てくるのでもう少し粘ってみます。

264:デフォルトの名無しさん
07/08/06 08:50:16
>>263
>Access denied for user ''@'localhost' (using password: NO)

@'localhost' ってことはユーザーを何も指定していないってことだよな?
ふつー user@'localhost' みたいになるんじゃね? userのとこが root だっ
たりするかもしれんが。




265:デフォルトの名無しさん
07/08/06 15:34:17
>>264
レスありがとうございます。何とかデータベースへ接続できました!
私も最終的には「ユーザー認証」が問題の根幹なのだろうと的を絞っていました。

先ほど>>263さんのレスを読んで、もう一度MySQL Server Instance Config Wizard
と自分のJavaファイルをいじくって見ました。

「やさJava」では上記のウィザードでパスワードの設定を行わないものとし、セキュリティー設定の
可否のチェックそのものを外していたのですが、しっかりパスワードを設定し、Javaファイルも

String usr = "root";
String pw = "(パスワード)";

にしてみたら、コマンドラインからデータベースの内容を表示することができました。

ただ、不思議なのはこういったパターンも以前試したはずですし、Javaファイルを上の
ように修正する前にmysqlファイルのようなものが作業フォルダにいつのまにかできて
いるのを見て驚いたことです。それは削除しましたが。

JDBCドライバをあらゆるlibフォルダに絨毯爆撃してみるなど、ググってみつけたことを
次々と実行していったので、どれが決め手になったのやらorz

266:デフォルトの名無しさん
07/08/07 01:51:37
やさjavaを終わったら別の本をやれ


267:デフォルトの名無しさん
07/08/11 01:35:56
やらしいjavaとか出版予定はないかな?

268:デフォルトの名無しさん
07/08/11 11:14:21
やさしい心よりやらしい体って山本弘の小説のキャラが言ってた。


269:デフォルトの名無しさん
07/08/11 15:57:00
他人のソースを読ませてもらって勉強してる初学者ですが
すごく違和感を覚える記述に出会いますた
これは常識的な(見習ってもいい)書き方なのか教えて下さい

こういうクラスがあって
public class Team {
// (中略)
private ArrayList memberList = new ArrayList();
public ArrayList getMemberList() { return memberList; }
// (中略)
}

別の場所でこうやってる
Team team2ch = new Team();
team2ch.getMemberList().add("茂名"); // ←
team2ch.getMemberList().add("擬古"); // ←
team2ch.getMemberList().add("志井"); // ←

getterを通じてメンバ変数の中身をいじる、というやり方は
Java(というかOO?)の世界ではありふれた手法なんでしょうか?
変だと思う俺の方こそ変で、認識改めた方がいい?


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

4013日前に更新/302 KB
担当:undef