【初心者】Java質問・相談スレッド103【大歓迎】
at TECH
[前50を表示]
100:デフォルトの名無しさん
07/06/29 17:53:15
国際化対応って最後にまとめてやったほうが効率いいですか?
101:デフォルトの名無しさん
07/06/29 19:48:07
>>100
はじめから考えなきゃだめな部分とそうでない部分がある。
まあ、とにかくはじめに検討することが大事。
102:デフォルトの名無しさん
07/06/30 00:14:50
ArrayList<Integer>クラスのインスタンスをint[]クラスに代入したいのですが、どうしたらよいのでしょうか?
toArray()メソッドを使おうと考えたのですが、Integer[]クラスへの代入はできるもののint[]クラスへは代入できませんでした
103:デフォルトの名無しさん
07/06/30 01:00:43
>>102
ArrayList<Integer>とint[]は一方が他方のサブクラスの関係でないので代入できない。
リストの各要素をint[]の各要素に代入したいのなら、
toArrayでInteger[]を生成したあとで、同じ要素数のint[]を作って、各要素に代入していく。
104:デフォルトの名無しさん
07/06/30 01:03:39
ArrayList<Integer>から各要素を直接取り出してint[]の各要素に代入してもいいし。
105:デフォルトの名無しさん
07/06/30 01:25:21
配列a[]と変数b,c,dがあったとして、
if(a[ i ] && b+c<=d)
という条件文の場合、条件を日本語を訳すと「a配列の@番目の要素とb+cがともにd以下の場合」ということでいいんでしょうか?
106:デフォルトの名無しさん
07/06/30 01:30:52
「a配列の@番目の要素とtrueかつb+cがd以下の場合」
107:デフォルトの名無しさん
07/06/30 01:31:33
×要素と
○要素が
108:デフォルトの名無しさん
07/06/30 01:32:17
JAVAの通信についての質問です、お願いします。
URL url = new URL(address);
URLConnection connection = url.openConnection();
としたとしてサーバーに「GET」としてリクエストが行くと思うのですが、ヘッダーのUser-AgentがJava/1.5.0_12となっています。
ネット上のデータを取得するときに、指定したヘッダーをサーバーに送信するやりかたはあるでしょうか?
今はテストとして、URLリンク(www.cybersyndrome.net)をURLクラスで取得して、User-Agentの書き換えをあれこれ試してるんのですが、
URLConnectionのsetRequestPropertyなど試してもなかなかうまくいきません。
よろしくお願いします。
109:デフォルトの名無しさん
07/06/30 02:16:26
>>108
setRequestPropertyはストリームを開く前にセットしないと効果がないよ。
URLConnection u = new URL(...).openConnection();
u.setRequestProperty("User-Agent", "hogehoge");
InputStream s = u.getInputStream();
こんな感じで。
もし、hogehoge Java/1.5.0_12みたいに後に元のUser-Agentが付いても構わないなら、
javaのオプションに-Dhttp.agent=hogehogeとかやるだけでいける。
110:デフォルトの名無しさん
07/06/30 02:24:22
BufferedReaderクラスのreadLineメソッドで一行ずつ読み込む処理を行っているのですが,
現在まで読んだ文字数を知る方法はないでしょうか?
読み込んだ文字列の長さを足していけばいいと思ったのですが,
改行が削除されているために,改行コードがCRかCRLFかわからない場合うまく数えられないのです.
111:デフォルトの名無しさん
07/06/30 02:30:11
>>110
BufferedReader#readLineではたぶん無理
一文字ずつ読んで行にまとめる処理は自分でやる
112:110
07/06/30 02:31:56
>>111
thx
了解です
113:デフォルトの名無しさん
07/06/30 02:35:55
もし改行コードが一貫していることが分かってるなら
とりあえず最初の行末端が出るまでは一文字ずつ読んで
改行がLFかCRLFかCRかを判断したら
あとはreadLineで読んで改行の種類に応じて行ごとに文字数に1か2を足してやる手もある
114:110
07/06/30 02:37:43
すみません,追加で質問させてください.
BufferedReaderで現在まで読んだバイト数(現在位置)も知ることは無理でしょうか?
115:108
07/06/30 02:44:38
>>109
継続的にUAの改変をしたいのでプログラム中に書こうと思ってます。
試した処理が
URL url = new URL(String address);
URLConnection connection = url.openConnection(); //オブジェクト取得
connection.setRequestProperty("User-Agent", "hogehoge"); //ヘッダーセット
connection.connect(); // 接続
という風にやってます。
その後は、BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()));で読み込んでreadlineでデータ読み込むとやっぱりUAがJAVAのままになってます。
ぐぐって出てくるサイトはPOST処理について書かれてるものばかりで。
URLで中身取得するだけなら、これ以上処理はないと思ってるのですが。
connect()前にヘッダー送られてるのでしょうか…
116:デフォルトの名無しさん
07/06/30 02:52:28
URLConnectionの方でUser-Agentを設定してるのに
実際にデータを読むときはなんでURLからストリームを開いてるの?
117:デフォルトの名無しさん
07/06/30 02:54:22
if(blp==0) i=2;
for(;i<bln;i++){
}
と
if(blp==0){
i=2;}
for(i=2;i<bln;i++){
}
は一緒の意味?
118:デフォルトの名無しさん
07/06/30 02:56:18
>>114
多分無理っぽい。自分でカウントするしかなさそう。
>>115
わざわざconnectしなくてもデータを読もうとした時点で勝手に接続してくれるよ。
119:デフォルトの名無しさん
07/06/30 02:58:50
>>117
blpの値によって違う
120:110
07/06/30 02:59:18
>>118
ありがとう.了解です.
>>113の方法でやってみることにします
121:デフォルトの名無しさん
07/06/30 03:01:21
>>119
もしblpが0と1の2種類の場合、0と1でどう違うのでしょうか?
122:デフォルトの名無しさん
07/06/30 03:09:07
blpが非零の時にif文が終了した時点でiに何がセットされてるか考えてみ
123:デフォルトの名無しさん
07/06/30 03:10:59
>>122
実際に実行してみて分かりました!
124:108
07/06/30 03:15:28
>>116
ありがとうございます、UA表示が変わりました。
どうやら、本でURL先のデータ表示だけをする部分に
URLリンク(journal.mycom.co.jp)
ここのヘッダー取得処理を加えたときに、ごっちゃになったようです、すみません…
>>118
私も最初はconnect()いらないんじゃないかと思ったんですが、ぐぐったときに出たサイトで
// コネクション生成(この時点では、接続されていない)
con=(HttpURLConnection) url.openConnection();
とあったので、そういうものだとばかり思ってました。
ありがとうございました、またがんばろうと思います。
125:デフォルトの名無しさん
07/06/30 06:27:34
仕様書よりも馬の骨サイトの方を信用する癖は無くした方がいいよ
126:デフォルトの名無しさん
07/06/30 07:33:53
実行中のウィンドウがアクティブでなくなってもキーボード入力を受け付ける方法ってありませんか?
127:デフォルトの名無しさん
07/06/30 08:41:40
ありますよ
128:デフォルトの名無しさん
07/06/30 21:08:43
Servlet アプリケーションの設定って、どこに記述すればいいの?
Windows アプリケーションでいうところの INI ファイルみたいな
設定ファイルって Servlet にはないの?
properties ファイルはローケール依存テキストを記述するものだから
適当じゃないよね?
129:デフォルトの名無しさん
07/06/30 21:18:21
ここにその質問文を書く時間があれば、
グーグル先生に「Servlet 設定ファイル」で聞いてみろよ。
URLリンク(www.google.co.jp)
130:128
07/06/30 21:25:19
>>129
調べたんだけど、どこか分からないんです。
コンテキスト ファイルでもないし、server.xml でもないし、web.xml でもない。。。
外部プログラムのパスとか、アップロードしたファイルを記録するディレクトリとか、
Servlet を配備するユーザーが書き換えれるような設定ファイルって、どれになるのかな?
131:デフォルトの名無しさん
07/06/30 21:31:00
>>130
そういうことか
アプリケーション自体の設定ファイルなんぞ、読める場所に好きな形式で書いておけばいい
変更も少なく数も少なければ、web.xmlに記述するのもあり。
よくやるのは、設定ファイルのパスをweb.xmlに書いておき、実際の設定ファイルは別にするという形
そうすればテスト用の設定ファイルとかを使い分けるのが楽。
形式はXMLにするかプロパティファイルにするか独自形式か、それは好きにしてくれ
132:128
07/06/30 21:34:23
>>131
ありがとう。とても参考になったよ。
133:デフォルトの名無しさん
07/06/30 21:43:49
>>131
ありがとう。とても参考になったよ。
134:デフォルトの名無しさん
07/06/30 23:23:18
swingのJButtonについてですけど、ActionPerformed()の中でIconをsetIcon()で交互に付け替えています。
しかし、ボタンを2回以上押すとアイコンの後ろに「...」のような文字が入ります。 ちなみに、setActionCommand()も
同時に使っています。 何かのバグでしょうか?
アプリは簡単な動画再生プログラムでPlayとPauseのアイコンを入れ替えるだけのものですが、何か解決方法は
ないでしょうか?
135:デフォルトの名無しさん
07/06/30 23:27:30
>>134
ソースみなきゃ何ともいえないけど・・・
JButton playButton = new JButton();
JButton pauseButton = new JButton();
と個別にインスタンス作って、setEnableで制御した方が確実な気がする
どうしても1ボタンで済ませたいのであれば、setVisibleで見せる/見せないの制御を行うほうが自然
136:88
07/06/30 23:50:05
以前「やさしいjava」で勉強してて質問した88です。
値渡し、参照渡しの理解で苦しんでます。
値渡し、参照渡しは言語によってあったりなかったりぽいのですが、これは理屈どうこうっていうより「java仕様」って事で覚えた方がいいのでしょうか?
なぜ値渡し、参照渡しと別々の考え方なのかが理解できないでいます。
「やさしいjava」曰く、クラス型変数は代入=参照渡しだから〜という内容で、int型等を「基本型」とくくって「基本型の変数は値渡し」と書いてあります。
他のサイトやwikiで調べてみると、基本型とかクラス型とか、そういう考え方は一切なく、intやdoubleは値渡しで処理して、String型等は参照渡しがjavaの仕様と書いてあるような気がしました。
やさしいjavaで「クラスで生成された変数は参照型の処理をされる」と書いてありますが、自分のコードのクラスで生成した変数だろうが、クラスライブラリ使用での変数だろうが、
どっちもクラス型変数のような気がして、いまいち「int型やdouble型は基本型の変数」というのが納得いきません。
int型やdouble型等は値渡し、String型は参照渡し みたいな感覚で覚えていいのでしょうか?
うまく説明できてい上に初歩すぎる質問かもですが、よろしくお願いします。
137:デフォルトの名無しさん
07/06/30 23:57:57
>>136
URLリンク(www.google.com)
138:デフォルトの名無しさん
07/07/01 00:11:09
>>136
やさしいJavaはろくな目にあわないなw
Javaでのプリミティブ型は特殊だという認識を持った上で、メソッド呼び出しの時は全てインスタンスの参照が渡されると認識するならばいいんじゃないか?
納得して先に進みたいならば、この辺に結構詳しく書いてあった
URLリンク(d.hatena.ne.jp)
139:88
07/07/01 00:27:18
>>138
仕組みについては理解できました!
クラス型の変数というところでひっかかっていたようです。
クラスで作った変数1=変数2だと参照型というのは理解していたのですが、
やさしいjavaで「String n」の引数に「一号車」と代入する時はクラス型変数なので参照型 という記述があって、
なぜString型がクラス型の変数なのか?とワケワカラン状態になってました。
プリミティブ型が特殊っていう考え方が非常にわかりやすかったですw
値渡しが基本で、参照渡しが特殊 ではなくて、参照渡しばっかりのjavaの中でプリミティブ型は値渡しが行われてる仕様 って事でいいんですね。
勉強になりました。ありがとうございました!
140:デフォルトの名無しさん
07/07/01 00:36:18
>>139
クラス型変数?
違和感を感じたのはそこか!
「クラス型変数なので参照型」は逆だ、逆。
「インスタンス(正確にはその参照)は、参照型変数に代入できる」が正しい
だから、参照型変数の型は必然的にクラスになる
インスタンスの存在に関する記述がテキトーなんだな、その本は
141:デフォルトの名無しさん
07/07/01 00:38:14
Eclipseにてデバッグした後、プログラム終了時に、
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
# EXCEPTION_ACCESS_VIOLATION 。。。
というメッセージがコンソール画面に出て来るときがあります。
Eclipseのデバッグ画面には、このエラーが発生した箇所が出てこないので、どこで発生しているのか分かりません…
このエラーメッセージが出た場合、とりあえずプログラムのどこをチェックすべきですか?
ACCESS_VIOLATIONってことなので、C言語だったらポインタ演算してる箇所とかをチェックするんですが…
142:デフォルトの名無しさん
07/07/01 00:39:09
javaの値型はC++の値型とは違うからなぁ・・・
143:デフォルトの名無しさん
07/07/01 00:45:57
>>141
Swingとかマルチスレッド関連?
どの手のアプリケーション実行していての話だろうか。
デバッグ時だと予期せぬ状態としか言いようがないな
144:デフォルトの名無しさん
07/07/01 00:54:24
>>141
それが出たときは飼い犬に咬まれたと思って諦めろ
145:デフォルトの名無しさん
07/07/01 01:02:59
>>143
今はSwingとマルチスレッド両方使ってます。Swingだけで出てきたこともあります。
エラーが発生した後、logファイルが吐かれてて、そこには
Current thread (0x00837440): JavaThread "JDWP Command Reader" daemon [_thread_in_native, id=5020]
と書かれてました。自分で作ったスレッドで発生したわけではないのかな…
>>144
諦めろ…ということは、原因を突き止めるのがすごく難しい問題だったり、まさかJavaの仕様だったりするんですか…
発生確率は1/10くらいなので「仕様」ということにしておきます。
146:デフォルトの名無しさん
07/07/01 01:09:08
>>145
マルチスレッドだと単純に不安定になるよ
デバッグでなく発生するのであれば、別の問題だろうけど
そうでないのであれば原因を突き止めるのはデバッグモードを創れるレベルが要求されそうな予感
147:デフォルトの名無しさん
07/07/01 01:12:19
>>139
>値渡しが基本で、参照渡しが特殊 ではなくて、参照渡しばっかりのjavaの中でプリミティブ型は値渡しが行われてる仕様
値渡しが全て。
プリミティブは、その値自身が、値渡しされる。
オブジェクトは、そのオブジェクトへの参照が、値渡しされる。
148:デフォルトの名無しさん
07/07/01 01:12:37
連続してデバッグしたりするとよく出るね
149:デフォルトの名無しさん
07/07/01 01:18:11
>>145
VMのバグ、または、JNIでの呼び出し先でのバグかも
Javaのプログラムを見ても解決するはずない、たぶん
150:デフォルトの名無しさん
07/07/01 02:55:57
すみません、超初歩の質問です。
URLリンク(www.javadrive.jp)を参考に
したのですが、java test1を実行すると
「注釈処理が〜」というエラーメッセージが出ます。
エラーは1つです。
で、ためしにjava ソース で検索したものを実行させて
みたのですがこれも同じメッセージでエラー1つです。
これは設定が間違っているということなのでしょうか?
151:デフォルトの名無しさん
07/07/01 02:58:55
自分が書いたソース晒せー
152:150
07/07/01 03:02:09
>>151
これです
class test1
{
public static void main(String args[])
{
System.out.println("Hello World!");
}
}
153:150
07/07/01 03:03:36
なんかずれてる・・
もう1度
class test1
{
public static void main(String args[])
{
System.out.println("Hello World!");
}
}
154:デフォルトの名無しさん
07/07/01 03:10:09
エラーメッセージじゃなくて警告だろ。
そのまま実行すれば実行できるよ。
155:デフォルトの名無しさん
07/07/01 03:11:12
そこは間違ってないな・・・throwされた例外を全部そのままコピペして。
あとjavacとjavaのバージョン
156:150
07/07/01 03:19:46
あ”あ・・
いろいろいじってたらまた出来なくなってきた
操作可能なプログラムまたはバッチファイルとして認識されません
とか出てきた・・・
ちょっと出直してきます。すみません・・・
javacのバージョンとは??
javaはjdk1.6.0_01です
157:150
07/07/01 03:23:53
あと、システムの環境変数で、PATHの所だけ
C:\Program Files\Java\jdk1.6.0_01\bin に変えればよいみたい
なのですが、間違えて class PATH とPatch もこれに
してしまったのですが、問題アリでしょうか??
158:デフォルトの名無しさん
07/07/01 03:26:01
PATHをいじったんだろう。そこでハマるのは本質じゃないから
cd C:\TestClass
C:\Java\jdk1.6.0_01\bin\javac test1.java
C:\Java\jdk1.6.0_01\bin\java test1
みたいにフルパスで指定するべし
159:デフォルトの名無しさん
07/07/01 03:38:28
というか普通は
JAVA_HOME = <install_dir>
Path = %Path%; %JAVA__HOME%\bin;
とする。
CLASS_PATHは必要な時だけ。
環境変数Pathって復元できたっけ?
160:150
07/07/01 04:05:09
なんとか最初の問題まで戻れました。
エラーはこういう表示です。
エラー:クラス名 'java' が受け入れられるのは、注釈処理が明示的に要求された場合だ
けです
エラー 1 個
C:\jsample>
こっから全く進めません・・・
ぐぐっても出てこないし
161:150
07/07/01 04:06:58
↑
ファイル名をjavaに変更しました
162:デフォルトの名無しさん
07/07/01 04:21:33
ソースファイル名をtest1にしてjavac→java
163:150
07/07/01 04:26:10
>>162
ダメです・・・
同じメッセージしか出ません。
なんでだろう????頭こんがらがってます
3時間くらいずっとつまずいでます
164:デフォルトの名無しさん
07/07/01 04:27:13
答:今日はあきらめて寝る
165:デフォルトの名無しさん
07/07/01 04:29:58
Test01.java
------------------------------------
class Test01
{
public static void main(String args[])
{
System.out.println("Hello World!");
}
}
166:150
07/07/01 04:30:14
'java' が受け入れられるのは、注釈処理が明示的に要求された場合だ
けです
このメッセージをぐぐっても出てこないのは
やっぱり普通はこういう事にはならないからなのでしょうか。
うーーーーん・・
>>164
6時までは頑張ってやってみます
ダメなら寝る
167:デフォルトの名無しさん
07/07/01 04:31:04
ミスった
Test01.java
public class Test01
{
public static void main(String args[])
{
System.out.println("Hello World!");
}
}
168:デフォルトの名無しさん
07/07/01 04:32:29
javac test1 とやると「注釈処理が明示的に要求され・・」と出るようだ。
javacでは拡張子の.javaを含むファイル名を指定する必要あり。
java では拡張子の.classは付けない。
javac test1.java
java test1
169:150
07/07/01 04:49:15
CLASSファイルが作成されたらいいんですよね????
できましたーーーーーーーーーーーーー!!
ファイル名に .java をつけてjavaファイルにしていなかったのが
1番の原因だったと思われます。
ただ、サイトや実用書のように文字が表示されないのが
よくわかりませんが、とりあえず第一関門突破です
ありがとうございました
170:デフォルトの名無しさん
07/07/01 04:53:15
>>150
コマンドプロンプトとかDOSとかCUIってしってるか?
171:150
07/07/01 04:57:42
>>170
コマンドプロンプトは分かります。
DOSはDOS−Vとかのでしょうか?(真っ黒い画面のがそう?)
DOSとCUIは言葉は聴いたことありますが今いちよく分かりません・・
172:デフォルトの名無しさん
07/07/01 04:57:55
JMenu m = new JMenu("ファイル選択");
m.add(new JFileChooser());
という感じで、JMenuにJFileChooserを置いて、メニュー内に選択画面を出す…
という変なことやってみたいんですが、ちゃんと表示はされます。
でも、スクロールバーが動かなかったり、ボタンも機能してくれません。
やっぱり無理なんですかね
173:デフォルトの名無しさん
07/07/01 05:00:12
hoge.java.txt っつーのもあるな
174:150
07/07/01 05:00:56
JAVAファイルをCLASSファイルに変換させるとこまでは
できましたが、Hello Worldの表示が出ない・・・
175:デフォルトの名無しさん
07/07/01 05:03:47
>>171
じゃあさっき生成されたclassファイルがあるディレクトリ(フォルダ)に潜って
java test1
>>172
メニューアイテムが選択された時にチューザを表示するようにする。とか。
176:150
07/07/01 05:12:33
>>175
今までコンパイラとインタプリタを勘違いしてました。
コンパイラで文字を出そうとしていたのですが
やっと意味が分かってきました。
でも、CLASSファイルができたので
java test1 で出てきそうなのですがエラーになります
うーーん・・・
もうちょいやってみます
177:デフォルトの名無しさん
07/07/01 05:21:40
public class Test01
~~~~~~~~~~~~
178:150
07/07/01 05:29:22
Exception in thread "main" java.lang.No ClassDef FoundError:test1
このようなエラーがでます。
おかしいなぁ・・
179:デフォルトの名無しさん
07/07/01 05:40:49
もしかして元もとの環境変数Pathに;.含んでない?
ないなら追加。
180:デフォルトの名無しさん
07/07/01 05:48:14
ところでさ、>>1のwiki内のリンク参照するとたまに
URLリンク(ezrenai.takara-me.com)
にリダイレクトされるんだけどPHPおかしくない?
181:150
07/07/01 05:48:51
>>179
PATHなんですが、いろいろいじったせいで
元々設定してあったのを全部消して今は
C:\Program Files\Java\jdk1.6.0_01\bin
を設定してあります。; はどこに追加すればよいでしょうか?
182:150
07/07/01 05:51:20
すいません、がいしゅつ質問してしまいました。
>>1をちゃんと読んでなかったので
ちょいと行ってきます!!
183:150
07/07/01 06:21:16
なんかよく分からないけど、一応できました。
質問答えてくださったみなさんありがとうございました!
やっと次に進めます
184:デフォルトの名無しさん
07/07/01 06:35:34
皆さんて2人くらいしか居ない気がするw
どうせ俺はvipの深夜保守組だし気にするな。
ただし、昼間は頭使えw
185:デフォルトの名無しさん
07/07/01 09:00:24
色について以前質問したものですが
WEB上で見るときに色の情報がポップアップで見れたりできるようにしたいんですが
どなたか作ってもらえませんか
URLリンク(sky.ap.teacup.com)
欲を言えば最後に絵の具の番号で言うとどうなるのか変換してくれるボックスみたいのがあれば
うれしいんですが
186:デフォルトの名無しさん
07/07/01 09:03:21
モニタのキャリブレーションしてるか?
187:デフォルトの名無しさん
07/07/01 09:05:54
キャリブレーションってなんですか
188:デフォルトの名無しさん
07/07/01 09:12:49
Googleで検索くらいかけてから反応しような
189:デフォルトの名無しさん
07/07/01 09:36:13
>>168-169
Javaのエラーメッセージって相変わらず不親切だな。MSほどじゃないけどさ。
普通に「拡張子(.java)をつけてください」って出せよな
190:デフォルトの名無しさん
07/07/01 09:39:17
そこら辺の屑モニタにキャリブレーションする意味もないだろ。
元が狂いまくってんだし、幅が効かん。
それともそっち系のモニタの話?
にしても>>185はひどいな。
191:デフォルトの名無しさん
07/07/01 12:53:48
JAVA3Dなのですが、1秒ごとに1つずつ同じ図形をずれた位置に追加表示
させるにはどのようにすればいいのでしょうか。
↓こんな感じです
最初 □
一秒後□□
もう一秒後□□□
・
・
・
できれば5個くらい表示させたところで停止させる処理の記述も
教えていただけるとありがたいです。
よろしくお願いします。
192:デフォルトの名無しさん
07/07/01 14:15:28
キャンバスに文字を表示しているんですが、
public void paint(Graphics g) {
・
g.drawString("文字間隔",x,y);
・
}
その文字の間隔を任意に設定はできないんでしょうか?
ご教示願います。
193:デフォルトの名無しさん
07/07/01 16:27:49
>>191
スレッドまたはタイマー
>>192
g.drawString("文",x1,y);
g.drawString("字",x2,y);
g.drawString("間",x3,y);
g.drawString("隔",x4,y);
どのくらい間隔あけるかは、fontMetricsから計算する
194:192
07/07/01 16:43:43
>>193
わかりました。やってみます。ありがとうございました。
195:デフォルトの名無しさん
07/07/01 17:28:44
gifイメージをアイコンに読み込んで表示するプログラムですが、jarに固めるとgifファイルを
読み込んでくれません。 imagesディレクトリに入れてあり、ディレクトリ構造は同じなのですが、
何か MANIFEST.MFに書き加える必要はあるのでしょうか?
196:デフォルトの名無しさん
07/07/01 17:43:17
URLリンク(240k.main.jp)
197:デフォルトの名無しさん
07/07/01 17:48:03
>>196
わかりました。やってみます。ありがとうございました。
198:195
07/07/01 17:56:28
195だけど、getClass().getResource()を使うとうまくいった。 疲れた・・・
199:デフォルトの名無しさん
07/07/01 18:13:22
public class longtest {
public static void main(String[] args) {
long a=2147483647;
System.out.println(a);
}
}
このプログラムのaの値をより大きく表示できるように改変してください。
この値よりも1でも大きくなるとエラーが出てしまいます。
値は出来るだけ大きいほうが良いです。
200:デフォルトの名無しさん
07/07/01 18:16:20
jarに固めるとファイルを読み込めなくなるハマリの初心者的2大原因
1.リソース検索してそのURLを指定せず、ファイル名を直接指定している。
2.Windowsのような大文字小文字の区別をつけないファイルシステムを使っていて、区別をつけるjar内の事情を気にしていない。
201:デフォルトの名無しさん
07/07/01 18:19:59
>>199
どっちでも使え
public class longtest {
public static void main(String[] args) {
long a=2147483648L; //1増加
a=Long.MAX_VALUE; // 最大限に増加
System.out.println(a);
}
}
202:192
07/07/01 18:24:37
>>197
おいおい、IDでないからってパクるなよw
やってみたけど、めんどうですね。ところでMFCの
SetTextCharacterExtra
みたいに1発で指定できないですかね。
setCharacterSpacing
というのがあるみたいですけど、使い方がわからないです。
203:デフォルトの名無しさん
07/07/01 18:36:35
やってることは子供じみてるけれど、
自分の質問に対するレスへの自分を騙ったレスではないんだからいいんじゃね?
騙りとは違うからIDが出ないこととは無関係。
一発で指定したいのなら、後々のことも考えてsetTextCharacterExtraメソッドを自作する。
204:191
07/07/01 18:39:34
URLリンク(www.javaopen.org)
↑をもとに作ってみようとしたんですが、これだとBranchGroupや
TransformGroupはどこで定義すればいいのでしょうか?
205:デフォルトの名無しさん
07/07/01 18:42:30
>>203
了解。
206:デフォルトの名無しさん
07/07/01 20:22:37
>>204
リンク先のソースのどこにもBranchGroupやTransformGroupはないが?
自分のソース貼り付けてくれよ
207:デフォルトの名無しさん
07/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]);
*****************
という質問を他スレでしたら、「引数指定」といわれました。
それ以上聞くとスレ違いだらしいので、ここで聞かせてください。
どこを直せばいいんでしょう?
208:デフォルトの名無しさん
07/07/01 21:41:22
すみません
Windowsで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 が存在する環境だと実行出来るみたいなのですが
209:デフォルトの名無しさん
07/07/01 21:43:43
>>207
java Shukudai453 数字
で実行
210:デフォルトの名無しさん
07/07/01 21:47:10
>>207
どんな環境でなにをどうやったらそうなったのか書け
それすら出来ないならば、ここでもスレ違いだ
211:デフォルトの名無しさん
07/07/01 21:51:49
ええっと
URLリンク(sourcepost.sytes.net)
を実行したんですが・・・
212:デフォルトの名無しさん
07/07/01 21:53:29
実行とは?
Javaのバージョンは?
そもそもコードを理解できている?
あと、学ぼうとする気ある?
213:実行したのはこっちの間違いでした
07/07/01 21:57:38
import java.util.List;
import 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;
}
214:デフォルトの名無しさん
07/07/01 21:59:19
すいません>>213は忘れてください・・・
>>212
自分ホント分からないものだらけなんで。。。
明日までに完成させたいんです
215:デフォルトの名無しさん
07/07/01 22:02:41
そんな状態になるまで勉強をしなかったお前が悪い
216:デフォルトの名無しさん
07/07/01 22:04:27
完成させることは無理
同情の余地も無い
大学名と学部を晒したら変わりに提出しておいてやるよ
217:デフォルトの名無しさん
07/07/01 22:23:19
だから宿題スレの701嫁
218:デフォルトの名無しさん
07/07/01 22:28:12
絶望的に理解不足だなw
219:デフォルトの名無しさん
07/07/01 22:28:16
>>208
URLリンク(www.seman.cs.uec.ac.jp)
220:デフォルトの名無しさん
07/07/01 22:29:26
C++で typedef std::vector<std::string> strings_t; という感じに
ArrayList<String> に別名を付けたり出来ますか?
221:デフォルトの名無しさん
07/07/01 22:32:56
>>220
public class StringList extends ArrayList<String> {}
とかすれば出来る(?)けど、何にも意味がないような
222:デフォルトの名無しさん
07/07/01 22:38:17
コンストラクタも定義する必要がありそうな
223:デフォルトの名無しさん
07/07/01 22:38:51
>>220
Javaにはない
224:デフォルトの名無しさん
07/07/01 22:43:02
>>208
URLリンク(launch4j.sourceforge.net)
225:デフォルトの名無しさん
07/07/01 23:11:45
というかエイリアス使えるようにしたらC++みたいにタイプ数減らすためだけに
エイリアスを乱定義して可読性が落ちるからやめてほしいなぁ。
226:デフォルトの名無しさん
07/07/02 06:35:51
Javaの入門書、何を買うべきか迷っています。アドバイスをお願いします。
私の今のレベルは、Cが「少しは」できる感じです。
(配列・構造体・ポインタなど、基礎的な部分は分かる。
コンパイラの挙動やプリプロセッサに関してもある程度分かる。
作ったことがあるプログラムは、一つあたり1000行(.cファイル二つ、.hファイル一つ)程度)
個人的には、『独習Java』か『やさしいJava』かなあ、と思っていますが、どちらか決め難い。
他にもお勧めがあれば教えてください。
227:デフォルトの名無しさん
07/07/02 06:38:14
Javaとか言語にこだわらずに
オブジェクト指向の勉強もした方がいいよ
228:デフォルトの名無しさん
07/07/02 06:49:48
boolean[]の[]の中ってint型しか入らないんでしょうか?
long型では無理?
229:デフォルトの名無しさん
07/07/02 07:14:56
>>226
やさしいJavaはこのスレでもよく話題(笑)にあがるが、少なくともCをかじった人には糞本でしかない
独習Javaがいいと思う
>>228
無理
intの上限以上の配列を確保するってメモリどうなるかは考えた上で設計した方がいい
230:デフォルトの名無しさん
07/07/02 07:22:13
うーんそうなると代用とか利きますか?
どうしてもintの上限以上の配列を確保したいんですが・・・
231:デフォルトの名無しさん
07/07/02 07:23:43
>一つあたり1000行
って言われても全く規模が分からんな・・・未だにこんな言い方してる奴がいるのか。
悪いことは言わんからやさしいjavaはやめとけ。
他の糞本を読んだことないから他にどれが地雷かは分からんが
よほどのものでない限り普通に読めるはず。
後は何がしたいかによってそのジャンルの参考書もいるけど
javaの場合標準ライブラリが多くをカバーしてるんでjava+JAXP等
java開発者向けに標準ライブラリを使った専門分野な本も多くある。
これは外部ライブラリを学習するよりとっつき易さがあるので入門時にはそういう本もおすすめ。
あと、SwingはAWT覚えてから手を出した方が良い。
SwingとAWTは別ライブラリで作法が違うけどSwingはAWT上に構築されてるからSwing中で
(Swingが充実して最近減ったが)AWTのやり方が必要になってくることがあるが両方知ってないと混乱することがある。
232:デフォルトの名無しさん
07/07/02 07:29:45
>>230
intの上限を超えて配列は確保できない
そもそも上限を超えた配列を確保できてもライブラリを含め、使うことができない
配列ではない方法で同じデータ構造を持つ方法なんて幾らでもあるだろ
手っ取り早いのはlongをとって、全bitに対してフラグとして扱うとかな
分割して使うことができないとも考えられないし、一体何がしたいの?
233:デフォルトの名無しさん
07/07/02 07:32:14
>>231
1000ステップ程度ならば、規模を表すにはいいんじゃね?
自分はmainだけで収まるような簡単なサンプルが〜100ステップ程度
いくつかの関数にわけてロジックを組み立てるというところで500〜1000ステップ程度と感じている
個人差もあるし大雑把だけどねw
234:デフォルトの名無しさん
07/07/02 07:34:01
!seisu[n]
の!はどういう意味ですか?
235:デフォルトの名無しさん
07/07/02 07:34:41
>>230
boolean の情報量しかないんなら、
int の配列にして、その 32 ビットの 1 つ 1 つを boolean と見なせばいい。
236:デフォルトの名無しさん
07/07/02 07:35:44
あ、性格には
if(!seisu[n]){
ですね
237:デフォルトの名無しさん
07/07/02 07:36:35
>>230
現実的にはプリミティブな要素型を持つ配列を生成するケースは少ないので
だいたいの場合はint以上の長さの配列を確保するとすぐにメモリなくなる。
この場合、longを長さに取るコンテナを自作してメモリではなくディスクから読み書きして
必要な分だけメモリに置くクラスを作るのとかする。
マージソート自力で実装する程度のことが出来るならできるんじゃね?
というか配列の要素数は初期化時にint未満の型使ってもワイドニング変換でintになってるからな。
238:デフォルトの名無しさん
07/07/02 07:38:32
>>233>>235
つまり、long型の変数を宣言して、その各ビットを、0か1かによって、フラグとして代用するってことでしょうか?
3ビット目が1の場合、booiean[3]=true ってことですか?
239:訂正
07/07/02 07:40:15
つまり、long型の変数を宣言して、その各桁を、0か1かによって、フラグとして代用するってことでしょうか?
100の位が1の場合、booiean[3]=true ってことですか?
240:デフォルトの名無しさん
07/07/02 07:42:15
>>238 そんな感じ。
241:やってみます
07/07/02 07:43:24
ありがとうございました
242:デフォルトの名無しさん
07/07/02 07:44:40
>>233
細かい突っ込みだがCだと無意味な行が多いからステップ=LOCとは限らんような・・・。
テトリスくらいのをちゃんと関数分けてコメント書いてたら1000行くらいかな?
243:すいません・・・
07/07/02 07:47:11
if(!seisu[n]){
の!はどういう意味ですか?
244:デフォルトの名無しさん
07/07/02 07:51:19
条件反転
245:すいません・・・
07/07/02 07:53:16
!a=1のとき
の場合は
a=1以外のとき
ってことですか
でも>>243の場合はどういう意味になるのか分からないんです画・・・
246:デフォルトの名無しさん
07/07/02 07:57:09
seisu[n] が boolean 型で、その真偽を反転
247:すいません・・・
07/07/02 07:57:59
ありがとうございました
248:デフォルトの名無しさん
07/07/02 08:00:48
boolean a = seisu[n];
if(!a)...
こういうこと
249:デフォルトの名無しさん
07/07/02 08:01:03
「new」って調べたら
「new演算子: クラスのインスタンスを生成します 」
って出てきたんですがいまいち意味が・・・
250:デフォルトの名無しさん
07/07/02 08:07:11
本読め。本。
251:デフォルトの名無しさん
07/07/02 08:13:40
朝っぱらから二つのjavaスレがgdgdだな。
他人に考えさせる前に自分の頭使おうぜ?
252:228です
07/07/02 08:18:47
結局一からやり直すことにしました。
僕がやりたいのは、素数を探し出すプログラムで、例えば
「boolean[]のboolean[9967]=false」
だった場合、
「9967は素数ではない。」
といった感じで、素数であるかないかの表を作っていたわけですが、それだとintの上限以上の
素数を記憶できないってことで、皆さんの助言通りに、
「long型の各ビットをbooleanの真偽の代用にする」ことを目指しております。
で、さっきは分かったように思ったのですが、今考えて見るとやっぱりちょっと分からないところが出てきて・・・
long型の各ビットをbooleanの真偽の代用にする、とのことですが、long型の桁数ってint型の上限より少ないですよね?
ってことは「long型の上限の長さの配列」で代用するって意味だったのかなあっと思ったのですが、
配列の長さはintの上限を超えられないんですよね・・・?
結局、できるだけたくさんの素数であるかないかの表を作るにはどうすればいいんでしょう・・・?
253:デフォルトの名無しさん
07/07/02 08:22:52
普通は boolean に素数かどうかを貯めていくんじゃなくて、
素数を貯めていくんじゃないかな?
254:デフォルトの名無しさん
07/07/02 08:24:27
long は int の2倍のサイズなんだが
255:228です
07/07/02 08:27:23
それは、格納できる数字が2倍なのであって、
「longに格納できる最大の数」の「桁数」では素数表には少なすぎますよね?
256:デフォルトの名無しさん
07/07/02 08:28:07
配列にすればいいだろ?
257:デフォルトの名無しさん
07/07/02 08:28:10
javaってbitの集合扱うライブラリなかったけ?
258:デフォルトの名無しさん
07/07/02 08:30:11
>>252
全部メモリに持ち続ける必要ないでしょ。
区切りでファイルに吐けばlong使う必要ない。
259:デフォルトの名無しさん
07/07/02 08:30:16
BitSet ってのがあるな。
260:228です
07/07/02 08:31:03
その配列ですけど、
例えば
long n[99999999999]
とかはできるんですか?
配列の長さはどうやってもintの上限を超えられないby>>232
と聞いたので・・・
261:デフォルトの名無しさん
07/07/02 08:31:13
そもそも素数かどうか判定した時にメッセージ出力すれば良いんじゃない?
なんでループ分けるの?
262:デフォルトの名無しさん
07/07/02 08:31:18
でも、BitSet だとインデックスが int に収まらないといけないんだよな。
263:228です
07/07/02 08:32:11
>>258
すいません詳しくお願いします
(つまり足りなくなったら他の奴に乗り換えろってこと?)
264:デフォルトの名無しさん
07/07/02 08:35:37
>>260
配列の個数×longのビット数 だけの情報が扱えるじゃん。
265:デフォルトの名無しさん
07/07/02 08:36:52
で、素数表作って何をしたいんだろうか。
素数かどうかの判定でもするの?
266:228です
07/07/02 08:37:30
なるべくたくさんの素数表を作っておく必要があるんです
267:デフォルトの名無しさん
07/07/02 08:37:34
>>237
268:デフォルトの名無しさん
07/07/02 08:38:34
それは「素数かどうかのフラグ」を貯める方式じゃないと不都合があるの?
素数を貯めていくんじゃダメ?
269:デフォルトの名無しさん
07/07/02 08:38:41
>>266
>なるべくたくさんの素数表を作っておく必要があるんです
俺らはそれが何のためかと聞いている。
270:デフォルトの名無しさん
07/07/02 08:41:07
普通は long 型配列にでも素数を貯めていくよね。
prime[0] = 2;
prime[1] = 3;
prime[2] = 5;
prime[3] = 7;
prime[4] = 11;
みたいに。
271:デフォルトの名無しさん
07/07/02 08:50:27
素数の総数がint超えるって話じゃない?
272:デフォルトの名無しさん
07/07/02 08:51:26
ていうかお前らそろそろおなかいっぱいだろ?
273:デフォルトの名無しさん
07/07/02 08:56:37
素数かどうかのフラグで保存してるから
素数の総数が int を越えるとダメになるんじゃないの?
274:デフォルトの名無しさん
07/07/02 08:57:19
ちがうや。
素数の値が int を越えるとダメになる、だ。
275:デフォルトの名無しさん
07/07/02 08:59:16
Mapの実装て保持できるのエントリに上限あったけ?
276:デフォルトの名無しさん
07/07/02 09:06:32
long 配列に素数を貯めていっても、
素数が意外と多いからスペース削減にはならんっぽいな。
ファイルに書き出していけばいいけどもん。
277:デフォルトの名無しさん
07/07/02 09:09:26
そもそも素数かどうかのテーブルに何の意味があるんだ?
そこから間違ってる気がするんだが・・・
278:デフォルトの名無しさん
07/07/02 09:09:42
67,867,967 が 4,000,000 番目の素数か・・・。
279:デフォルトの名無しさん
07/07/02 09:15:41
ていうか素数の数がlong要る整数ってlongで足りるの?
今度はry・・・とか聞きそうな気がしてきた。
280:デフォルトの名無しさん
07/07/02 09:19:55
javaでも無限リストが扱えれば楽なんだけどな。
こういう問題は関数型の方が得意か・・・
281:デフォルトの名無しさん
07/07/02 09:20:04
素数判定の効率は悪いな。 >素数かどうかのテーブル
282:デフォルトの名無しさん
07/07/02 09:23:11
言い方が悪かった。
素数表の作成効率は悪いな。 >素数かどうかのテーブル
283:デフォルトの名無しさん
07/07/02 09:26:03
ん? いや、スペース削減にはなるや。
うん。やっぱり素数を配列に貯めていった方が、
速度的にも容量的にもいいみたいだ。
284:デフォルトの名無しさん
07/07/02 09:27:08
ん? いや、やっぱりスペース削減にはならんや・・・。
ちょっと混乱してきた・・・。
285:デフォルトの名無しさん
07/07/02 09:31:58
boolean * intとlong * intじゃ考えるまでもないぜ!
286:デフォルトの名無しさん
07/07/02 09:34:15
いや、式が何か違う気がするが伝わるはずだ!
287:デフォルトの名無しさん
07/07/02 09:40:28
素数かどうかのテーブルを使えば、
最大バイト数×8 の大きさの素数まで扱える。
素数を貯めていく場合、
最大バイト数/64 個の素数が扱える。
この時の素数の最大値が最大バイト数×8より大きければ
素数を貯めていく方が容量効率がいいことになるんだけど、
圧倒的に足りないから容量効率は悪いっぽ。
288:デフォルトの名無しさん
07/07/02 09:49:14
javaのbooleanって1byteに絶対すき間なく敷き詰めるんだっけ?
配列は飛び飛びなのに。
289:デフォルトの名無しさん
07/07/02 09:51:07
どちらにしろインデックスが int 越えられないんじゃなあ。
290:デフォルトの名無しさん
07/07/02 09:52:06
だから自分で作れとry
291:デフォルトの名無しさん
07/07/02 09:55:14
朝っぱらから3時間も続いてんのかこの流れ
292:デフォルトの名無しさん
07/07/02 10:10:00
所詮mp3も再生できない学術言語だからな
293:デフォルトの名無しさん
07/07/02 10:30:46
出来るだろ。どっからmp3が出てくんだよw
294:デフォルトの名無しさん
07/07/02 13:00:32
時代はOggとかAC3だろ
295:デフォルトの名無しさん
07/07/02 13:10:17
URLリンク(java.sun.com)
296:デフォルトの名無しさん
07/07/02 18:05:58
MD5で暗号化したのをSystem.out.printで表示すると巧く表示されるのですが、
JLabel.setTextで表示すると、後ろから1桁か2桁しか表示されません。
どうすれば全部表示されますか?
297:デフォルトの名無しさん
07/07/02 18:13:19
Java始めて半年の初心者です。
今は秀丸を使っているのですが、
上級者の方は後々「Java専用プログラミングエディタ」みたいなのを使い始めるのでしょうか。
298:デフォルトの名無しさん
07/07/02 18:21:20
>>296
どうやってMD5をかけたか、MD5をかけた後の変数の型、
System.out.print()した方法、setText()した方法をコードで示しましょう。
それから、MD5は暗号ではないです。
299:デフォルトの名無しさん
07/07/02 18:22:03
>>297
さいきんはEclipseを使う人が多いかもしれない。
300:デフォルトの名無しさん
07/07/02 18:23:11
>>296
digestをbyte配列で得てprintの方は順番に配列要素を表示していってるから全部表示されて、
JLabelの方には配列要素を順番に引数としてsetTextでセットしているから、
結局最後の配列要素しかJLabelには現れないというオチだったり。
もしそうなら、setTextはappendTextでないということは分かってないよね?
301:デフォルトの名無しさん
07/07/02 18:26:09
eclipseは別にJava専用プログラミングエディタではないと思うが
>>297
自分が慣れたエディタを使えばええやん
302:デフォルトの名無しさん
07/07/02 18:27:00
javaファイルからJavacsriptって動かせる?
xmlHttpRequest使いたいんだけど。
通信ってURLConnection使うしかない?
303:デフォルトの名無しさん
07/07/02 18:39:23
>>302
rhino
次ページ最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5055日前に更新/271 KB
担当:undef