[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 01/02 08:12 / Filesize : 246 KB / Number-of Response : 963
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

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



1 名前:デフォルトの名無しさん [2008/03/01(土) 18:16:51 ]
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。pc10.2ch.net/hp/

過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
www.wikiroom.com/java/
これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、
wikiからのリンクをおたどりください。

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

前スレッド
【初心者】Java質問・相談スレッド112【大歓迎】
pc11.2ch.net/test/read.cgi/tech/1202467704/

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

次スレは>>980あたりで。

792 名前:デフォルトの名無しさん mailto:sage [2008/03/27(木) 16:57:04 ]
>>791
C++と勘違いしてないか?

793 名前:デフォルトの名無しさん [2008/03/27(木) 17:00:59 ]
>>792
うん。

794 名前:デフォルトの名無しさん mailto:sage [2008/03/27(木) 17:13:52 ]
なんだ釣りか。

795 名前:772 mailto:sage [2008/03/27(木) 22:42:03 ]
>>774
文字列連結でもOKなのは、まったく分かっていませんでした。
さらに、実行時に解決?計算される文字列は、異なるもなのですね。
そもそもinternなんてメソッドがあるなんて知りませんでした。

全く分かっていなかったけど、そのサイトかなり勉強になりました。
理解できればの話ですが。


796 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 01:03:18 ]
フィールド名の先頭を_(アンダーバー)にしているコードを見かけるのですが、
どのような意味でそのようにしているのですか?

797 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 01:18:31 ]
フィールドとそうでないものとを区別するため

798 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 01:22:10 ]
アンダースコアが正しい読み方

799 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 07:58:59 ]
>>798
通じるし、そこは許容範囲だろ。
「Unicode的にはローラインだ」とか、不毛だろ?

800 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 08:27:03 ]
_1つで始まる識別子って、グローバルな空間では全部予約済みなんだよな。
構造体フィールドならいいけど。




801 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 08:28:05 ]
む、そりはC/C++だ。


802 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 08:44:57 ]
Cでコンパイルするとリンカ上の名前が_付になる。のような気がした。

803 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 09:06:25 ]
800は791か。

804 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 11:35:10 ]
変数a b c があるとしてこの中で中央値を求めるにはどういう方法がありますか?
変数は何が入るかわからないという場合です。
if文の練習問題なのですが、答えがのってなくて

805 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 11:41:43 ]
int[] array = new int[]{a, b, c};
Arrays.sort(array);
System.out.println(array[1]);

806 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 11:43:00 ]
>>805
if文使えw

807 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 11:47:12 ]
説明が悪かったです、すみません
例えば a=1 b=2 c=3 なら bが出力 a=2 b=1 c=3 なら aが出力
みたいに何の数値を入れても真ん中の数値が出力するということです。

808 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 11:48:59 ]
いや>>805で合ってるよw
if(a<b){ if(b<c)答=b; else 答=max(a,c); }
else{ if(c<b)答= b; else 答=min(a,c); }

809 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 11:56:18 ]
全然わからないんですが、maxとminはどうすればいいですか?

810 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 12:00:54 ]
maxは渡された引数の大きいほうを、
minは小さいほうを返すだけ。
これくらいは自力で書けないと、将来つらいよ?



811 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 12:08:52 ]
>806
数が増えた時に汎用的に使えるのはソートじゃね?

>809
日常生活にも支障ありそうだなw

812 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 12:15:12 ]
ありがとうございます、しかし多分maxとminはまだ参考書に出てきてないので使わない方法なんだと思います。
あとは自力で考えます、ありがとうございました。

813 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 12:21:46 ]
>>811
if文つかってやれよw

814 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 12:21:53 ]
すみません、勘違いしてたようです。
maxとminは別に何でもいいんですね、引数ってのを使えば楽ってことはわかりました。

815 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 12:25:04 ]
っ Math.min、Math.max

816 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 12:30:10 ]
あ、Math.min Math.max調べたらやっぱりminとmaxじゃないとだめみたいでした。

817 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 12:35:51 ]
min(l,r)は if(l<r)答=l; else 答=r;
max(l,r)は if(l>r)答=l;else 答=r;

818 名前:デフォルトの名無しさん [2008/03/28(金) 15:51:54 ]
>>803
ちげーよ馬鹿。
俺は決してsageたりしない。

819 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 16:04:25 ]
一つ助けてくれ。

JOGLのデモにあるcgGL_vertex_exampleとruntime_ogl_vertex_fragmentがjogl_cg.dllが見つからないって
UnsatisfiedLinkErrorが出るんだけど利用してるjreにjogl_cg.dllは置いてあるんだけど
-Djava.library.path指定しても解決できない、どうすれば良いか分かる人居る?

JOGLのパッケージ以外に何か必要だったりする?

820 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 16:07:32 ]
system32に放り込め。



821 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 18:09:32 ]
>>819
cgのランタイムが必要とかかな・・・?
そのjogl_cg.dllのインポートテーブルを見てみると何かわかるかも

822 名前:デフォルトの名無しさん [2008/03/28(金) 21:03:25 ]
最近Javaを勉強し始めた者です。
当方JavaScriptを今までやっており、ちょっとサブルーチンを使う程度で
あとはとにかくつらつらと書き連ねていくようなプログラムの書き方に慣れてしまいました。
まだJava関係の書籍は買っておらず、様々な入門サイトを見て勉強しているのですが、
いちいちメソッドを呼び出し合ったりメソッド毎に細かく処理を分けたりする、
オブジェクト指向の具体的な使い方やメリット等がいまいち理解できません。
自分で適当にメソッドやクラスを分けたりしてオブジェクト指向をしてる気にはなってみても、
「こんなんで良いのだろうか?」と言う感じがしてしまい、
色んな処理を同じメソッドに詰め込んでしまいがちです。
なので、文法の解説ではなくオブジェクト指向の解説をメインにした
参考書があれば買おうと思うのですが、どの書籍が良いのでしょうか?
回答よろしくお願いします。

823 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 21:21:23 ]
>>822
デザパタ

824 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 22:11:01 ]
>>822
結城浩という名前を覚えておくと、困った時に助かるかも

825 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 22:27:08 ]
まあ、片っ端から10冊ぐらい読め。将来を考えたらたいした投資じゃない。

826 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 23:02:24 ]
>>825
必要ない人には必要ないだろ 勝手に将来を妄想するな

>>824にあるけど、結城さんの本は取り組みやすいから、
デザインパターンの入門にしろ、Javaの入門にしろ、1冊目としておすすめ

827 名前:デフォルトの名無しさん [2008/03/28(金) 23:04:19 ]
総称クラスのインスタンスを作成することは出来るでしょうか?

public class TempT <T>{
public T makeT(){
return new T();
}
}
ということをやりたかったのですがコンパイルが通らないようです。
総称クラスの名前だけでもわかれば、
ttp://blog.xole.net/article.php?id=197
で何とかなると思うのですが……。

828 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 23:09:29 ]
>>826
勧められた本だけ読んで結城先生信者ですかwさすがゆとりですな

829 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 23:16:03 ]
>>827
できないんだったかな
public T makeT(Factory<T> factory) { return factory.create(); }
みたいにするのが正攻法なんじゃないの
使うときはTに指定する型ごとにFactory<T>をいちいち実装しないといけないけど

830 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 23:17:25 ]
>>827
ジェネリクスはコンパイル処理。
コンパイル後は、普通のキャストと変数の型に展開されて、情報は残りません。

何がやりたいのか…何かが出来そうで試してるだけなのかな

汎用的に便利なクラスなんてものは、まず作れないと思ったほうが良い。
それをするなら、今の仕組みが便利に判りやすくなるクラスを作りましょう。



831 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 23:22:26 ]
C#だと「引数無しのコンストラクタを持つ」制約が付けられるからあっさり実現できるんだけどね

832 名前:デフォルトの名無しさん mailto:sage [2008/03/28(金) 23:39:55 ]
>>822
>いちいちメソッドを呼び出し合ったりメソッド毎に細かく処理を分けたりする、
>オブジェクト指向の具体的な使い方やメリット等がいまいち理解できません。

オブジェクト指向とか、デザパタとかいう話じゃないだろ。
マーチンファウラーのリファクタリングが指針になるかも。

833 名前:827 mailto:sage [2008/03/29(土) 00:36:28 ]
>>828-830
早速のお返事、有難うございます。
>何かが出来そうで試してるだけなのかな
正直、半分はそんなところです。
getDeclaredFieldsあたりのリフレクションとcommons.beanutils、commons.dbutilsを組み合わせて、ごく簡単なO/Rマッパが作れないかなと思ったんですがね。
……やっぱ素直にHibernateとかS2Daoを使っておいたほうがいいのか。 ・・・でも大げさすぎるんだよなぁw

834 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 09:58:12 ]
newInstance使ってキャストって手もあるが

835 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 10:56:37 ]
いまは
T Class<T>#newInstance()
だからキャスト不要。

例外は捕捉する必要あるけど。




836 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 12:53:04 ]
どっちみちTからは直接取れないけどな

837 名前:827 mailto:sage [2008/03/29(土) 15:26:04 ]
>>835
みたいですね。T.newInstance()って書き方もNGみたいです。
残念ですが諦めましょう。

838 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 15:39:36 ]
こんなのどう?
public class TempT<T>{
 private Class<T> clazz;
 public TempT(T t) {
  clazz = (Class<T>) t.getClass();
 }
 public T create() throws Exception{
  return clazz.newInstance();
 }
}
コンストラクタ引数が無駄でヤな感じ。アイディア求む。

839 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 15:52:46 ]
Class<T>を引数にした方が誤解を招かないんじゃね
それでも格好悪いけど

840 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 15:58:57 ]
インスタンスの生成に関してジェネリクスでやろうって方針が無理
可能なのはキャストがいらねってくらいだよ



841 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 16:41:57 ]
初心者ですみません、質問させてください

変数の型にfloatを使いたいのですが、コンパイル時にエラーが出ます。

精度が落ちている可能性
検出値 double
期待値 float
a=3.6
^

と表示されてます。
本を買って勉強始めたばっかりで、本の通りに書いたと思うのですが、
自力解決出来ません。doubleで書くと上手く行ったのですが、原因が知りたくて。

842 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 16:46:10 ]
3.6f

843 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 16:48:50 ]
3.6 は倍精度浮動小数点の double。a は単精度浮動小数点の float。
代入するには精度を落とさなければならないが、それをコンパイラが勝手にやるとバグの元になる。
3.6 の方も float であると明示的に記述すれば良い。

a=3.6f;

844 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 16:55:19 ]
doubleっていう、「基本があってその倍」な名前のほうが
デフォなのがややこしいな。


845 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 16:57:16 ]
なるほど、ありがとうございます!



846 名前:デフォルトの名無しさん [2008/03/29(土) 19:29:15 ]
質問です。

現在、mainクラスのガベージコレクションを、
多重継承されたインスタンスからコントロールしています。

ただ、Heap領域にアクセスする場合について、
そのコレクションフレームワークからマルチスレッド化させると、
ローカルにremoveしようとしても同期的な排他制御が取れません。
やはりラッパークラスのプリミティブ型は、エレメントのイテレータもhasNext()メソッドもどきで
volatile修飾子のシリアライゼーションをさせるのが絶対条件なのでしょうか。

ちなみに、もしコマンドライン引数によってJava.langのStringBufferまでimportしたとしても、
SetインターフェースのisEmptyメソッドにするとなぜかStackOverflowErrorの例外が発生します。
staticなyield()メソッドを汎用させるため、
throwsで例外ハンドラをコンストラクタなアサーションをしているのですが・・・。

C言語が腐るほど考えたのですが、
バイナリでのファイル操作がなかなかまとまらないため質問した次第ですので、
どうかお答えお願いします。

847 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 19:46:09 ]
「日本語でおk」ってこういうときに使うの?

Javaで多重継承かー。


848 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 19:47:33 ]
C言語腐っちゃったよ〜 どうしよ〜

849 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 20:39:39 ]
Javaっぽい言語のVM実装しているのかねぇw

850 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 20:58:28 ]
バカが何人釣られるか静観してようかと思ったが
コピペに w とか、もう見てらんない。



851 名前:デフォルトの名無しさん [2008/03/29(土) 21:01:24 ]
とりあえず>>846が池沼なのは確定だろ?

852 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 21:02:31 ]
見てらんない = 結局釣られた

853 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 21:04:39 ]
前スレあたりのコピペも知らんて、おまいら春休み参入者か?

854 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 21:08:43 ]
何でこうネタやコピペすら嗅ぎ分けられない恥ずかしい奴多いんだろここ。

855 名前:デフォルトの名無しさん mailto:sage [2008/03/29(土) 21:17:09 ]
>>846とかマジ池沼じゃんw
何この春厨wwwww

856 名前:827 mailto:sage [2008/03/29(土) 22:00:37 ]
>>838
アドバイス有難うございます。確かにヤな感じはするのですが、こうするより仕方ないようですね。

>>839
Class<T>を引数にする、というのは気がつきませんでした。御助言感謝です。

>>840
どーもすいません(苦笑)

857 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 01:06:30 ]
スレに常時へばりついているってのも、どうかと

858 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 04:29:15 ]
悔しそうですね。

859 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 11:03:54 ]
Servlet+JSP+Strutsでアプリケーションを作成しています。

これで出力されたHTMLには余計な空行が出力されます。
(Strutsタグなどの位置により)

なるべくHTMLを小さくしたいので余計な空行やスペースは
削除したいのですが、なにかテクニックはないものでしょうか?

思いつくのはフィルターとか???

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

860 名前:デフォルトの名無しさん [2008/03/30(日) 11:26:37 ]
スーパークラスHogeの拡張クラスHogeA,HogeBが定義してあり
HogeAのカプセル化されたフィールドにα、HogeBのカプセル化されたフィールドにβが定義されてる状態で
Hogeにはアブストラクトのゲッターメソッド、セッターメソッドが定義されています

別のクラスDから
Hoge h = (Hoge)HogeA
or
Hoge h = (Hoge)HogeB

のような形で選択的にHogeを定義しゲッターメソッドから任意のα、βが抽出できるようにしたいのですが
現状うまく行きません

よい方法を教えてください



861 名前:デフォルトの名無しさん [2008/03/30(日) 11:31:09 ]
>>859
私の場合ははフィルターを作ってそこを通してデーターが得られるようにしてます

862 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 11:47:37 ]
>>860
スーパークラスでαとβが宣言されてないからHogeのインスタンスとしている場合にアクセスできないのは当然です。
そのフィールドを使いたい場合はHogeA,HogeBでキャストしてやらなきゃ無理っす。

863 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 11:49:48 ]
>>861
ありがとうございます。
私もfilterでやってみようと思います。

でもその前に、、、、そのフィルターください!orz



864 名前:デフォルトの名無しさん [2008/03/30(日) 11:55:06 ]
>>862
選択的キャストの方法としてどういう方法があるでしょうか

865 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 12:10:32 ]
>>860
Hoge で定義した get/set メソッド宣言と、α、βの型を教えて欲しい。

866 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 12:18:32 ]
>863
数100バイトの差は気にしないほうがいい。
携帯コンテンツとかならば、JSPを工夫するか、Servlet内で全部HTMLを書いて小さくするほうがいいかと。

867 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 12:19:57 ]
>860
HogeにgetParam があったとしたら、
HogeA で getParam からαを取得、HogeBではβを取得
ってのが普通かと。

868 名前:>>862 mailto:sage [2008/03/30(日) 12:29:27 ]
えらい勘違いしてました。
抽象クラスでgetter/setter宣言してたんですね。
その型が抽象クラスのgetter/setterの戻り値の型の子なら大丈夫です。

869 名前:デフォルトの名無しさん [2008/03/30(日) 12:59:04 ]
失礼
うまく行きました
他のことが原因してました

870 名前:デフォルトの名無しさん [2008/03/30(日) 17:51:19 ]
JSON-LIBを使おうと思い、
C:\Tomcat 6.0\lib
にjson-lib-2.2.1-jdk15.jarを入れたのですが、
java.lang.NoClassDefFoundErrorが出てしまいます。
C:\Tomcat 6.0\lib下ではクラスパス通らないのでしょうか?
それともjdk16環境下なのにこのJARを入れたのが失敗でしょうか。



871 名前:デフォルトの名無しさん mailto:sage [2008/03/30(日) 21:04:39 ]
JDK6ならjavascript使えば良いと思うんだが・・・

872 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 01:30:58 ]
png画像の画像処理をしたいのですが質問です.

java.awt.image.PixelGraberのgrabPixels()で各ピクセルの情報を配列に取得し,
java.awt.ColorのgetRed()/getGreen()/getBlue()で各ピクセルのRGB値まではとれました.

ここから取得した配列のRGB値を取得したRGB値を元にして計算し
変更したいのですがどのようにすれば良いのでしょうか?

873 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 01:50:46 ]
どう計算したいのかはお前以外には解らんw

874 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 02:24:02 ]
どう計算するかは分からないけれど、ImageIO.readでpngをBufferedImageとして読み込んだ方がいろいろ変更の自由がきくよ。

875 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 02:24:57 ]
あ,計算の話ではなくて

計算後にでた新しいRGB値をつかってpngを作り直したいんです.
日本語が変ですいません.

876 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 08:54:59 ]
普通にやりたいことを言えよw
例えば元画像をグレースケールにしたいとかさ

877 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 10:17:07 ]
単純に SSLSocketFactory から SSLSocket 作った場合ってどこの CA 証明書が使われてんの?
コントロールパネルの Java 設定にリストされているやつ?

878 名前:デフォルトの名無しさん [2008/03/31(月) 11:41:55 ]
>>158
肉で出来ています。

879 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 12:18:00 ]
JNDIを使用『しないで』DataSourceを生成する方法を教えてください。
組み込みでH2 Databseを使おうと思ったのですが、アプリケーションサーバのJNDIを使って生成する方法しか検索できませんでした。
一応、↓でなんとか生成できたのですが、本当にこの為だけにCommons DBCPやCommons Poolを使わないとならないのでしょうか?
ttp://wiki.livedoor.jp/syo1976/d/Derby

880 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 12:26:10 ]
JNDI 使わないってスタンドアロンで使うのか? なら接続しっぱなしにしときゃ良いじゃん。



881 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 12:36:20 ]
>>879
"Using mock naming contexts for testing"
ttp://weblogs.java.net/blog/simongbrown/archive/2003/11/using_mock_nami.html

JNDI依存のロジックをコンテナ外でテストするためのテクニックだけど、
流用できると思う。

882 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 12:54:34 ]
超初心者です。入力した整数値を読み込んで、小さいほうの数以上で大きいほうの数以下の全整数を小さいほうから順に
表示するプログラムを作りたいんですが、最後の整数が表示出来ません。アドバイスもらえませんか?作ったコードは下です。

System.out.print("整数1:");
int n = stdIn.nextInt();
System.out.print("整数2:");
int x = stdIn.nextInt();

do {
 if(n >= x)
  System.out.print(x++);
 else if(n <= x)
  System.out.print(n++);

  } while (n != x);
 }
}

883 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 13:01:39 ]
素直にforでいいんじゃね?
for(int i = n; i <= x; i++){
 System.out.println(i);
}
それとも何かの課題?

884 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 13:07:56 ]
System.out.print("整数1:");
int n = stdIn.nextInt();
System.out.print("整数2:");
int x = stdIn.nextInt();

do {
 if(n >= x)
  System.out.print(x++);
 else if(n <= x)
  System.out.print(n++);
  } while (n != x);
  System.out.print(n); //これを追加
 }
}
にするとか

明解javaの演習問題だね

885 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 13:09:22 ]
>>883
for使うと簡単そうなんですが、練習問題を最初からやっていってる最中で
今はifとdoとwhile文のところなんで、一つずつ確実に使い方を覚えるためにもこれらの構文を使ってやりたいのです。

886 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 13:11:47 ]
>>884
おぉ、出来ました!そうです、明解Javaをやってるんです。
この参考書答えがないので、超初心者な自分にはきついです。

887 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 13:12:39 ]
>>884はifの条件式も変えないと駄目だわ

888 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 13:15:42 ]
>>887
(n > x)と(n < x)でいいですかね?

889 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 13:17:31 ]
おk

890 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 13:19:57 ]
>>889
ありがとうございます、ずっと考えていたのがやっと解決して先に進めます。



891 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 13:20:13 ]
ループの前にどちらが大きいかを判断して,
大きい方と小さい方それぞれ別の変数に入れといた方が綺麗に書けるよ

892 名前:デフォルトの名無しさん mailto:sage [2008/03/31(月) 13:20:16 ]
ゆとりは不等号を習わないんだって
おそるべしゆとり






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<246KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef