【初心者】Java質問・相談スレッド103【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2007/06/27(水) 07:23:27JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。http://pc10.2ch.net/hp/
過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下の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 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
前スレッド
【初心者】Java質問・相談スレッド102【大歓迎】
http://pc11.2ch.net/test/read.cgi/tech/1180419689/
/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */
また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。
次スレは>>980あたりで。
0168デフォルトの名無しさん
2007/07/01(日) 04:32:29javacでは拡張子の.javaを含むファイル名を指定する必要あり。
java では拡張子の.classは付けない。
javac test1.java
java test1
0169150
2007/07/01(日) 04:49:15できましたーーーーーーーーーーーーー!!
ファイル名に .java をつけてjavaファイルにしていなかったのが
1番の原因だったと思われます。
ただ、サイトや実用書のように文字が表示されないのが
よくわかりませんが、とりあえず第一関門突破です
ありがとうございました
0170デフォルトの名無しさん
2007/07/01(日) 04:53:15コマンドプロンプトとかDOSとかCUIってしってるか?
0171150
2007/07/01(日) 04:57:42コマンドプロンプトは分かります。
DOSはDOS−Vとかのでしょうか?(真っ黒い画面のがそう?)
DOSとCUIは言葉は聴いたことありますが今いちよく分かりません・・
0172デフォルトの名無しさん
2007/07/01(日) 04:57:55m.add(new JFileChooser());
という感じで、JMenuにJFileChooserを置いて、メニュー内に選択画面を出す…
という変なことやってみたいんですが、ちゃんと表示はされます。
でも、スクロールバーが動かなかったり、ボタンも機能してくれません。
やっぱり無理なんですかね
0173デフォルトの名無しさん
2007/07/01(日) 05:00:120174150
2007/07/01(日) 05:00:56できましたが、Hello Worldの表示が出ない・・・
0175デフォルトの名無しさん
2007/07/01(日) 05:03:47じゃあさっき生成されたclassファイルがあるディレクトリ(フォルダ)に潜って
java test1
>>172
メニューアイテムが選択された時にチューザを表示するようにする。とか。
0176150
2007/07/01(日) 05:12:33今までコンパイラとインタプリタを勘違いしてました。
コンパイラで文字を出そうとしていたのですが
やっと意味が分かってきました。
でも、CLASSファイルができたので
java test1 で出てきそうなのですがエラーになります
うーーん・・・
もうちょいやってみます
0177デフォルトの名無しさん
2007/07/01(日) 05:21:40~~~~~~~~~~~~
0178150
2007/07/01(日) 05:29:22このようなエラーがでます。
おかしいなぁ・・
0179デフォルトの名無しさん
2007/07/01(日) 05:40:49ないなら追加。
0180デフォルトの名無しさん
2007/07/01(日) 05:48:14ttp://ezrenai.takara-me.com/
にリダイレクトされるんだけどPHPおかしくない?
0181150
2007/07/01(日) 05:48:51PATHなんですが、いろいろいじったせいで
元々設定してあったのを全部消して今は
C:\Program Files\Java\jdk1.6.0_01\bin
を設定してあります。; はどこに追加すればよいでしょうか?
0183150
2007/07/01(日) 06:21:16質問答えてくださったみなさんありがとうございました!
やっと次に進めます
0184デフォルトの名無しさん
2007/07/01(日) 06:35:34どうせ俺はvipの深夜保守組だし気にするな。
ただし、昼間は頭使えw
0185デフォルトの名無しさん
2007/07/01(日) 09:00:24WEB上で見るときに色の情報がポップアップで見れたりできるようにしたいんですが
どなたか作ってもらえませんか
http://sky.ap.teacup.com/meki55/img/1183168156.png
欲を言えば最後に絵の具の番号で言うとどうなるのか変換してくれるボックスみたいのがあれば
うれしいんですが
0186デフォルトの名無しさん
2007/07/01(日) 09:03:210187デフォルトの名無しさん
2007/07/01(日) 09:05:540188デフォルトの名無しさん
2007/07/01(日) 09:12:490189デフォルトの名無しさん
2007/07/01(日) 09:36:13Javaのエラーメッセージって相変わらず不親切だな。MSほどじゃないけどさ。
普通に「拡張子(.java)をつけてください」って出せよな
0190デフォルトの名無しさん
2007/07/01(日) 09:39:17元が狂いまくってんだし、幅が効かん。
それともそっち系のモニタの話?
にしても>>185はひどいな。
0191デフォルトの名無しさん
2007/07/01(日) 12:53:48させるにはどのようにすればいいのでしょうか。
↓こんな感じです
最初 □
一秒後□□
もう一秒後□□□
・
・
・
できれば5個くらい表示させたところで停止させる処理の記述も
教えていただけるとありがたいです。
よろしくお願いします。
0192デフォルトの名無しさん
2007/07/01(日) 14:15:28public void paint(Graphics g) {
・
g.drawString("文字間隔",x,y);
・
}
その文字の間隔を任意に設定はできないんでしょうか?
ご教示願います。
0193デフォルトの名無しさん
2007/07/01(日) 16:27:49スレッドまたはタイマー
>>192
g.drawString("文",x1,y);
g.drawString("字",x2,y);
g.drawString("間",x3,y);
g.drawString("隔",x4,y);
どのくらい間隔あけるかは、fontMetricsから計算する
0195デフォルトの名無しさん
2007/07/01(日) 17:28:44読み込んでくれません。 imagesディレクトリに入れてあり、ディレクトリ構造は同じなのですが、
何か MANIFEST.MFに書き加える必要はあるのでしょうか?
0196デフォルトの名無しさん
2007/07/01(日) 17:43:170197デフォルトの名無しさん
2007/07/01(日) 17:48:03わかりました。やってみます。ありがとうございました。
0198195
2007/07/01(日) 17:56:280199デフォルトの名無しさん
2007/07/01(日) 18:13:22public static void main(String[] args) {
long a=2147483647;
System.out.println(a);
}
}
このプログラムのaの値をより大きく表示できるように改変してください。
この値よりも1でも大きくなるとエラーが出てしまいます。
値は出来るだけ大きいほうが良いです。
0200デフォルトの名無しさん
2007/07/01(日) 18:16:201.リソース検索してそのURLを指定せず、ファイル名を直接指定している。
2.Windowsのような大文字小文字の区別をつけないファイルシステムを使っていて、区別をつけるjar内の事情を気にしていない。
0201デフォルトの名無しさん
2007/07/01(日) 18:19:59どっちでも使え
public class longtest {
public static void main(String[] args) {
long a=2147483648L; //1増加
a=Long.MAX_VALUE; // 最大限に増加
System.out.println(a);
}
}
0202192
2007/07/01(日) 18:24:37おいおい、IDでないからってパクるなよw
やってみたけど、めんどうですね。ところでMFCの
SetTextCharacterExtra
みたいに1発で指定できないですかね。
setCharacterSpacing
というのがあるみたいですけど、使い方がわからないです。
0203デフォルトの名無しさん
2007/07/01(日) 18:36:35自分の質問に対するレスへの自分を騙ったレスではないんだからいいんじゃね?
騙りとは違うからIDが出ないこととは無関係。
一発で指定したいのなら、後々のことも考えてsetTextCharacterExtraメソッドを自作する。
0204191
2007/07/01(日) 18:39:34↑をもとに作ってみようとしたんですが、これだとBranchGroupや
TransformGroupはどこで定義すればいいのでしょうか?
0205デフォルトの名無しさん
2007/07/01(日) 18:42:30了解。
0206デフォルトの名無しさん
2007/07/01(日) 20:22:37リンク先のソースのどこにもBranchGroupやTransformGroupはないが?
自分のソース貼り付けてくれよ
0207デフォルトの名無しさん
2007/07/01(日) 21:39:23どこが間違ってるってことなんでしょう?
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at Shukudai453.main(Shukudai453.java:26)
二行目の()の中をクリックすると、ソースコードのこの部分↓が青くなるんですが・・・
int n = Integer.parseInt(args[0]);
*****************
という質問を他スレでしたら、「引数指定」といわれました。
それ以上聞くとスレ違いだらしいので、ここで聞かせてください。
どこを直せばいいんでしょう?
0208デフォルトの名無しさん
2007/07/01(日) 21:41:22WindowsでSWT使ってプログラム書いて実行可能なjarを作ろうとして躓いています
マニフェストファイルを作って
Main-Class: Hoge
Class-Path: . swt.jar swt-win32-3236.dll
さらに
jar cvfm Hoge.jar Hoge.mf Hoge.class swt.jar swt-win32-3236.dll
として固めたjarを(Javaだけはインストールしてある)別の機械に持って行って
java -jar Hoge.jar
とするとDLLが見つからないと言われてしまいます
あらかじめカレントディレクトリに
swt-win32-3236.dll が存在する環境だと実行出来るみたいなのですが
0209デフォルトの名無しさん
2007/07/01(日) 21:43:43java Shukudai453 数字
で実行
0210デフォルトの名無しさん
2007/07/01(日) 21:47:10どんな環境でなにをどうやったらそうなったのか書け
それすら出来ないならば、ここでもスレ違いだ
0211デフォルトの名無しさん
2007/07/01(日) 21:51:49http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=29488
を実行したんですが・・・
0212デフォルトの名無しさん
2007/07/01(日) 21:53:29Javaのバージョンは?
そもそもコードを理解できている?
あと、学ぼうとする気ある?
0213実行したのはこっちの間違いでした
2007/07/01(日) 21:57:38import java.util.ArrayList;
public class Cebysev {
private static List<Integer> primeCache;
static {
primeCache = new ArrayList<Integer>();
}
private static boolean isPrime(int value) {
if (!(primeCache.indexOf(value) != -1)) {
return true;
}
0214デフォルトの名無しさん
2007/07/01(日) 21:59:19>>212
自分ホント分からないものだらけなんで。。。
明日までに完成させたいんです
0215デフォルトの名無しさん
2007/07/01(日) 22:02:410216デフォルトの名無しさん
2007/07/01(日) 22:04:27同情の余地も無い
大学名と学部を晒したら変わりに提出しておいてやるよ
0217デフォルトの名無しさん
2007/07/01(日) 22:23:190218デフォルトの名無しさん
2007/07/01(日) 22:28:120219デフォルトの名無しさん
2007/07/01(日) 22:28:16http://www.seman.cs.uec.ac.jp/~ryu-zr/blog/archives/000571.html
0220デフォルトの名無しさん
2007/07/01(日) 22:29:26ArrayList<String> に別名を付けたり出来ますか?
0221デフォルトの名無しさん
2007/07/01(日) 22:32:56public class StringList extends ArrayList<String> {}
とかすれば出来る(?)けど、何にも意味がないような
0222デフォルトの名無しさん
2007/07/01(日) 22:38:170223デフォルトの名無しさん
2007/07/01(日) 22:38:51Javaにはない
0224デフォルトの名無しさん
2007/07/01(日) 22:43:02ttp://launch4j.sourceforge.net/
0225デフォルトの名無しさん
2007/07/01(日) 23:11:45エイリアスを乱定義して可読性が落ちるからやめてほしいなぁ。
0226デフォルトの名無しさん
2007/07/02(月) 06:35:51私の今のレベルは、Cが「少しは」できる感じです。
(配列・構造体・ポインタなど、基礎的な部分は分かる。
コンパイラの挙動やプリプロセッサに関してもある程度分かる。
作ったことがあるプログラムは、一つあたり1000行(.cファイル二つ、.hファイル一つ)程度)
個人的には、『独習Java』か『やさしいJava』かなあ、と思っていますが、どちらか決め難い。
他にもお勧めがあれば教えてください。
0227デフォルトの名無しさん
2007/07/02(月) 06:38:14オブジェクト指向の勉強もした方がいいよ
0228デフォルトの名無しさん
2007/07/02(月) 06:49:48long型では無理?
0229デフォルトの名無しさん
2007/07/02(月) 07:14:56やさしいJavaはこのスレでもよく話題(笑)にあがるが、少なくともCをかじった人には糞本でしかない
独習Javaがいいと思う
>>228
無理
intの上限以上の配列を確保するってメモリどうなるかは考えた上で設計した方がいい
0230デフォルトの名無しさん
2007/07/02(月) 07:22:13どうしてもintの上限以上の配列を確保したいんですが・・・
0231デフォルトの名無しさん
2007/07/02(月) 07:23:43って言われても全く規模が分からんな・・・未だにこんな言い方してる奴がいるのか。
悪いことは言わんからやさしいjavaはやめとけ。
他の糞本を読んだことないから他にどれが地雷かは分からんが
よほどのものでない限り普通に読めるはず。
後は何がしたいかによってそのジャンルの参考書もいるけど
javaの場合標準ライブラリが多くをカバーしてるんでjava+JAXP等
java開発者向けに標準ライブラリを使った専門分野な本も多くある。
これは外部ライブラリを学習するよりとっつき易さがあるので入門時にはそういう本もおすすめ。
あと、SwingはAWT覚えてから手を出した方が良い。
SwingとAWTは別ライブラリで作法が違うけどSwingはAWT上に構築されてるからSwing中で
(Swingが充実して最近減ったが)AWTのやり方が必要になってくることがあるが両方知ってないと混乱することがある。
0232デフォルトの名無しさん
2007/07/02(月) 07:29:45intの上限を超えて配列は確保できない
そもそも上限を超えた配列を確保できてもライブラリを含め、使うことができない
配列ではない方法で同じデータ構造を持つ方法なんて幾らでもあるだろ
手っ取り早いのはlongをとって、全bitに対してフラグとして扱うとかな
分割して使うことができないとも考えられないし、一体何がしたいの?
0233デフォルトの名無しさん
2007/07/02(月) 07:32:141000ステップ程度ならば、規模を表すにはいいんじゃね?
自分はmainだけで収まるような簡単なサンプルが〜100ステップ程度
いくつかの関数にわけてロジックを組み立てるというところで500〜1000ステップ程度と感じている
個人差もあるし大雑把だけどねw
0234デフォルトの名無しさん
2007/07/02(月) 07:34:01の!はどういう意味ですか?
0235デフォルトの名無しさん
2007/07/02(月) 07:34:41boolean の情報量しかないんなら、
int の配列にして、その 32 ビットの 1 つ 1 つを boolean と見なせばいい。
0236デフォルトの名無しさん
2007/07/02(月) 07:35:44if(!seisu[n]){
ですね
0237デフォルトの名無しさん
2007/07/02(月) 07:36:35現実的にはプリミティブな要素型を持つ配列を生成するケースは少ないので
だいたいの場合はint以上の長さの配列を確保するとすぐにメモリなくなる。
この場合、longを長さに取るコンテナを自作してメモリではなくディスクから読み書きして
必要な分だけメモリに置くクラスを作るのとかする。
マージソート自力で実装する程度のことが出来るならできるんじゃね?
というか配列の要素数は初期化時にint未満の型使ってもワイドニング変換でintになってるからな。
0238デフォルトの名無しさん
2007/07/02(月) 07:38:32つまり、long型の変数を宣言して、その各ビットを、0か1かによって、フラグとして代用するってことでしょうか?
3ビット目が1の場合、booiean[3]=true ってことですか?
0239訂正
2007/07/02(月) 07:40:15つまり、long型の変数を宣言して、その各桁を、0か1かによって、フラグとして代用するってことでしょうか?
100の位が1の場合、booiean[3]=true ってことですか?
0240デフォルトの名無しさん
2007/07/02(月) 07:42:150241やってみます
2007/07/02(月) 07:43:240242デフォルトの名無しさん
2007/07/02(月) 07:44:40細かい突っ込みだがCだと無意味な行が多いからステップ=LOCとは限らんような・・・。
テトリスくらいのをちゃんと関数分けてコメント書いてたら1000行くらいかな?
0243すいません・・・
2007/07/02(月) 07:47:11の!はどういう意味ですか?
0244デフォルトの名無しさん
2007/07/02(月) 07:51:190245すいません・・・
2007/07/02(月) 07:53:16の場合は
a=1以外のとき
ってことですか
でも>>243の場合はどういう意味になるのか分からないんです画・・・
0246デフォルトの名無しさん
2007/07/02(月) 07:57:090247すいません・・・
2007/07/02(月) 07:57:590248デフォルトの名無しさん
2007/07/02(月) 08:00:48if(!a)...
こういうこと
0249デフォルトの名無しさん
2007/07/02(月) 08:01:03「new演算子: クラスのインスタンスを生成します 」
って出てきたんですがいまいち意味が・・・
0250デフォルトの名無しさん
2007/07/02(月) 08:07:110251デフォルトの名無しさん
2007/07/02(月) 08:13:40他人に考えさせる前に自分の頭使おうぜ?
0252228です
2007/07/02(月) 08:18:47僕がやりたいのは、素数を探し出すプログラムで、例えば
「boolean[]のboolean[9967]=false」
だった場合、
「9967は素数ではない。」
といった感じで、素数であるかないかの表を作っていたわけですが、それだとintの上限以上の
素数を記憶できないってことで、皆さんの助言通りに、
「long型の各ビットをbooleanの真偽の代用にする」ことを目指しております。
で、さっきは分かったように思ったのですが、今考えて見るとやっぱりちょっと分からないところが出てきて・・・
long型の各ビットをbooleanの真偽の代用にする、とのことですが、long型の桁数ってint型の上限より少ないですよね?
ってことは「long型の上限の長さの配列」で代用するって意味だったのかなあっと思ったのですが、
配列の長さはintの上限を超えられないんですよね・・・?
結局、できるだけたくさんの素数であるかないかの表を作るにはどうすればいいんでしょう・・・?
0253デフォルトの名無しさん
2007/07/02(月) 08:22:52素数を貯めていくんじゃないかな?
0254デフォルトの名無しさん
2007/07/02(月) 08:24:270255228です
2007/07/02(月) 08:27:23「longに格納できる最大の数」の「桁数」では素数表には少なすぎますよね?
0256デフォルトの名無しさん
2007/07/02(月) 08:28:070257デフォルトの名無しさん
2007/07/02(月) 08:28:100258デフォルトの名無しさん
2007/07/02(月) 08:30:11全部メモリに持ち続ける必要ないでしょ。
区切りでファイルに吐けばlong使う必要ない。
0259デフォルトの名無しさん
2007/07/02(月) 08:30:160260228です
2007/07/02(月) 08:31:03例えば
long n[99999999999]
とかはできるんですか?
配列の長さはどうやってもintの上限を超えられないby>>232
と聞いたので・・・
0261デフォルトの名無しさん
2007/07/02(月) 08:31:13なんでループ分けるの?
0262デフォルトの名無しさん
2007/07/02(月) 08:31:180263228です
2007/07/02(月) 08:32:11すいません詳しくお願いします
(つまり足りなくなったら他の奴に乗り換えろってこと?)
0264デフォルトの名無しさん
2007/07/02(月) 08:35:37配列の個数×longのビット数 だけの情報が扱えるじゃん。
0265デフォルトの名無しさん
2007/07/02(月) 08:36:52素数かどうかの判定でもするの?
0266228です
2007/07/02(月) 08:37:300267デフォルトの名無しさん
2007/07/02(月) 08:37:34■ このスレッドは過去ログ倉庫に格納されています