1read 100read
2012年1月2期プログラム12: ★★Java質問・相談スレッド151★★ (392) TOP カテ一覧 スレ一覧 2ch元 削除依頼
・ 次のスレ
13: 【GPGPU】くだすれCUDAスレ part5【NVIDIA】 (375)
14: Androidプログラミング質問スレ Part17 (641)
15: C#, C♯, C#相談室 Part69 (995)
16: WinRTスレ (Metro, .NET Core, C++/CX) (877)

★★Java質問・相談スレッド151★★


1 :12/01/15 〜 最終レス :12/01/27
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    http://pc11.2ch.net/hp/
Webプログラミング http://pc11.2ch.net/php/
をご利用下さい。
よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 (p)ttp://www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」
前スレッド
★★Java質問・相談スレッド150★★
http://toro.2ch.net/test/read.cgi/tech/1324704285/

2 :
**** 関連スレッド案内 ****
■ AWT と Swing は --
Java低速GUI Swing & JavaFX 10
http://toro.2ch.net/test/read.cgi/tech/1316592884/
■ SWT は --
Java 高速GUI SWT 3
http://hibari.2ch.net/test/read.cgi/tech/1164877399/
■ NTT DoCoMo の iモード携帯電話用 Java (iアプリ) は --
iモード携帯電話用Java(iアプリ) Part22
http://hibari.2ch.net/test/read.cgi/tech/1295766416/
■ DoCoMo 以外は --
CLDC+MIDP+携帯電話用Javaスレッド part 9
http://hibari.2ch.net/test/read.cgi/tech/1249357352/
■ Androidアプリの作成は --
Androidプログラミング質問スレ Part16
http://toro.2ch.net/test/read.cgi/tech/1324191723/
■ 課題・宿題は --
★★ Java の宿題ここで答えます Part 71 ★★
http://hibari.2ch.net/test/read.cgi/tech/1309076891/

3 :
■ NetBeansに関する雑談は --
NetBeans Part6
http://hibari.2ch.net/test/read.cgi/tech/1273665879/
■ Eclipseに関する雑談は --
Eclipse統合M32【Java/C++/Ruby/Python/Perl】
http://toro.2ch.net/test/read.cgi/tech/1320318310/
**** 開発環境、実行環境は ****
■ Java SE Downloads
http://www.oracle.com/technetwork/java/javase/downloads/index.html

4 :
民主党が惨敗した参院選直前の政党支持率(2010年7月11日投票)
FNN 2010年7月4日
民主党 29.9% 自民党 16.3%
ttp://sankei.jp.msn.com/politics/policy/100706/plc1007060530003-n1.htm
ttp://www.fnn-news.com/archives/yoron/inquiry100705.html
マスコミに、ダマされるなよ。

5 :
自民ステマ乙

6 :
■■Javaスレでのお約束■■
このスレには共産主義者のホロン部でかつJavaに対するアンチ活動をしている荒らしが
延々とJavaとはまったく関係ない話題で
「自民党は在日が指示している公明党とつるんでいるから民主党が政権とるよりも在日に有利になるはずニダ!」
などとデマを吹聴したプロパガンダを繰り返しています。彼は論理的思考力がないのでスルーしてください。

7 :
ちょつ
くそレススルー推奨

8 :
ステマ工作員乙

9 :
すてますてまうっせーよ

10 :
「ステマ工作員」って何ですか?

11 :
>>10
>>6みたいなカスだよ

12 :
>深淵をのぞく時、深淵もまたこちらをのぞいているのだ
byteの配列の中身が、
68 6F 67 65 66 6F 6F 70 69 79 6F 00 00 00 00 00
(hogefoopiyo.....)
のような感じでヌル文字で終端されたアスキー(かutf-8)文字が入ってるのだけど、
どうすれば簡単に文字列部分だけ取れるかな?
とりあえず、以下のようにしてみた。批評をお願いしたい。
// stringに文字列が入っている。
// ストリームから流れてきたものをbyte配列に入れて、toStringしたもの。
char delimiter = 0;
String stringDelimiter = (new Character(delimiter)).toString();
String[] stringArray = string.split(stringDelimiter);
string = stringArray[0]; // 内容更新

13 :
ケツについたU+0000を落とすだけでいいなら
String str = new String(new byte[]{ 0x68, 0x6F, 0x67, 0x65, 0x66, 0x6F, 0x6F, 0x70, 0x69, 0x79, 0x6F, 0x00, 0x00, 0x00, 0x00, 0x00 }, "UTF-8");
str = str.replace("\0", "");

14 :
>>13
ありがとー!
すごくわかりやすいキレイなコード。
javaも\0でヌル文字なのか。\0以外もあったので、
str = str.replaceFirst("\0.*", "");
で行きました。

15 :
subclipse使ってみている。
ウィンドウ>設定>チーム>SVN>無視するリソース
を参照すると、
*.class
がないのだけれども、.classの除外をしてくれている。(助かってる。)
Javaは特別ってことなのかな?
あと、
ウィンドウ>設定>チーム>SVN>ファイル・コンテンツ
を見ると、結構な数のファイル種が、ASCII扱いになっている。
これを全てバイナリにするのが果てしなく面倒なのだけど、一括で出来ないかな?
(まぁ、使うのだけ変更するならすぐなんだけど。)
eclipseスレに行った方がいいかな?ここだとスレ汚しかな?

16 :
民主党が惨敗した参院選直前の政党支持率(2010年7月11日投票)
FNN 2010年7月4日
民主党 29.9% 自民党 16.3%
ttp://sankei.jp.msn.com/politics/policy/100706/plc1007060530003-n1.htm
ttp://www.fnn-news.com/archives/yoron/inquiry100705.html
マスコミに、ダマされるなよ。

17 :
エディタなどで、
半角スペースを大括弧が90度傾いたような記号で表すことが可能なものがありますが、
JavaのSystem.out.printlnでそれを出力したい場合は、charの定数でいくつを指定すればよいのでしょうか?

18 :
>>17
U+2423かU+2420あたりおすすめ。
フォントにあればだけど

19 :
class A{
 private int hoge;
 public A(int foo){ hoge = foo; }
}
class B{
 private int hoge;
 private B(int foo){hoge = foo;}
 public static B createB(int foo){ return new B(foo); }
}
public class StaticClassTest01 {
 A a = new A(1);
 B b = B.createB(1);
}
Aの様な型と、Bの様な型と、どのように使い分ければよいのでしょうか?

20 :
気分で

21 :
C#を先に学んでますがJavaはやっぱ難しい

22 :
馬鹿には無理

23 :
>>19
A:自由に継承してくれたまえ。
B:勝手に継承すんじゃねーよ。

24 :
>>22
>深淵をのぞく時、深淵もまたこちらをのぞいているのだ

25 :
こわぁい

26 :
>>23
理解できました。
わかりやすい説明ありがとうございます。
もんもんとしていたものがスッキリしました。

27 :
>>19
静的ファクトリメソッドを作ると、あきらかに一手間かかるが
コンストラクタにはメソッドのように自由な名前が付けられない。
単に言い換えただけかもしれないが
引数をほぼそのままフィールドに納めてオブジェクトを作るのではなく
何らかの処理を行ってその結果からオブジェクトを作る場合は
ロジックを分離した方がいいかもしれない。

28 :
>コンストラクタにはメソッドのように自由な名前が付けられない。
確かに…。おぉ…。
>何らかの処理を行ってその結果からオブジェクトを作る場合は
ちょっと難しいです。もう少しやわらかく出来ますか?申し訳ない。
コンストラクタが複数ある場合は、内部にprivate staticなロジック関数に分離することができると思いますが、それとは違った趣向でしょうか?
class C {
 static class I {}
 public C() {}
 public C(I i) {}
}
class D extends C {
 public D() { super(); }
 public D(I i) { super(i); }
}
public class StaticClassTest01 {
 C.I i1 = new C.I();
 C c1 = new C();
 C c2 = new C(i1);
 D.I i2 = new D.I(); // 「D.」とした時のeclipseのプロポーザルが空っぽ。
}
こちらは、プロポーザルが出ないのですが、使い方がマズイということでしょうか?
「C.I」とするべき?

29 :
C#でいうttp://dobon.net/vb/dotnet/graphics/pictureboximage.htmlのPictureBox.ImageにあるメンバStretchImageやZoomを
Java+Swingで画像を表示したときにしたいのですが
Javaにはこういうのは用意されてないのですか?

30 :
>>28
後半は、後から別のロジックにてオブジェクトを作るようなものを追加するときに
リファクタリングなしでコンストラクタを使うことに固執すると
衝突するまたは分けが分からなくなる
などというのが、ごっちゃになって飛躍したものなので無視してください

31 :
日本語でおか

32 :
>>27,30
あ!何か言いたいことの断片が見えた気がします。
私のレベルじゃないので、おっしゃるとおり、今は置いておきます。
レベルが上がったら考えなおしてみます。
ありがとうございます。

33 :
>>11
いやいや、>>11みたいな野郎のことだよ

34 :
ここやっぱり初心者の質問は相手にされませんよね

35 :
オンラインでコード実行できる ideone.com の使い方なんですが、
コマンドライン引数の渡し方ってどうやればいいんでしょう?
http://ideone.com/FT2jG
に↓みたいなのを貼ってます。
public class Main {
  
  public static void main(String[] args) {
    
    System.out.println( "args number:" + args.length );
    
    for (int i=0; i<args.length; i++) {
      System.out.println( " + args:" + args[i] );
    }
  }
}
ここで upload with new input からWebのテキストフィールドにに値を入れてsubmitを押したんですが、
args.length が 0 なので、プログラム側に値が渡ってくれないみたいで・・

36 :
>>32
同じ型、同じ数の引数持つコンストラクタを定義することはできないから
そういうときに静的ファクトリメソッド(クラスBのような構造)を使うことがある。
java.awt.Colorクラスを例にすると、色をfloat型3つのRGBで指定するコンストラクタとは別に
float型3つのHSBで指定する静的ファクトリメソッドが用意されている。

37 :
宿題答えますスレに投稿してみたけど、Java詰みそうで辛い・・・。
単位取れるかもと、生半可な考えで挑むんじゃなかった・・・。

38 :
宿題スレを見る度に思うのが、数学的な設問が難しくて俺には拒絶反応が起こす。
でもJavaの部分は凄いショボそうなんだよなww

39 :
>>38
>でもJavaの部分は凄いショボそうなんだよなw
学校の宿題なんだから、入門かその次のステップだからな。
数学的内容も、きちんと説明されていれば初めて知る内容でも対応できる程度なんだろうけど、
質問してる方が理解してないことがザラだものね。

40 :
民主党には朝鮮人など外国人のなりすまし、スパイが約90名在籍している
野田内閣は過半数が帰化人
野田はどうだろうか
韓国人から賄賂を貰い、韓国人の集いに出席している野田は
首になった蓮○はで逮捕歴のある人間と仲が良いな。蓮○自身はやってんの?
い-6-1
テレビが言えない民主党のスポンサー=韓国北朝鮮
あとはもうわかるよな

41 :
>>ここやっぱり初心者の質問は相手にされませんよね
問題ないよ。
何も知らないとどのように調べるとよいかもわからないから遠慮なく訊けばいい。

42 :
CUIでプログラム作っていて、ある程度形になってきました。
そこで、GUIで操作・表示できるように修正したいのですが、
JavaのGUIについて参考になるサイトなどありましたら教えて下さい。

43 :
>>2のスレで聞け

44 :
短く乱暴ながらも垣間見える優しさ

45 :
packageで
package aaa.bbb.cccというクラスファイルを
実ディレクトリ
aaa┐
  bbb┐
    ccc - file01.java
このディレクトリ構造で
aaa直下やbbb直下に別のjavaファイルをぶち込んで利用ってできるんですか?
packeage表記はaaaやaaa.bbbと書くとして。

46 :
いちおうできる。
publicかprotectedじゃないと他のパッケージからは見えないけどね。

47 :
パッケージ同士の階層構造とか、大して実行時の意味はない。
好きなようにどうぞ。
意味がありそうなのは名前付きロガーの親子関係ぐらいか。

48 :
class A{
public static void main(String[] args){
new B obj = new B();
}
}
class B{
}
class C{
}
こういう構成になっていく場合
メインメソッドがあるクラス(メインクラス?)を一番上に書くのか
利用するクラスを先に書いて、最後にメインメソッドがあるクラス。この場合ではclass Aを書くのか
どちらがメジャーですか?

49 :
>>40
荒すなカス

50 :
>>37-39
何、レポート提出一日前になって2chとかで質問ってか?
効率悪いよ。
質問するならもっと前もって言わないと時間がないぜ。
たまに一日前になって「大至急!」とか言って質問してくる学生がいる。
Javaの宿題は、いつもJavaの特性をとくに生かしたものとは限らないものが多いのが特徴だな。
Javaの文法さえ知っていれば解けるってものでもない宿題が多い。
その宿題を出した教官がJavaで出せばC言語よりも学生が無駄な混乱や労力を支払わなくてもいいだろうと
配慮したのだと思うが。もしくは、その教官がJavaの特性を理解していない可能性が。
オブジェクト指向=ひたすらクラスを継承すればいい、と誤解している教官も未だにいるからな。
10年経っても歴史は繰り返す。

51 :
>>47
好きにどうぞといっても、
ディレクトリ構造とパッケージ構想が一致しない構成を作ってる
奴と一緒に仕事をしたくはないしそんなソースコード読みたくもない。
パッケージ管理がいい加減なコーダーはプログラミングスタイルもいい加減だから。
Javaコーディング規約も守っていない。Checkstyleくらい使えればそいつを見なおしてもいい。
だからあんまし、好きにどうぞと吹聴されても困る

52 :
>>48
何が一般的とかない。
其場其場次第。
一行二行程度のクラスを一番上に置いて、本体クラスをその次におくとみやすいかもしれない。
だがどのクラスも長くなったら、匿名クラスや内部クラスでもない限り、
一つにjavaソースファイルに複数のクラスを無理して置かなくても良い。
長ったらしいクラスは、それぞれクラス名.javaという別ファイルにしたほうが読みやすい。
例としてA.java, B.java, C.javaというファイルを作ってその各クラスのコードを各ファイルに記述する。
もしその各クラスを長期的に、拡張してゆく可能性があるなら、別ファイルすべし。
ただの使い捨てクラスならそのように同じファイルに複数のクラスを置いてもよし。

53 :
長文乙

54 :

ステルスマーケティングまとめ
A http://www.dotup.org/uploda/www.dotup.org2522270.png
B http://www.dotup.org/uploda/www.dotup.org2522750.png
 →  ステマの黒幕は ソニー(アニプレックス)、角川
関連キーワード はちま 清水鉄平(はちまの本名) KND 元ソニー会長出井伸之
        はちま管理人によるみかじめ料を払わない特定メーカーへの叩き
        まとめサイトは企業が運営 コメント欄も社員の煽り(が殆ど)
おまけ
2ch監視が仕事のスクウェア社員w↓
96 名前:番組の途中ですがアフィサイトへの転載は禁止です[sage] 投稿日:2012/01/16(月) 12:41:25.60 ID:X9dFbc830
proxy1.square-enix.co.jp - 2012/01/16 12:38:51 - Japan - Commercial(企業)
IP :61.195.58.8 (不明)
Referer :http://ipatukouta.altervista.org/php5/
USER-AGENT :Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.0.04506.30; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)


【株式会社KND・清水鉄平】はちま起稿が特定され黒い関係が明らかに★78【黒幕を特定せよ】
http://awabi.2ch.net/test/read.cgi/poverty/1326691256/

55 :
>>50-52
小汚いお前のプログラミングスタイルなんか押しつけなくていい

56 :
System.out.println((byte)((byte)-128 >>> 3));
出力結果:-16
-128は10000000だから00010000で16になるんじゃないの?
なんで最上位ビットが1のままなのか?

57 :
たぶんキャストの時に符号がついてきてる?
どうすれば10000000を0埋めで右シフトできるのか?

58 :
>>56
(byte)(FFFFFF80 >>> 3) ==> (byte)0xF0
二項数値昇格でぐぐれ。

59 :
>>58
シフト演算は単項数値昇格だな。この場合に限って言えば結果は同じだが。

60 :
http://www.javaroad.jp/java_operator4.htm
>char型、byte型、short型のデータは算術演算を行う時、int型に変換されて演算が行われます。
>その特性のため、シフト演算の結果、想定していたものとは異なる値が生成される場合があります。
>シフト演算においてはint型、データ容量が多い場合はlong型を使うようにします。

61 :
メソッドの中で変数を宣言する時にstatic宣言できない(”型の開始が不正です”となる)のは、なぜでしょう。

62 :
>>54
昔から見えないところ表面化しないところでソニーはそういう姑息なことをやってるよ
例えばソニーの電気市場向けの商品なら、ソニータイマーは知ってるだろ?
今までソニーが騙し騙しでやってきたそういったことを知ってる人の間ではソニーはかなりは嫌われてるよ(というかソニーは業界から八分にされてる)

63 :
>>61
局所変数宣言には public, protected, private, static の4つの修飾子はつけられないと言語仕様で決まってる。

64 :
org.apache.commons.net.ftp.FTP
を使ってファイルをftpでアップロードしています。
アップロード中の進捗状況をプログレスバーで表示したいのですが、
進捗状況の取得はどうすれば良いでしょうか。

65 :
A.jar B.jarの2つのjarの中にシングルトンのクラスSがあったとして、
AとBを使うアプリを作ったら、SはAとBそれぞれで1つのインスタンスが作られるの?
それとも、パッケージとクラス名から同じクラスと判定されてアプリ全体で1つしか作られないの?
パッケージとクラス名が同じでも内容が違っていた場合はどちらが使われるの?

66 :
>>55
お前のほうがもっと小汚い
頭も体も

67 :
そうカリカリするなよ禿げ

68 :
>>64
http://stackoverflow.com/questions/5875837/monitoring-progress-using-apache-commons-ftpclient
これによると、Commons IOのCountingOutputStream#getCount()を使えば実現できるらしい
Commons FileUploadにはさらにこんなクラスもある。
MultipartStream.ProgressNotifier
http://commons.apache.org/fileupload/apidocs/org/apache/commons/fileupload/MultipartStream.ProgressNotifier.html
ProgresLisner
http://commons.apache.org/fileupload/apidocs/org/apache/commons/fileupload/ProgressListener.html

69 :
>>67
お前が禿じゃ

70 :
>>68
お!解決の糸口が見えてきた気がする。
リンク先みて勉強してみます。
ありがとー!

71 :
禿禿言うな
リアル登頂禿には笑えない
Hogeにすら過敏に反応するんだから

72 :
>>61
finalなローカル変数があれば十分だからじゃない?

73 :
2012/01/16(月)の日付など、フォーマットを解析するときに1.4から正規表現が導入されたので楽になったと思いますが、1.3以前ではどうやっていたのでしょうか?
日付や範囲などのparseはjava.text.Format をかなり駆使すれば通常では問題なかったと思いますが、それでもjava.textでは正規表現なみに細かいところまでカスタムするのは無理だったのでしょうか。
それとも1.1以前(java applet formからの入力で使うことが多いと思うので)で利用できるような他のライブラリか何かがあったのでしょうか。

74 :
jakarta oroみたいな外部の正規表現ライブラリ使ったり、scanfっぽいのを自作したり。

75 :
>>71
では、ヴァルドスポットではどうだ
Bald spot

76 :
>>73
java.util.Date
とか
java.util.GregorianCalendar
とか
1.3のときでもjava.text.SimpleDateFormat普通に使ってたよ
で、なぜそんなことを聞きに?
1.3以前の環境しかつかえない仕事してんの?

77 :
>>74
apacheのoro,regexpはもう終了しちゃったんじゃなかった?

78 :
java appletが普及しなかった理由は、javaは敷居が高すぎるというか、例えばappletとhtmlとの連携なら、実はこういうところに問題があるのに詰めが甘いままjava appletを先走ってリリースしちゃったことにあるんじゃないかなぁと思いまして

79 :
>>76
java.text.Formatは、parseよりもformatがメインなのでclass Formatでは「ユーザー入力の確認処理(parse)」目的で使うなら役不足でしょうね

80 :
役不足ならFormat使えば良いんじゃね?

81 :
はぁ?

82 :
つ 辞書

83 :
concurrenthashmapの性能(特にメモリ使用量)についての記事があったら教えて下さい

84 :
Javaのコーディング規約ってどこまで厳守してる?
俺は1行の文字数は150くらいまでならOKかなーって考えているけど。

85 :
javaでゲームを作る参考書を買って
その参考書で学んだソースコードをもとに
色んなサイトのソースコードと合わせて勉強してるんだけど
こんな勉強のやり方でいいでしょうか?
その参考書の名前ってここで出していいでしょうか?
その参考書はいいとか悪いとか聞きたいんですが。

86 :
参考書といっても初心者・初級者向けなのはどれも似たり寄ったりなので差はまったくありません
本の善し悪しを気にするよりも、今後Javaで教科書がない分野でも貪欲に参加していけるかどうか独学でスキルを得られるかを気にした方がいいでしょうね

87 :
スレッドからスレッド作っていいもん?
一応、期待通りに動いてるけど、あまり良くないものなのかな?

88 :
スレッドじゃない何処でしようとしているんだろう?

89 :
むしろスレッド上で走ってないプログラムなどない。。。。。。。。。。。。

90 :
すまんね、基礎知識無いもんで質問の仕方もわからんw
要するに、メインスレッドからスレッド作って、更にそこからスレッド作って・・・
それで期待通り動くけど、
出来るだけスレッドを入れ子にしなくて済む様なプログラミングした方が良いのかなって事。

91 :
スレッドを入れ子にしなくて済む様なプログラミングって具体的にどういうことをやるの?

92 :
おそらく、スレッド生成するメソッドは、ただ一つのスレッドからしか
呼ばないようにするってことを言いたいんだと思う

93 :
誰が親で子で、誰が子を最後まで養う責任を負うのかを考えれば,
入れ子にするのが必然であればそれでいいし,
無計画に子ども産んで破産するような感じにはならないと思うよ☆彡

94 :
スレッドを出来るだけ入れ子にしない方が良いのかなって思ったのはどうしてですか?

95 :
例えば、interface Foo に boolean init()を宣言しておいて、
interface Hoge implements Foo
interface Piyo implements Foo
って出来ないの?
eclipseで書いてたら警告してくれた。警告というかエラー。
共通するファンクションを別途にそれぞれ書かないといけないの?
最終的にimplementsするクラスで忘れずにimplementsしろってことなのかな?
設計が間違ってるの?

96 :
失礼した。
そうか、interface→interfaceだからextendsすればいいのか。

97 :
不思議に思ってて解決できてないのだけど、Javaで、
インタフェースで(finalじゃない)変数を宣言できない(定数しか宣言できない)のと、
構造体が無い、
というのは、どうしてなんだろう?
構造体については、ストリームからのデータの読み込みがとても楽になると思うんだ。
どうして捨ててしまったのかな。
シリアライズ使えば不要だから?パース必要だからかなり遅いんじゃないのかな?

98 :
日記のようにしてしまって申し訳ない、以後、気をつける。
インタフェースの件に関しては、あくまで実体をアクセスするための関門であるから、で理解した。
変数を宣言してしまうと、それは部分的に実体化してしまって、abstractクラスになるんだね。

99 :
あんまりJava詳しくないけど。
リトルエンディアンのマシンでもビックエンディアンのマシンでも実行できる様にするためにはシリアライズって必要じゃないの?

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
・ 次のスレ
13: 【GPGPU】くだすれCUDAスレ part5【NVIDIA】 (375)
14: Androidプログラミング質問スレ Part17 (641)
15: C#, C♯, C#相談室 Part69 (995)
16: WinRTスレ (Metro, .NET Core, C++/CX) (877)