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

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
プログラミング言語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デフォルトの名無しさん:2012/01/15(日) 01:15:26.89
**** 関連スレッド案内 ****
■ 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デフォルトの名無しさん:2012/01/15(日) 01:15:37.74
■ 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デフォルトの名無しさん:2012/01/15(日) 01:20:37.68
民主党が惨敗した参院選直前の政党支持率(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デフォルトの名無しさん:2012/01/15(日) 01:25:09.78
自民ステマ乙
6デフォルトの名無しさん:2012/01/15(日) 03:15:59.59
■■Javaスレでのお約束■■
このスレには共産主義者のホロン部でかつJavaに対するアンチ活動をしている荒らしが
延々とJavaとはまったく関係ない話題で
「自民党は在日が指示している公明党とつるんでいるから民主党が政権とるよりも在日に有利になるはずニダ!」
などとデマを吹聴したプロパガンダを繰り返しています。彼は論理的思考力がないのでスルーしてください。
7デフォルトの名無しさん:2012/01/15(日) 03:16:46.99
ちょつ
くそレススルー推奨
8デフォルトの名無しさん:2012/01/15(日) 03:31:29.25
ステマ工作員乙
9デフォルトの名無しさん:2012/01/15(日) 03:32:45.77
すてますてまうっせーよ
10デフォルトの名無しさん:2012/01/15(日) 03:34:29.23
「ステマ工作員」って何ですか?
11デフォルトの名無しさん:2012/01/15(日) 03:36:46.64
>>10
>>6みたいなカスだよ
12デフォルトの名無しさん:2012/01/15(日) 09:11:12.20
>深淵をのぞく時、深淵もまたこちらをのぞいているのだ

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デフォルトの名無しさん:2012/01/15(日) 09:52:28.79
ケツについた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デフォルトの名無しさん:2012/01/15(日) 10:35:53.02
>>13
ありがとー!
すごくわかりやすいキレイなコード。
javaも\0でヌル文字なのか。\0以外もあったので、
str = str.replaceFirst("\0.*", "");
で行きました。
15デフォルトの名無しさん:2012/01/15(日) 10:54:20.99
subclipse使ってみている。
ウィンドウ>設定>チーム>SVN>無視するリソース
を参照すると、
*.class
がないのだけれども、.classの除外をしてくれている。(助かってる。)
Javaは特別ってことなのかな?

あと、
ウィンドウ>設定>チーム>SVN>ファイル・コンテンツ
を見ると、結構な数のファイル種が、ASCII扱いになっている。
これを全てバイナリにするのが果てしなく面倒なのだけど、一括で出来ないかな?
(まぁ、使うのだけ変更するならすぐなんだけど。)

eclipseスレに行った方がいいかな?ここだとスレ汚しかな?
16デフォルトの名無しさん:2012/01/15(日) 12:29:57.94
民主党が惨敗した参院選直前の政党支持率(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デフォルトの名無しさん:2012/01/15(日) 12:52:07.32
エディタなどで、
半角スペースを大括弧が90度傾いたような記号で表すことが可能なものがありますが、
JavaのSystem.out.printlnでそれを出力したい場合は、charの定数でいくつを指定すればよいのでしょうか?
18デフォルトの名無しさん:2012/01/15(日) 14:41:37.54
>>17
U+2423かU+2420あたりおすすめ。
フォントにあればだけど
19デフォルトの名無しさん:2012/01/15(日) 14:50:54.40
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デフォルトの名無しさん:2012/01/15(日) 14:55:08.57
気分で
21デフォルトの名無しさん:2012/01/15(日) 15:12:06.66
C#を先に学んでますがJavaはやっぱ難しい
22デフォルトの名無しさん:2012/01/15(日) 15:13:42.94
馬鹿には無理
23デフォルトの名無しさん:2012/01/15(日) 15:14:55.37
>>19
A:自由に継承してくれたまえ。
B:勝手に継承すんじゃねーよ。
24デフォルトの名無しさん:2012/01/15(日) 15:27:49.55
>>22
>深淵をのぞく時、深淵もまたこちらをのぞいているのだ
25デフォルトの名無しさん:2012/01/15(日) 15:29:23.40
こわぁい
2619:2012/01/15(日) 15:48:45.88
>>23
理解できました。
わかりやすい説明ありがとうございます。
もんもんとしていたものがスッキリしました。
27デフォルトの名無しさん:2012/01/15(日) 16:01:33.91
>>19
静的ファクトリメソッドを作ると、あきらかに一手間かかるが
コンストラクタにはメソッドのように自由な名前が付けられない。

単に言い換えただけかもしれないが
引数をほぼそのままフィールドに納めてオブジェクトを作るのではなく
何らかの処理を行ってその結果からオブジェクトを作る場合は
ロジックを分離した方がいいかもしれない。
2819:2012/01/15(日) 16:36:20.87
>コンストラクタにはメソッドのように自由な名前が付けられない。
確かに…。おぉ…。
>何らかの処理を行ってその結果からオブジェクトを作る場合は
ちょっと難しいです。もう少しやわらかく出来ますか?申し訳ない。
コンストラクタが複数ある場合は、内部に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デフォルトの名無しさん:2012/01/15(日) 16:46:48.24
C#でいうttp://dobon.net/vb/dotnet/graphics/pictureboximage.htmlのPictureBox.ImageにあるメンバStretchImageやZoomを
Java+Swingで画像を表示したときにしたいのですが
Javaにはこういうのは用意されてないのですか?
3027:2012/01/15(日) 17:14:12.49
>>28
後半は、後から別のロジックにてオブジェクトを作るようなものを追加するときに
リファクタリングなしでコンストラクタを使うことに固執すると
衝突するまたは分けが分からなくなる
などというのが、ごっちゃになって飛躍したものなので無視してください
31デフォルトの名無しさん:2012/01/15(日) 17:35:35.80
日本語でおか
3219:2012/01/15(日) 18:15:27.07
>>27,30
あ!何か言いたいことの断片が見えた気がします。
私のレベルじゃないので、おっしゃるとおり、今は置いておきます。
レベルが上がったら考えなおしてみます。
ありがとうございます。
33デフォルトの名無しさん:2012/01/15(日) 18:58:18.16
>>11
いやいや、>>11みたいなチンカス野郎のことだよ
34デフォルトの名無しさん:2012/01/15(日) 19:20:47.73
ここやっぱり初心者の質問は相手にされませんよね
35デフォルトの名無しさん:2012/01/15(日) 19:30:22.28
オンラインでコード実行できる 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デフォルトの名無しさん:2012/01/15(日) 21:35:36.29
>>32
同じ型、同じ数の引数持つコンストラクタを定義することはできないから
そういうときに静的ファクトリメソッド(クラスBのような構造)を使うことがある。
java.awt.Colorクラスを例にすると、色をfloat型3つのRGBで指定するコンストラクタとは別に
float型3つのHSBで指定する静的ファクトリメソッドが用意されている。
37デフォルトの名無しさん:2012/01/15(日) 22:20:32.54
宿題答えますスレに投稿してみたけど、Java詰みそうで辛い・・・。
単位取れるかもと、生半可な考えで挑むんじゃなかった・・・。
38デフォルトの名無しさん:2012/01/15(日) 22:26:00.32
宿題スレを見る度に思うのが、数学的な設問が難しくて俺には拒絶反応が起こす。
でもJavaの部分は凄いショボそうなんだよなww
39デフォルトの名無しさん:2012/01/15(日) 23:01:23.90
>>38
>でもJavaの部分は凄いショボそうなんだよなw
学校の宿題なんだから、入門かその次のステップだからな。

数学的内容も、きちんと説明されていれば初めて知る内容でも対応できる程度なんだろうけど、
質問してる方が理解してないことがザラだものね。
40デフォルトの名無しさん:2012/01/15(日) 23:54:03.58
民主党には朝鮮人など外国人のなりすまし、スパイが約90名在籍している
野田内閣は過半数が帰化人

野田はどうだろうか
韓国人から賄賂を貰い、韓国人の集いに出席している野田は

首になった蓮○はシャブで逮捕歴のある人間と仲が良いな。蓮○自身はやってんの?
い-6-1
テレビが言えない民主党のスポンサー=韓国北朝鮮
あとはもうわかるよな

4119:2012/01/16(月) 01:01:23.61
>>ここやっぱり初心者の質問は相手にされませんよね
問題ないよ。
何も知らないとどのように調べるとよいかもわからないから遠慮なく訊けばいい。
42デフォルトの名無しさん:2012/01/16(月) 01:54:08.38
CUIでプログラム作っていて、ある程度形になってきました。
そこで、GUIで操作・表示できるように修正したいのですが、
JavaのGUIについて参考になるサイトなどありましたら教えて下さい。
43デフォルトの名無しさん:2012/01/16(月) 02:00:11.19
>>2のスレで聞け
44デフォルトの名無しさん:2012/01/16(月) 02:50:56.88
短く乱暴ながらも垣間見える優しさ
45デフォルトの名無しさん:2012/01/16(月) 11:00:23.71
packageで
package aaa.bbb.cccというクラスファイルを

実ディレクトリ
aaa┐
  bbb┐
    ccc - file01.java

このディレクトリ構造で
aaa直下やbbb直下に別のjavaファイルをぶち込んで利用ってできるんですか?
packeage表記はaaaやaaa.bbbと書くとして。
46デフォルトの名無しさん:2012/01/16(月) 11:09:04.11
いちおうできる。
publicかprotectedじゃないと他のパッケージからは見えないけどね。
47デフォルトの名無しさん:2012/01/16(月) 12:13:04.10
パッケージ同士の階層構造とか、大して実行時の意味はない。
好きなようにどうぞ。

意味がありそうなのは名前付きロガーの親子関係ぐらいか。
48デフォルトの名無しさん:2012/01/16(月) 13:42:49.08
class A{
public static void main(String[] args){
new B obj = new B();
}
}

class B{
}

class C{
}

こういう構成になっていく場合
メインメソッドがあるクラス(メインクラス?)を一番上に書くのか
利用するクラスを先に書いて、最後にメインメソッドがあるクラス。この場合ではclass Aを書くのか

どちらがメジャーですか?


49デフォルトの名無しさん:2012/01/16(月) 13:59:34.85
>>40
荒すなカス
50デフォルトの名無しさん:2012/01/16(月) 14:05:32.11
>>37-39
何、レポート提出一日前になって2chとかで質問ってか?
効率悪いよ。
質問するならもっと前もって言わないと時間がないぜ。
たまに一日前になって「大至急!」とか言って質問してくる学生がいる。

Javaの宿題は、いつもJavaの特性をとくに生かしたものとは限らないものが多いのが特徴だな。
Javaの文法さえ知っていれば解けるってものでもない宿題が多い。
その宿題を出した教官がJavaで出せばC言語よりも学生が無駄な混乱や労力を支払わなくてもいいだろうと
配慮したのだと思うが。もしくは、その教官がJavaの特性を理解していない可能性が。
オブジェクト指向=ひたすらクラスを継承すればいい、と誤解している教官も未だにいるからな。


10年経っても歴史は繰り返す。
51デフォルトの名無しさん:2012/01/16(月) 14:08:50.12
>>47
好きにどうぞといっても、
ディレクトリ構造とパッケージ構想が一致しない構成を作ってる
奴と一緒に仕事をしたくはないしそんなソースコード読みたくもない。
パッケージ管理がいい加減なコーダーはプログラミングスタイルもいい加減だから。
Javaコーディング規約も守っていない。Checkstyleくらい使えればそいつを見なおしてもいい。

だからあんまし、好きにどうぞと吹聴されても困る
52デフォルトの名無しさん:2012/01/16(月) 14:14:54.49
>>48
何が一般的とかない。
其場其場次第。
一行二行程度のクラスを一番上に置いて、本体クラスをその次におくとみやすいかもしれない。

だがどのクラスも長くなったら、匿名クラスや内部クラスでもない限り、
一つにjavaソースファイルに複数のクラスを無理して置かなくても良い。
長ったらしいクラスは、それぞれクラス名.javaという別ファイルにしたほうが読みやすい。
例としてA.java, B.java, C.javaというファイルを作ってその各クラスのコードを各ファイルに記述する。

もしその各クラスを長期的に、拡張してゆく可能性があるなら、別ファイルすべし。
ただの使い捨てクラスならそのように同じファイルに複数のクラスを置いてもよし。
53デフォルトの名無しさん:2012/01/16(月) 14:17:15.97
長文乙
54デフォルトの名無しさん:2012/01/16(月) 14:34:48.23


ステルスマーケティングまとめ
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デフォルトの名無しさん:2012/01/16(月) 14:40:11.32
>>50-52
小汚いお前のプログラミングスタイルなんか押しつけなくていい
56デフォルトの名無しさん:2012/01/16(月) 14:55:55.22
System.out.println((byte)((byte)-128 >>> 3));
出力結果:-16

-128は10000000だから00010000で16になるんじゃないの?
なんで最上位ビットが1のままなのか?
5756:2012/01/16(月) 15:03:17.69
たぶんキャストの時に符号がついてきてる?
どうすれば10000000を0埋めで右シフトできるのか?
58デフォルトの名無しさん:2012/01/16(月) 15:09:24.66
>>56
(byte)(FFFFFF80 >>> 3) ==> (byte)0xF0

二項数値昇格でぐぐれ。
59デフォルトの名無しさん:2012/01/16(月) 15:11:49.44
>>58
シフト演算は単項数値昇格だな。この場合に限って言えば結果は同じだが。
60デフォルトの名無しさん:2012/01/16(月) 15:25:44.10
http://www.javaroad.jp/java_operator4.htm
>char型、byte型、short型のデータは算術演算を行う時、int型に変換されて演算が行われます。
>その特性のため、シフト演算の結果、想定していたものとは異なる値が生成される場合があります。
>シフト演算においてはint型、データ容量が多い場合はlong型を使うようにします。
61デフォルトの名無しさん:2012/01/16(月) 15:35:55.51
メソッドの中で変数を宣言する時にstatic宣言できない(”型の開始が不正です”となる)のは、なぜでしょう。
62デフォルトの名無しさん:2012/01/16(月) 15:40:09.73
>>54
昔から見えないところ表面化しないところでソニーはそういう姑息なことをやってるよ
例えばソニーの電気市場向けの商品なら、ソニータイマーは知ってるだろ?
今までソニーが騙し騙しでやってきたそういったことを知ってる人の間ではソニーはかなりは嫌われてるよ(というかソニーは業界から八分にされてる)
63デフォルトの名無しさん:2012/01/16(月) 15:54:25.24
>>61
局所変数宣言には public, protected, private, static の4つの修飾子はつけられないと言語仕様で決まってる。
64デフォルトの名無しさん:2012/01/16(月) 15:58:36.00
org.apache.commons.net.ftp.FTP
を使ってファイルをftpでアップロードしています。
アップロード中の進捗状況をプログレスバーで表示したいのですが、
進捗状況の取得はどうすれば良いでしょうか。

65デフォルトの名無しさん:2012/01/16(月) 16:13:56.57
A.jar B.jarの2つのjarの中にシングルトンのクラスSがあったとして、
AとBを使うアプリを作ったら、SはAとBそれぞれで1つのインスタンスが作られるの?
それとも、パッケージとクラス名から同じクラスと判定されてアプリ全体で1つしか作られないの?
パッケージとクラス名が同じでも内容が違っていた場合はどちらが使われるの?
66デフォルトの名無しさん:2012/01/16(月) 16:45:55.02
>>55
お前のほうがもっと小汚い
頭も体も
67デフォルトの名無しさん:2012/01/16(月) 16:54:40.27
そうカリカリするなよ禿げ
68デフォルトの名無しさん:2012/01/16(月) 17:24:54.57
>>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デフォルトの名無しさん:2012/01/16(月) 17:25:11.84
>>67
お前が禿じゃ
7064 :2012/01/16(月) 17:54:04.27
>>68
お!解決の糸口が見えてきた気がする。
リンク先みて勉強してみます。
ありがとー!
71デフォルトの名無しさん:2012/01/16(月) 18:29:41.65
禿禿言うな
リアル登頂禿には笑えない

Hogeにすら過敏に反応するんだから
72デフォルトの名無しさん:2012/01/16(月) 18:38:30.72
>>61
finalなローカル変数があれば十分だからじゃない?
73デフォルトの名無しさん:2012/01/16(月) 19:38:05.26
2012/01/16(月)の日付など、フォーマットを解析するときに1.4から正規表現が導入されたので楽になったと思いますが、1.3以前ではどうやっていたのでしょうか?
日付や範囲などのparseはjava.text.Format をかなり駆使すれば通常では問題なかったと思いますが、それでもjava.textでは正規表現なみに細かいところまでカスタムするのは無理だったのでしょうか。
それとも1.1以前(java applet formからの入力で使うことが多いと思うので)で利用できるような他のライブラリか何かがあったのでしょうか。
74デフォルトの名無しさん:2012/01/16(月) 20:09:26.46
jakarta oroみたいな外部の正規表現ライブラリ使ったり、scanfっぽいのを自作したり。
75デフォルトの名無しさん:2012/01/16(月) 20:11:48.65
>>71
では、ヴァルドスポットではどうだ
Bald spot
76デフォルトの名無しさん:2012/01/16(月) 20:17:32.46
>>73
java.util.Date
とか
java.util.GregorianCalendar
とか


1.3のときでもjava.text.SimpleDateFormat普通に使ってたよ

で、なぜそんなことを聞きに?
1.3以前の環境しかつかえない仕事してんの?
77デフォルトの名無しさん:2012/01/16(月) 20:18:01.88
>>74
apacheのoro,regexpはもう終了しちゃったんじゃなかった?
78デフォルトの名無しさん:2012/01/16(月) 20:25:51.77
java appletが普及しなかった理由は、javaは敷居が高すぎるというか、例えばappletとhtmlとの連携なら、実はこういうところに問題があるのに詰めが甘いままjava appletを先走ってリリースしちゃったことにあるんじゃないかなぁと思いまして
79デフォルトの名無しさん:2012/01/16(月) 20:27:45.89
>>76
java.text.Formatは、parseよりもformatがメインなのでclass Formatでは「ユーザー入力の確認処理(parse)」目的で使うなら役不足でしょうね
80デフォルトの名無しさん:2012/01/16(月) 20:33:53.48
役不足ならFormat使えば良いんじゃね?
81デフォルトの名無しさん:2012/01/16(月) 21:55:23.10
はぁ?
82デフォルトの名無しさん:2012/01/16(月) 22:34:15.47
つ 辞書
83デフォルトの名無しさん:2012/01/16(月) 22:42:21.87
concurrenthashmapの性能(特にメモリ使用量)についての記事があったら教えて下さい
84デフォルトの名無しさん:2012/01/16(月) 22:52:35.34
Javaのコーディング規約ってどこまで厳守してる?
俺は1行の文字数は150くらいまでならOKかなーって考えているけど。
85デフォルトの名無しさん:2012/01/16(月) 22:56:33.83
javaでゲームを作る参考書を買って
その参考書で学んだソースコードをもとに
色んなサイトのソースコードと合わせて勉強してるんだけど
こんな勉強のやり方でいいでしょうか?
その参考書の名前ってここで出していいでしょうか?
その参考書はいいとか悪いとか聞きたいんですが。
86デフォルトの名無しさん:2012/01/16(月) 23:16:04.53
参考書といっても初心者・初級者向けなのはどれも似たり寄ったりなので差はまったくありません
本の善し悪しを気にするよりも、今後Javaで教科書がない分野でも貪欲に参加していけるかどうか独学でスキルを得られるかを気にした方がいいでしょうね
87デフォルトの名無しさん:2012/01/16(月) 23:18:42.57
スレッドからスレッド作っていいもん?
一応、期待通りに動いてるけど、あまり良くないものなのかな?
88デフォルトの名無しさん:2012/01/16(月) 23:23:42.21
スレッドじゃない何処でしようとしているんだろう?
89デフォルトの名無しさん:2012/01/16(月) 23:29:18.78
むしろスレッド上で走ってないプログラムなどない。。。。。。。。。。。。
9087:2012/01/16(月) 23:44:57.51
すまんね、基礎知識無いもんで質問の仕方もわからんw

要するに、メインスレッドからスレッド作って、更にそこからスレッド作って・・・

それで期待通り動くけど、
出来るだけスレッドを入れ子にしなくて済む様なプログラミングした方が良いのかなって事。
91デフォルトの名無しさん:2012/01/17(火) 00:01:32.08
スレッドを入れ子にしなくて済む様なプログラミングって具体的にどういうことをやるの?
92デフォルトの名無しさん:2012/01/17(火) 00:03:07.71
おそらく、スレッド生成するメソッドは、ただ一つのスレッドからしか
呼ばないようにするってことを言いたいんだと思う
93デフォルトの名無しさん:2012/01/17(火) 00:10:26.47
誰が親で子で、誰が子を最後まで養う責任を負うのかを考えれば,
入れ子にするのが必然であればそれでいいし,
無計画に子ども産んで破産するような感じにはならないと思うよ☆彡
94デフォルトの名無しさん:2012/01/17(火) 00:14:43.11
スレッドを出来るだけ入れ子にしない方が良いのかなって思ったのはどうしてですか?
95デフォルトの名無しさん:2012/01/17(火) 04:35:04.45
例えば、interface Foo に boolean init()を宣言しておいて、
interface Hoge implements Foo
interface Piyo implements Foo
って出来ないの?
eclipseで書いてたら警告してくれた。警告というかエラー。
共通するファンクションを別途にそれぞれ書かないといけないの?
最終的にimplementsするクラスで忘れずにimplementsしろってことなのかな?
設計が間違ってるの?
9695:2012/01/17(火) 04:47:52.63
失礼した。
そうか、interface→interfaceだからextendsすればいいのか。
97デフォルトの名無しさん:2012/01/17(火) 05:12:01.94
不思議に思ってて解決できてないのだけど、Javaで、
インタフェースで(finalじゃない)変数を宣言できない(定数しか宣言できない)のと、
構造体が無い、
というのは、どうしてなんだろう?

構造体については、ストリームからのデータの読み込みがとても楽になると思うんだ。
どうして捨ててしまったのかな。
シリアライズ使えば不要だから?パース必要だからかなり遅いんじゃないのかな?
9897:2012/01/17(火) 05:39:35.77
日記のようにしてしまって申し訳ない、以後、気をつける。
インタフェースの件に関しては、あくまで実体をアクセスするための関門であるから、で理解した。
変数を宣言してしまうと、それは部分的に実体化してしまって、abstractクラスになるんだね。
99デフォルトの名無しさん:2012/01/17(火) 06:57:45.54
あんまりJava詳しくないけど。
リトルエンディアンのマシンでもビックエンディアンのマシンでも実行できる様にするためにはシリアライズって必要じゃないの?
100デフォルトの名無しさん:2012/01/17(火) 07:50:06.79
必要なのはシリアライズじゃなくてどちらかに統一する事。
Javaのシリアライズはビッグエンディアンで統一。
101デフォルトの名無しさん:2012/01/17(火) 08:00:42.83
>>97
構造体とストリームからのデータ読み込みは直接関係ない。
C#でも構造体とbyte[]の相互変換ではアンマネージドになったりマーシャルしたり一手間かかるし。
10261:2012/01/17(火) 08:58:10.30
>>63>>72
ありがとうございました
103デフォルトの名無しさん:2012/01/17(火) 11:10:41.18
interface HogeInf<T extends HogeResult>
を実装してるクラスのインターフェース側のTがどのようなクラスなのかを知りたいのですが、
どのようにすれば取得出来るでしょうか?
104デフォルトの名無しさん:2012/01/17(火) 11:31:20.15
Class<T> getResultClass() みたいなメソッド追加して実装クラスに強制する。
105デフォルトの名無しさん:2012/01/17(火) 11:32:13.53
取得?
例えばどんなクラスが使われるかじゃなくて?
eclipseだと、HogeResultにカーソルを合わせて、型階層を開くをすると、上下の階層がわかって、下の階層がつかわれるクラスなんじゃない。
そういうことじゃなくて?
instanceOfとかgetClassとかそういう話?
106デフォルトの名無しさん:2012/01/17(火) 11:38:46.37
ファイル出力用のパッケージ(の内部のクラスではなくて、単純にディレクトリ)をつくって、
そこに「パッケージ名指定」でファイルを作ることって出来るだろうか?
何を意図しているかというと、ディレクトリ指定にOS依存文字を使いたくないんだ。
移植する予定なんて無いけど。
107デフォルトの名無しさん:2012/01/17(火) 11:43:37.02
>>106
System.getProperty("java.io.tmpdir") の戻り値使うんじゃいかんのか?
何したいのか良くわからんけど。
108103:2012/01/17(火) 12:01:00.13
>>104
そういう逃げも出来るのですが、
リフレクションで遡って取れたら、そっちのほうがつかいやすくなるのて、
うまい方法がないか探しています。

>>105
実装したところでインターフェース側にどのクラスを指定したのか、
というのが欲しいです。
109デフォルトの名無しさん:2012/01/17(火) 12:06:09.89
>>106
任意のクラスのロード元クラスファイル名の持つディレクトリ構造が欲しいなら

Class → ProtectionDomain → CodeSource → URL

で辿れる。

URLが「file:」で始まるかどうかまでは知らん
110デフォルトの名無しさん:2012/01/17(火) 12:29:10.72
http://ideone.com/AkxPq
こんな感じ?
すごく不細工だ。…、そうでもないのかな?

要はパス指定にOS依存文字を入れたくなかった。
String file ="hoge.piyo.foo.txt";
printWriter_ = new java.io.PrintWriter(new java.io.BufferedWriter(new java.io.FileWriter(file, true)));
って出来たらいいなぁ、って意味でパッケージって言葉を使ってみたが、…、拡張子と区別つかないジャン!だめじゃん。
つд`)
111デフォルトの名無しさん:2012/01/17(火) 12:30:48.59
>>109
エスパーさせてしまって申し訳ない!
MP無駄に消費させて申し訳ない。

せっかく教わったので、コレも調べて覚える。
112デフォルトの名無しさん:2012/01/17(火) 12:41:06.45
>>110
String foo = "hoge/piyo/foo.txt".replace('/', File.separatorChar);
とかじゃだめ?

File hoge = new File("hoge");
File piyo = new File(hoge, "piyo");
File foo = new File(piyo, "foo.txt");
とかもできる
113110:2012/01/17(火) 12:46:57.82
>>112
あっ!
replace!それいい!そんな手があるのか。
File.separatorChar もgetとか書くよりスマートな気がしますし。
いただきます。ありがとうございます。

後半は、コンストラクタ(File, File)はNGの確認をしたのですが、
コンストラクタ(File, String)は気がつきませんでした。
114デフォルトの名無しさん:2012/01/17(火) 12:50:38.84
JVMのヒープの使用量をGUI表示してくれるアプリがあったと思うのですが、何と言う名前だったか思い出せません。
@IT的なところで、一ヶ月かけて徐々にメモリリークしていく画像と共に紹介されていました。
ご存知でしたら教えてください。
115デフォルトの名無しさん:2012/01/17(火) 13:02:30.03
jconsole
visualvm
116デフォルトの名無しさん:2012/01/17(火) 13:37:50.81
>>79
1.3やめてJava7にアップグレードすれば済む話だよ
117デフォルトの名無しさん:2012/01/17(火) 13:39:09.62
>>77
Apache Atticに統合されただけで終了していないだろ
単体での開発は終了したが

http://attic.apache.org/
118デフォルトの名無しさん:2012/01/17(火) 13:40:10.29
>>78
その普及しなかった理由として敷居が高すぎると言ったのは誰だ?
具体的問題例がわからんな
というかなぜいまさらそんな話にこだわるのか
119デフォルトの名無しさん:2012/01/17(火) 13:46:19.81
>>84
120までならOKとしてEclipseのフォーマッタとCheckstyleプラグインで設定している
昔やデフォルトでは80までという制限があってきつかった
Javadocコメントは必ず書く
オーバーライドされたメソッドには必ず@Overrideをつける
時代遅れなメソッドにはJavadocの@deprecatedではなく@Deprecatedアノテーションをつける
package.htmlをすべて廃止してかわりににpackage-info.javaを使ってパッケージにもアノテーションをつけられるようにする
文字コードはすべてUTF-8を絶対的に厳守する
テストコード以外では文字列の外部化を必ず行う。
テストコードでマジックナンバーやその文字列版には@SuppressWarningのnlsをつける
メソッドの引数はとくに断りが無い限りかならずfinalをつける
メソッドの引数が無駄に5,6と増えてきたらそのメソッドの引数をひとまとめにしたクラスを作る
120デフォルトの名無しさん:2012/01/17(火) 13:47:23.30
>>85
気になるから名前を出すべき

Javaを使って凝った完成度が高いソフトを作りたければ
Effective Javaくらいは読んで損はしない
121デフォルトの名無しさん:2012/01/17(火) 13:50:49.24
>>97
C#で導入している構造体を使ったパフォーマンスの実験の結果、
クラスよりも構造体を使ったほうがかえってパフォーマンスが悪くなったという例もある
アットマーク・アイティに記事が残っていたと思う

憶測でものを言う前に実際に検証してみてはどうだろうか
122デフォルトの名無しさん:2012/01/17(火) 13:53:09.30
>>111
謝って許されるのは中学生までだと思わないか?
123デフォルトの名無しさん:2012/01/17(火) 13:55:27.82
どうせphpかjsあたりから流れてきたコーダー見習いだろ
124デフォルトの名無しさん:2012/01/17(火) 14:13:50.54
web系には胡散臭い阿呆者が多い
125デフォルトの名無しさん:2012/01/17(火) 15:16:37.84
>>119
>メソッドの引数はとくに断りが無い限りかならずfinalをつける

おいおい。これ本気かよ。めんどくさすぎ。
Checkstyleに引数操作の警告だけは出させてるが
126デフォルトの名無しさん:2012/01/17(火) 16:50:30.99
ヘルマンの格子を作成して、特定の箇所をクリックすると
ヘルマンの格子の色が変わる
            四角の大きさが変わる
音が出る
というのをJavaでNetBeans使って作らないといけないんだけど全然分からない・・・。

四角は7×7で

○△×◎

■■■■■■■
■■■■■■■
■■■■■■■
■■■■■■■
■■■■■■■
■■■■■■■

↑のように作成して、

○を押したら音が出る
三角を押したら上の図の色が黒から青になる
×を押したら上の図の色が黒から黄色になる
◎を押したら■の少し大きくなる

みたいな感じで作るんだけど・・・。
Java自体授業で始めて扱ってまだまだ全然分からないのに、とても分からない・・・。
ここをこう変えていけば、完成するよ!みたいに教えていただけたら嬉しいと思い投稿しました・・・。
127デフォルトの名無しさん:2012/01/17(火) 16:58:52.70
ゆとり乙
128デフォルトの名無しさん:2012/01/17(火) 17:46:38.23
まずヘルマンの格子っていうのを描いてみることから始めたら?
方法はいろいろあるけど指定されてるんじゃないか

そしたら、色を指定したり、大きさを変えたり、音を出したりっていう部品を集めていく
そしたら、ゲームに必要な変数を適当に考えながら、かかれたゲームのルールをプログラムで表現すればいいんじゃないかな
129デフォルトの名無しさん:2012/01/17(火) 18:00:05.26
>>126
まず服を脱ぎます
130デフォルトの名無しさん:2012/01/17(火) 18:16:26.75
それで、プログラムは動いたら終わりじゃなくて、そのあと被ってるところをまとめたり、処理を種類ごとにまとめたりして、自己満足にひたれるのがいいところで、この問題はポリなんとかってやつを使うときれいに書けるのかもね
131デフォルトの名無しさん:2012/01/17(火) 18:25:39.43
>>124
web系といってもただのウェブデザイナーとかPHP程度しかしらないLAMPな連中だがな
132デフォルトの名無しさん:2012/01/17(火) 18:26:15.58
>>125
自動的にfinalをつけるようにEclipseで設定すればいい
133デフォルトの名無しさん:2012/01/17(火) 18:26:53.18
>>126
Java宿題スレでみたがもう提出期限過ぎてるだろ

Java2Dの勉強から始めるんだな
134デフォルトの名無しさん:2012/01/17(火) 18:49:37.99
>>132
そういう問題じゃないだろwww
135デフォルトの名無しさん:2012/01/17(火) 20:20:50.61
すくなくとも不変クラスの作成には必須だな
136デフォルトの名無しさん:2012/01/17(火) 20:43:54.16
正直Java2Dなんかどうでもよくてクラスの使い方とポリモーフィズムをしっかりとやるところだろ

宿題をもっていくと、教師がとつぜん仕様変更を言い出して、音を出してかつ大きく、色を変えるとか、リセットして元に戻すボタンが欲しいとか言い出す。
んで、関数型とか手続型でやってきたやつがヒイヒイいう横でオブジェクト型のやつはすっきり仕様変更できると。そんな狙いだろ、これは。

だから、この問題はヘルマン格子を書くメソッドをもったスーバークラスに色と大きさをフィールドに持たせて、それを承継して適当にメソッドをオーバーライドしたクラスを作ればオッケー
あとはファクトリーとかつくって悦に浸ると

この楽しさをわかってもらいたい
137デフォルトの名無しさん:2012/01/17(火) 21:03:51.95
あきらめてその授業の単位を落とすか、学校の先生に聞け
138デフォルトの名無しさん:2012/01/17(火) 22:15:34.17
スレッドの意味が良くわからない
sleepを使ってタイマー機能として使うのぐらいしか利用価値がワカラン!

同期非同期の概念は分かっても具体性がどうにもピンと来ない
139デフォルトの名無しさん:2012/01/17(火) 23:08:12.06
>>138
一方でディスク読み書きしながら他方で同時に計算すれば、
ディスクの読み書きが終わるのを待ってから計算始めるよりも効率いいよね?
こんな説明じゃだめですか

じゃあ多数のクライアントを捌かなきゃいけないWebサーバとかどうよ
あるクライアントのダウンロード要求に対応するためディスク読んでる間に
別のクライアントを捌けるかもしれないよね
140デフォルトの名無しさん:2012/01/17(火) 23:29:01.24
>>132
そこまでするなら、メソッドの引数だけでなく、
全てのローカル変数にも特別な断りが無い限りfinalをつけようず

また継承を前提をしていないメソッドやクラスにも
間違って継承しないように全てfinalをつけようず
141 ◆QZaw55cn4c :2012/01/18(水) 00:57:27.20
>>138
サブルーチンと同じく、プログラムを書く側にとって便利なやり方のひとつ、と割り切るのが吉。
運がよければ速くなるかもしれないしそうじゃないかもしれない。排他制御が関門。
142114 :2012/01/18(水) 02:17:33.01
>>115
>jconsole
それだっ!
ありがとうございます。
143デフォルトの名無しさん:2012/01/18(水) 03:16:13.65
JavaのOpenGLを使ったとき、
背景に2Dの壁紙を置いて、その上に3Dの表示って出来るかな?
glClearColor(0.0f, 0.0f, 0.0f, 0.1f);とかしても、背景色の透過がされないのと、
壁紙の設置方法がわからない。
スレちがい?
144デフォルトの名無しさん:2012/01/18(水) 03:20:16.57
>>143
ライブラリ何?と言うかコード晒せ
145デフォルトの名無しさん:2012/01/18(水) 07:44:45.38
その壁紙とやらもOpenGLで描けばいい
OpenGLは2Dも描ける
146デフォルトの名無しさん:2012/01/18(水) 07:45:48.92
>>143
そういう時って3Dのオブジェクトの後ろに
2D画像マッピングした板立てたりしない?
147デフォルトの名無しさん:2012/01/18(水) 10:45:55.92
いわゆるビルボード
148デフォルトの名無しさん:2012/01/18(水) 13:43:49.84
>>140
それはものにもよるわな
クラスやメソッドにfinalをつけるのは絶対に継承して欲しくないとおもったときに使う
デザインパターン的に
149デフォルトの名無しさん:2012/01/18(水) 14:07:14.01
>>1
Wikiの情報が古かったから少し修正してきた
あとスパムが少し混じってたから修正してきた


あと、FAQの内容がもう古い気がする
どこから手をつければいいだろうかわからない

というかJava全体を扱うWikiがあったら欲しい
150デフォルトの名無しさん:2012/01/18(水) 15:36:16.35
マルチcpuじゃなくマルチコアを活用するだけなら
グリーンスレッドとネイティブスレッドの違いとか意識する必要ないよね?

ちなみにマルチcpuを活用する場合は何をどうしたらいいの?
jvmはoracleのhotspotだとして。
151デフォルトの名無しさん:2012/01/18(水) 15:40:56.22
JSPで書式を指定して日付を表示させる方法ってどうやるの?
152デフォルトの名無しさん:2012/01/18(水) 17:02:34.79
Wikiかあ
JavapediaっていうWikiもあるが全部英語

WikiaにJavaの情報をまとめるWikiを作るって手もあるが

はてさて、Wikiaにはもじら組を除名されたYukichi99という男が幅をきかせているというが…
ウィキペディアでは嫌われ者だという…
153デフォルトの名無しさん:2012/01/18(水) 17:34:06.42
2ちゃんねらーで作るjavaまとめ
とか、作ってもいいんじゃね。
スレの書き込みに対応するためによくある質問中心にまとめておけば、
一年後にはけっこうな情報量になってそう。
154153:2012/01/18(水) 17:36:36.07
すまん。ちょっと変なこと言ってた。
155デフォルトの名無しさん:2012/01/18(水) 17:41:55.35
よくある質問中心にまとめても一切見ずに質問してくる奴がほとんどなので無駄な労力
156デフォルトの名無しさん:2012/01/18(水) 18:02:21.46
著作権完全無視でコピーしていながらまとめサイトで儲けようとするステマもいることだし、ライセンス的にも2chねる的にも転写禁止にしないとダメだな
157デフォルトの名無しさん:2012/01/18(水) 18:04:46.79
>>154
死ねよ雑魚
158デフォルトの名無しさん:2012/01/18(水) 18:42:44.12
>>152
Javapediaの日本語版が欲しい。
ゆきちはもうWikiaにはいない。

>>153
意見には概ね賛同できるが
2ちゃんねらーというタイトルは不要かと思われる

>>155
みんな細かい込み入った質問が多すぎるて、FAQと合致しないものが多いのが難点
現状の2chJavaWikiのFAQは情報が少なすぎる上、あのWiki自体がもう古いタイプの
ものであり編集しにくい。なにせMediaWikiのようなTemplate機能も使えない。
Categoryもない、名前空間も使えない、履歴も差分が見づらくて
殆ど100%匿名で編集者間で編集のやりとりや連携といったことができずあれこれ不便。

そこでMediawikiを使ってるWikiaが使えたらと思ってる。

>>156
クリエイティブ・コモンズ・ライセンスのCC-BY-SA3.0を適用すれば問題ない。
このライセンスを適用していれば、
Wikipediaからの転載、他の同じライセンスを適用しているWikiやサイトからの転載
やその逆もしやすくなる。
159デフォルトの名無しさん:2012/01/18(水) 18:49:58.99
Javapediaを日本語に翻訳すればいいだろ
ていうか今どき英語も読めないならジャヴァの勉強は止めた方がいい
160デフォルトの名無しさん:2012/01/18(水) 19:07:18.82
2chは著作権者(の総体)がいるから、公衆送信権隣接権利の侵害や、加工(編纂)するなら著作物の二次的利用になるから完全に違法になるんだよ
つまりそういうまとめサイトみたいなのはパブリックドメインとまったく関係ない
161デフォルトの名無しさん:2012/01/18(水) 19:10:03.10
そうすると、質問と回答のまとめをコピペするのはNGで書き込む人が創作すればOKか
162デフォルトの名無しさん:2012/01/18(水) 19:13:37.54
加工なら編集著作物になるから許可貰えばいいんでない?
163デフォルトの名無しさん:2012/01/18(水) 19:18:21.95
たぶん投稿者は投稿するときに放棄させられてるから、著作権者は2ちゃんの会社のみにされてる
同意は2ちゃんからもらう必要があるから難しいな
164デフォルトの名無しさん:2012/01/18(水) 19:23:50.88
>>159
読めないことはないが解読速度に大きな影響を与えることは間違いない。

>>160
まとめサイトを作ろうとしているのではなくJavaそのもののWikiが欲しい。
それで、2chの情報をコピペすると、なにかまずいことあるのか?
2chのレス元URLを引用文献として指定すればOKではないのか?
165デフォルトの名無しさん:2012/01/18(水) 19:25:17.97
>>163
いや、破棄はされない。過去に、モナーのAAをもとにした人形が販売された時や
のまネコをAvexがパクったとき、かなり揉めたんだが。

モナーのAAを作った人が著作権を訴えて、結局作った人が勝った気がした。
166デフォルトの名無しさん:2012/01/18(水) 19:35:10.63
そのJavapediaに日本語で投稿できたら一番早いんじゃ?
167デフォルトの名無しさん:2012/01/18(水) 19:35:22.53
著作人格権というのがあって、それは放棄できない。
168デフォルトの名無しさん:2012/01/18(水) 19:43:50.08
>>167
譲渡できないだけだな
169デフォルトの名無しさん:2012/01/18(水) 19:58:47.55
著作物や成果物などの「著作」が議論になるときは、他人のコンテンツ(著作物)で金儲けしてるのに少額だとしても著作者を出し抜こうとすると違うところから火を吹くだろうね
他人の成果物で儲けるなら、プログラムと同じで、著作権保持者・代表者とライセンス料・ライセンス契約を結びその許諾の元で厳正に行わないといけない
そうしないと、特に日本社会は雑誌やマスコミの取材を見てもよくわかるけど、版権業界や日本社会はねたみ・そしみが凄いから怨まれて何年もストーカーされ、
刑法犯罪として取り扱われるようなら(このまえの2ch運営のガサ入れと同じく)警察権限の巨大化に日本社会が黙認を与えるのと同じになるし、かなり窮屈な世の中になるだろう

今週はwikipedia,google,mozillaなどウェブだオープンだと言ってる連中は米国内のコンテンツホルダーのDNS検閲法案に超反対しているだろ?
まとめサイトとかステマとか日本のフリーライドについては、現在の米国と逆行してることをやってるようだけど日本人で検閲とこの動きの意味を理解できる人はいないだろうね
日本のコミニティーやエンタープライズにはガバナンスを理解し実践してるような人は皆無だし、法リテラシーは義務教育にも組みこまれてなく日本人は法についての意識も低く無知無能だから、
いっそのことははなんでもかんでもリアルの刑事・警察の目が鋭く睨みを効かせ、町中に監視カメラだらけのような世の中になっていった方いいんじゃないかと思う
170デフォルトの名無しさん:2012/01/18(水) 20:03:02.04
どっちもできん
171デフォルトの名無しさん:2012/01/18(水) 20:06:22.37
金子くんも何年も業界からストーカーされたある意味被害者だよね
日本では潰そうとする勢力が凄くて護送船団なみの結束力だから何かで儲けようと企むだけでも即効で潰されると思うよ
172デフォルトの名無しさん:2012/01/18(水) 20:15:28.85
>>169
義務教育終えてからいえ
173デフォルトの名無しさん:2012/01/18(水) 20:16:48.02
>>164
そうそう引用するのは問題ない。だいたいここでの質問も回答もかなり端折ったものが多いから
FAQにするなら書き直さないといけないし、そうしたら尚の事問題ない

作るならまず作ってからここで何が足りないか聞けば?
ものがないのにこういうのが欲しいって言っても誰も作らんだろうし、協力する奴もでてこんだろ
174デフォルトの名無しさん:2012/01/18(水) 20:17:06.52
>>169
日本国内でやると日本の法律が適応されるから利権にうるさい日本人を黙らせるために
国内の法律に従うんだろSOPA周りは全く関係ない
175デフォルトの名無しさん:2012/01/18(水) 20:22:13.34
>>169
> いっそのことははなんでもかんでもリアルの刑事・警察の目が鋭く睨みを効かせ、町中に監視カメラだらけのような世の中になっていった方いいんじゃないかと思う


冗談じゃない。そんな言論の自由も表現の自由もすべて否定された
北朝鮮や中国のような共産主義・社会主義国家の実現なんてまっぴら御免だ。

お前は日本を、赤い旗を振り回すようなそんな危険な国家にしたいのか?


ねたみそしみに関して言えば、何年もストーカーされたという根拠はどこにあるんだ?
マスコミは電通のクズや反日左翼が多くてカスしかいないのはわかるがね
176デフォルトの名無しさん:2012/01/18(水) 20:23:52.69
>>171
それはJavaのWikiを作るのとどう関係あるんだ
FAQ程度の情報をWikiにまとめることなど、ライセンス上何も問題ないだろ

ストーカーといってもな、京都府警の一部の馬鹿が暴れていただけだろ
177デフォルトの名無しさん:2012/01/18(水) 20:24:31.22
>>173
作りたいがWikiaってサイト自体信用できるのか怪しい
178デフォルトの名無しさん:2012/01/18(水) 20:25:36.11
たぶんエクリプス総合の誤爆だったのじゃないかと思うんだが、両方くいついてるから統合したら?
179デフォルトの名無しさん:2012/01/18(水) 20:26:49.44
ガラパゴスな携帯をつくることが「日本式ものづくり」ということなので、日本種が絶滅しないように日本利権業界は必死にガンバッテルんですよ。
180デフォルトの名無しさん:2012/01/18(水) 20:29:04.46
Java版Wikiと
Eclipse版Wiki両方欲しいな

今の>>1のWikiはほとんど誰も更新しないし
Eclispe wikiを運営している人が使っているサービスと同じWikiを使ってる
181デフォルトの名無しさん:2012/01/18(水) 20:29:56.44
>>179
そのガラパゴスは結局iPhoneに影響されて、Googleの Androidを取り込んで
ガラパゴスを殆ど捨てさってAndroid携帯にパラダイムシフトしているわけだが
182デフォルトの名無しさん:2012/01/18(水) 20:31:16.70
>>178
何を統合するんだ

Eclipse Wikiも>>1のまとめWikiもどちらも更新しづらい
更新する者がほとんどいない

その理由は恐らくウィキペディアとは編集スタイルが違うからだと思う
ウィキペディア慣れした人から見ると非常に編集しづらい
編集方針が明確でないことが第一要因
183デフォルトの名無しさん:2012/01/18(水) 20:55:20.43
てか著作者人格権は自分しか持てないんだからwiki編集するならライセンスに同意しろでいいよ
184デフォルトの名無しさん:2012/01/18(水) 21:35:00.92
ByteBuffer.allocate()で指定するサイズって何バイトくらいがいいんでしょうか?
185デフォルトの名無しさん:2012/01/18(水) 21:38:40.15
必要な分
186デフォルトの名無しさん:2012/01/18(水) 21:45:12.09
>>175
一応読めば分かるとおり政治的な意味はないんですけど、この板にはたまに自民党工作員がいるようなので申し上げますと、自民党は政権奪取のために対立姿勢をもっと示して「増税反対!消費税絶対反対!!」を掲げた方がいいと思います
187デフォルトの名無しさん:2012/01/18(水) 21:46:13.52
ニュー速でやれカス
188デフォルトの名無しさん:2012/01/18(水) 22:03:17.02
>>174
なるほどそれは一理ありますね
ウェッブ上での情報検閲関係と、著作コピー・コンテンツ利権の保護関係とは分けて論じたんですけど、そもそもこれを同じ記事内で論ずると分けワカメな日本人では混同する人が続出だったかもしれません
189デフォルトの名無しさん:2012/01/18(水) 22:18:15.83
>>174
SOPA(日本語ではオンライン海賊行為防止法案などと訳される。この法案が成立した場合、合衆国の法執行機関と著作権者が、著作権で保護された知的財産やコピー商品をオンライン上で不正取引する行為に対して行使し得る権限が大幅に拡大されることとなる[2]。)
というか著作コピー・コンテンツ利権について、グーグルは著書の執筆家や出版社の許可なく数億人に影響する規模の広範囲著作権侵害をしていたので、まさにグーグルの旧ブックスサービスなんかも海賊行為に該当するはずです。
グーグル・ブックスだけでなく当然まとめサイトなんかも海賊行為になりますが、検閲反対は建前でしかなく、本音では「好き勝手やりたいのに著作権法やライセンス契約に縛られるのヤダ。ましてライセンス料とか金払うのはなんか絶対ヤダ」ってことじゃないですか?
190デフォルトの名無しさん:2012/01/18(水) 22:25:32.08


ステマ相関図画像更新(1/17)
http://gazo.restspace.jp/img-box/img20120117010742.jpg
テレビや新聞、大規模なネットサイトで「今流行の」「今話題の〜」「女性に人気の〜」等と言われるものはほぼ全て
この画像上部、○○堂がコントロールしている。
  ・世間にどの程度流行らせるか
  ・流行に乗り遅れる(流行に乗り遅れさせる)人間をどのくらい作るか
  ・話題に乗り遅れた人間に対してどの程度の疎外感を与えるか
  ・いつその流行を終わらせるか
2chもステマ会場
http://www.dotup.org/uploda/www.dotup.org2526030.jpg

ちなみに ハリーポッターと賢者の石の 「石」とはテレビのこと(著者が執筆当時)
 ダイオード→半導体→シリコン→石
 賢者とはテレビを見る人間でも番組を作る人間でもなく、テレビを操る人間。
191デフォルトの名無しさん:2012/01/18(水) 22:40:17.89
>>151を誰か頼む
192デフォルトの名無しさん:2012/01/18(水) 22:43:06.08
>>8
去年のネット流行語ノミネートはどこがコントロールしてたんですか?
193デフォルトの名無しさん:2012/01/18(水) 22:53:29.78
>>191
ファイルに、2012/01/18(水)、って書けばいいんじゃね?
194デフォルトの名無しさん:2012/01/18(水) 23:09:11.18
>>186
このスレには民主党工作員の在日しかいないよ
お前のようにな
195デフォルトの名無しさん:2012/01/18(水) 23:11:09.45
>>166
Javapediaの日本語版を作れってか
196デフォルトの名無しさん:2012/01/18(水) 23:18:06.87
>>194
増税反対!消費税絶対反対!なら民主党関係者じゃないだろお前バカ?
197デフォルトの名無しさん:2012/01/18(水) 23:27:58.68
198デフォルトの名無しさん:2012/01/18(水) 23:28:52.79
「消費税絶対反対」は自民党も言わないけど。
199デフォルトの名無しさん:2012/01/18(水) 23:41:47.32
ども
200デフォルトの名無しさん:2012/01/19(木) 02:17:45.87
>おまえが長く深淵を覗くならば、深淵もまた等しくおまえを見返すのだ。
みんな落ち着こうよ。
Javaの話しようよ。
他の話は徹底して無視しようよ。

ttp://ideone.com/CADqy
113行目の意味がわからないのだけど、関数使用時の{}ってJava的に何と言う文法なの?
201デフォルトの名無しさん:2012/01/19(木) 02:29:52.14
>>189
適当な極論を吐くな、在日
202デフォルトの名無しさん:2012/01/19(木) 02:31:47.38
>>196
お前が馬鹿だろ。Javaとは関係ない話題垂れ流しつつ
民主党内にも増税反対者、消費税反対者がいることも知らないお前が。
お前は右翼団体を名乗った隠れ左翼の在日ヤクザの街宣みたいにウザいな。
203デフォルトの名無しさん:2012/01/19(木) 02:34:51.38
>>200
それはただの{}じゃなくてこういう文法だ。
JPanel gradientPanel = new JPanel(){}
匿名クラスという。;
204デフォルトの名無しさん:2012/01/19(木) 02:45:37.86
自演乙
205デフォルトの名無しさん:2012/01/19(木) 02:46:48.10
これはホストのアーキテクチャやVMに依存しないでこうなるのかな?
ttp://pastebin.com/Vz69r8mY
ttp://ideone.com/8Zjtx
たまたま見つけて気になったのでメモ
206200:2012/01/19(木) 03:20:07.15
>>203
ありがとう、理解できたよ。
ちょっとオーバライド、みたいなクラスなのね。
(いや、別にちょっとでなくてもいいけど。再利用する気は殆どない、と。)
207デフォルトの名無しさん:2012/01/19(木) 03:39:47.48
while(hoge)

for(;hoge;)
っておなじだよね?なんか違うの?
208デフォルトの名無しさん:2012/01/19(木) 05:20:50.45
>>5
荒すな
209デフォルトの名無しさん:2012/01/19(木) 06:16:55.20
>>205
実行結果がCPUに依存するのは間違いない
210デフォルトの名無しさん:2012/01/19(木) 09:07:52.42
よく考えたらJavapediaってネーミングwiki要素がそっくり抜け落ちてるな
211デフォルトの名無しさん:2012/01/19(木) 10:37:44.56
>>164
Javaのwikiを自作するならすべきだと思うよ
現状Javaの情報がまとまってる日本語ページは老舗の個人サイトばかりだけど、
そこよりバランスよく説明する自信があるならやるべき。
wikiは作成者自ら相当量書かなきゃ誰も乗ってこないので、
ベースになる部分を作るのはきっと大変。
212デフォルトの名無しさん:2012/01/19(木) 12:37:58.30
>>167
行使する権利は放棄できると聞いたことがある。
213デフォルトの名無しさん:2012/01/19(木) 13:32:28.76
行使する事を放棄するだけであって著作人格権自体が無くなるものではないって事でしょう?
214デフォルトの名無しさん:2012/01/19(木) 14:13:56.65
誰が著作人格権自体がなくなるって言ってるの?
215デフォルトの名無しさん:2012/01/19(木) 15:21:14.46
>>211
自作って、Wiki自体をも? pukiwikiを自作するように?
それって車輪の再発明では
216デフォルトの名無しさん:2012/01/19(木) 15:22:00.55
>>210
そもそもJava大百科を作りましょうというプロジェクトだから
それいったらアンサイクロペディアとかユアペディアとか
217デフォルトの名無しさん:2012/01/19(木) 15:24:53.97
Mediawiki並のシステムを再度一から自作するって相当な労力だぞ
Java製Wikiでも使えと?それもきついかもな。それを自宅サーバでやるとなると
すぐにサーバがパンクする

テキストデータ更新程度のWikiはPHP+MySQL程度で十分だから


Mediawikiですら自宅サーバで立ち上げてもすぐパンクするし
パフォーマンスガタ落ちでレスポンスが何分と待たされて殆どWikiとして使い物にならない
218デフォルトの名無しさん:2012/01/19(木) 15:27:25.13
どこかのレンタルサーバでMediaWikiを立ち上げても
記事数が増えるにつれて容量制限にひっかかりそうだ

Wikipediaの全記事をMySQLからダンプするとどれくらいの容量になると思う?
Javaにはそこまで膨大な情報は詰まってないと思うが
ソースコード、画像、jarファイルなどのバイナリをwikiにアップロードすることを考えると
やはり容量かなり喰うと思うぞ

それならWikiaのほうが安全では
219デフォルトの名無しさん:2012/01/19(木) 20:28:48.82
Propertiesで値を書き込んでいるのですが、
storeで値を変えると、ファイルの頭にコメントで変更した時間が勝手に加えられます。
リファレンスを見ても、第二引数がnullで無ければコメントを付け加えるよ、としか書かれておらず、
第二引数はnullで、ためしに第二引数にコメントを入れると、

# 第二引数のコメント
# 変更した時間

プロパティの値...

といった感じになってしまい、第二引数とは関係なしにコメントが時間のコメントが追加されているようなのです。

この時間が勝手に追加されないようにしたいのですが、どうすればいいのでしょうか。
220デフォルトの名無しさん:2012/01/19(木) 22:18:48.64
>>219
何を言っているのかわからない。

ResourceBundleクラスを使ってpropertiesファイルに書き込んでいるのか
それともPropertiesクラスを使ってpropertiesファイルに書き込んでいるのか
ほらもっとはっきりと!
221デフォルトの名無しさん:2012/01/20(金) 09:07:12.77
Propertiesクラスを使ってpropertiesファイルに書き込んでます(><;)
222デフォルトの名無しさん:2012/01/20(金) 14:21:25.19
なんだメモリ上に展開したPropertiesを書き換えているだけかと思った。
223デフォルトの名無しさん:2012/01/20(金) 14:22:12.58
>>221
というかさ、ソースコード晒したほうが早いと思うよ
そもそもコメントって何?
224デフォルトの名無しさん:2012/01/20(金) 16:26:46.80
リファレンスを見ても分からないから質問したのに、
リファレンスを見たら分かることを聞き返されるとかもうね。
225デフォルトの名無しさん:2012/01/20(金) 17:47:03.13
率直に言ってResourceBundleかApache Commons Configurationsを使ったほうがいいと思うぞ
226デフォルトの名無しさん:2012/01/20(金) 18:54:19.11
>>219
てか、なぜ時間が更新されると困るのかわからない
227デフォルトの名無しさん:2012/01/20(金) 19:26:22.96
更新というか勝手に追加されてしまうんですね。
勿論コメントなので、あってもなくても動作に影響は無いんですが、
その時間を取得して何か処理しているわけでもありませんし、
数バイトとはいえ実質ゴミのデータを残したくない、といった感じです。
228デフォルトの名無しさん:2012/01/20(金) 19:29:50.67
潔癖症なんだかよくわからんな
そんなに気になるならXML版使えよ
229デフォルトの名無しさん:2012/01/20(金) 19:42:56.17
>>227
そんなこだわりがあるなら普通にFileWriter使ったほうが早いのでは
230デフォルトの名無しさん:2012/01/20(金) 19:44:34.81
あの程度でゴミに見えるなら
XMLファイルはゴミだらけになるわな
>>227はそういう考えか?
携帯電話開発でもしてるのか?
組み込み系か?
231デフォルトの名無しさん:2012/01/20(金) 21:40:05.26
#で始まるコメント行だけ無視するFilterWriterを実装するのは
大して難しい話ではない。

LineNumberReaderとPipedWriterあたりを
マルチスレッドで組み合わせるとさらに楽か。
232デフォルトの名無しさん:2012/01/20(金) 22:34:55.84
java(プログラマ)初心者です。
RoRを少しいじったことがありますが。今回JavaでWEBアプリケーションを作ることになったのですが
どこかいい参考サイトありませんか?
Railsライクなフレームワークで作りたいので,playを考えています。
233デフォルトの名無しさん:2012/01/20(金) 22:40:49.44
自分で演算子を定義するので、

Collections.sort(オブジェクト、演算子);
のようなやり方で、

Collections.apply(オブジェクトA、オブジェクトB、演算子);
のような便利メソッドってないすか

配列のAndがやりたい
234デフォルトの名無しさん:2012/01/20(金) 22:45:00.48
ないです
自分で作るとよいのでは
俺的には apply というより map って感じに見えるが
235デフォルトの名無しさん:2012/01/20(金) 23:39:04.20
ttp://ideone.com/pUzew
Map.Entryについて教えて欲しい。

45行目と50行目とがコンパイルエラーになるのだが、
55行目の使い方であっているのだろうか?
細かい話がうんぬんではなくて、普通に使い方がわからないだけの、あまり知らない人です。

検索しても、Mapの型の指定の無いものしか見つけられなくて、よくわからない。
236235:2012/01/21(土) 00:16:24.87
java.util.Mapって、どうしてclone()できないのかな?
中身はMapを実装したクラスなのであれば、cloneを予めimplementsしていてもよい気がしないかな?
237デフォルトの名無しさん:2012/01/21(土) 00:24:17.61
>>235
java.util.Map.Entry<Integer, Integer> でおk
でも読み難いから import の使い方覚えるべき

>>236
どうしてかはどこかで説明を読んだ気がしたけど忘れた
複製したいときは
Map<Integer, Integer> map2 = new HashMap<Integer, Integer>(map1);
的な方法でできる
238237:2012/01/21(土) 00:26:38.70
>>235
間違えた。
java.util.Map.Entry<Integer, java.util.Map<Integer, Integer>> が正しい。
239235:2012/01/21(土) 00:36:48.64
>>236
ありがとうー。不安で仕方が無かったから助かった。
複製については、元と同じ実装で複製したいならリフレクションするしかないでFAかな?
リフレクションとかまだわかってないし、今作ってるプログラムはそこまでこだわりないけど。
240235:2012/01/21(土) 00:42:26.65
ttp://webcache.googleusercontent.com/search?q=cache:y_qrWeWUd0gJ:www.atmarkit.co.jp/bbs/phpBB/viewtopic.php%3Ftopic%3D37029%26forum%3D12+java+util+map+clone&cd=9&hl=ja&ct=clnk&gl=jp
真ん中付近のリフレクションのコード、
コンパイルエラーなんだけど、どうすればコンパイル通るのかな?
241デフォルトの名無しさん:2012/01/21(土) 00:55:28.98
これでどう
Class<?> clazz = obj.getClass();
java.lang.reflect.Method method = clazz.getMethod("clone");
@SuppressWarnings("unchecked")
T result = (T) method.invoke(obj);
return result;
242デフォルトの名無しさん:2012/01/21(土) 01:32:24.68
>>236
javaの重要なことって全部sunのオンラインチュートリアルに書いてるんだけどさ。oracleになってリンク切れ起こした。
htmlの実体はあるんだけど昔のURLでアクセスするとリダイレクトされてリダイレクト先に存在しないからどうやっても辿れない。
放置されたままだからInternet Archiveから発掘するしかないと思う。
243デフォルトの名無しさん:2012/01/21(土) 01:45:26.84
なにもかも、所詮はオラクルがやることだから仕様がない
244235:2012/01/21(土) 01:50:20.86
日記みたいに連投してごめんね。まだ続きそう。
ttp://ideone.com/ds4bO

>>236後半って、要はコピーコンストラクタだよね?
何か、実行してみるとよくわからないことになった。
コピーしてるのかな?
hashCodeを確認してみると、mapの実体が複製されていない気がするんだ。

map_Map2 = map_Map;
map_Map2 = new …
↑で一時的に、map_Map2がmap_Mapと同じインスタンスをさしているのは当然だと思うのだけど、
newしてもmap_Map2.hashCode()の値に変化がない。
しかもHashMapになってない。さっぱりわからなくなってきた。

ところで、コレクション系のシャローコピーって
 var2 = var1
 var2 = var1.clone();
で同じなのかな?
valueの指し示すデータが複製されないのは理解できるのだけど、
(keyと)valueのセットが複製されないなら、シャローコピーの存在意義が無い気がする。
あくまで、オーバライド用のメソッドなのかな?
245235:2012/01/21(土) 01:55:58.87
>javaの重要なことって全部sunのオンラインチュートリアルに書いてるんだけどさ。oracleになってリンク切れ起こした。
確かに、いろいろリンク切れてて困る。
ttp://java.sun.com/javase/ja/6/docs/ja/
これじゃなくて、初心者を教育するための中途リアルがあるの?

Sunって日本人にやさしいところがあるよね。どうしてなんだろ。
英語(米欧印)と中国語で、世界の人口の大部分をまかなえるのに、日本語とか。
すごくありがたいんだけど不思議。
Oracleになって、幸先が悪いよね。何かの安いSDKに力入れてるらしいけど、eclipse(pleiades)が無料なのにいまさら何を…。
すみません、Javaの話じゃないですね。逝ってきます。
246デフォルトの名無しさん:2012/01/21(土) 01:58:06.32
ゆとりウザイ
247デフォルトの名無しさん:2012/01/21(土) 02:02:21.82
>>244
コレクションクラスの hashCode は中身の hashCode を合算したものなので
中身が同じなら変わらないし中身が変われば変わる
equals が中身全要素の比較なので、それと整合性を取るため (equals が true を返す場合は hashCode も等しい)

var2 に put した要素が var1 の get で現れるか見てみればわかる
248235:2012/01/21(土) 02:14:43.02
>equals が中身全要素の比較なので
>コレクションクラスの hashCode は中身の hashCode を合算したものなので
インスタンスIDのことかと思っていた…。
名前を見れば、ハッシュって書いてあるのにね。申し訳ない。
java.lang.Objectのjavadocを初めてまじまじと読んだ。
249デフォルトの名無しさん:2012/01/21(土) 02:16:52.37
>>245
そう思うなら、リアルだろうとネットだろと特許権無視や著作権無視などせずライセンス契約を受け入れてちゃんと金払えよ
250デフォルトの名無しさん:2012/01/21(土) 02:18:49.88
>>245
さっさと死ねよゆとり
251235:2012/01/21(土) 02:31:34.87
>ところで、コレクション系のシャローコピーって
とか、何か理解したような気がする。

構造体の中のポインタが、
コレクションの各要素へのアクセスを仲介するのだから、これが複製されて、
(keyと)valueは複製されないのはあたりまえか。

>map_Map.getClass().getName()
map_Map2.getClass().getName() じゃないんだから、全部TreeMapなのは当然だ。 orz.

つきあってくれてありがとう、いろいろ勉強になったし、一人でやるより早く解決できた。
>>236-247
252デフォルトの名無しさん:2012/01/21(土) 02:35:05.89
>>251
さっさと死ねよ
253デフォルトの名無しさん:2012/01/21(土) 03:28:57.07
>>232
「,playを考えています」の意味が分からない。
とりあえず@ITのJava入門や
JavaでHelloworldあたりでも調べればいいのでは
254デフォルトの名無しさん:2012/01/21(土) 03:54:08.68
>>242
そのサイト名、なんていうサイト

web.archiveで調べてみるからサイトの英語名おしえてちょうだい
255デフォルトの名無しさん:2012/01/21(土) 03:58:47.30
>>245
日本がどうかとかではなくOracleがJavaをないがしろにしているだけでは
だからJava関連の整備が進んでいない
日本語ドキュメントの整備にしても、Oracleに買収されてから
日本語ドキュメントを管理する担当者に人事異動か、再編成によって
プロジェクトが変わったとか何かがあったために出遅れているとか?
256デフォルトの名無しさん:2012/01/21(土) 04:12:40.05
>>254
java.netとかSDNとかSDCに分野ごとに散らばってるからサイト名と言われてもいろんな所としか
フォーラムやブログにさらっとsunの人が書いてたりもするしホストがsunでいまは辿れないやつ
全部当たれば色々出てくると思うけど今生きてる奴は現行バージョンに内容が置き換えられてるからそれも昔のとも違う。
257デフォルトの名無しさん:2012/01/21(土) 05:42:58.72
ジャヴァなんかもう止めてシーシャープをやるしかないな
どうせウィンドーズで開発してるんだしネイティブ開発だし一石二鳥じゃないか
258 忍法帖【Lv=6,xxxP】 :2012/01/21(土) 07:43:08.31
日本語ドキュメントで比べたらC#なんて糞すぎじゃん
あとC#ごり押しする人間が低脳すぎ
VBでポトペタとかいってるレベルだねw
259デフォルトの名無しさん:2012/01/21(土) 07:49:45.66
Javaは15年以上かかっても未だVBでポトペタにも勝ててない
260デフォルトの名無しさん:2012/01/21(土) 10:19:49.78
○×でポトペタって一番カスのやってる仕事じゃんw
JavaでもEclipseで普通にできるし
C#信者が如何にそれしか知らない低能かよくわかるわ
261デフォルトの名無しさん:2012/01/21(土) 10:38:31.02
マイクロソフト・ドットネット・フレームワークはウインドーズのネイティブ開発ができるんですよー
さらにこれからはポトペタなんてどうでもよくてウィンドーズ・フォーン開発をやろうとしてもジャヴァでは開発できないからやっぱりシーシャープ最強なんですよー
262デフォルトの名無しさん:2012/01/21(土) 10:53:40.47
>>261
節操なくポトペタGUI捨てたのはいいとして
Windows PhoneがAndroidやiOSにシェアで惨敗したことぐらい知ってるだろ?
AndroidアプリをJavaで作ったほうが圧倒的にとくじゃん。

お前C#が強い分野1つも知らないで人に勧めてるクズだな。
263デフォルトの名無しさん:2012/01/21(土) 11:06:02.78
カタカナでしか喋れない池沼が湧いているのか
264デフォルトの名無しさん:2012/01/21(土) 11:14:38.94
Windowsもそろそろ賞味期限切れ
265デフォルトの名無しさん:2012/01/21(土) 11:23:09.75
Tomcat7ではInvokerServlet使えないの?
266デフォルトの名無しさん:2012/01/21(土) 12:21:31.26
javac で環境変数に登録されているパスに加えて別のクラスパスを追加する方法ってどうやるの?

javac -cp newpath Test.java

の場合、newpathは反映されるけど
環境変数に登録してあるServletやJSPへのパスが無視されて困ってます
267デフォルトの名無しさん:2012/01/21(土) 12:25:06.92
%CLASSPATH% とか $CLASSPATH とかで環境変数のぶんも追加してやればいいのではないでしょうか
268デフォルトの名無しさん:2012/01/21(土) 12:28:58.91
ども
269デフォルトの名無しさん:2012/01/21(土) 13:11:13.66
Tomcatで WEB-INF/lib にサブディレクトリを作ってその中にjarファイルを入れることってできないの?
270デフォルトの名無しさん:2012/01/21(土) 15:22:29.22
>>253
playをベースにしたフレームワークをつくりたいって意味だろ?多分。
271デフォルトの名無しさん:2012/01/21(土) 16:36:52.03
>>256
というか、いまチュートリアルみたんだがとくにリンク切れ起こしてないぞ
ちゃんとチュートリアルページが見える

昔の話か?
272デフォルトの名無しさん:2012/01/21(土) 16:40:23.58
sun。。(´;ω;`)ブワッ
273デフォルトの名無しさん:2012/01/21(土) 16:49:22.41
ログを複数の言語(日本語、英語)で出力する
ロギングライブラリって需要あると思う?

log4jみたいにxmlで設定して、
日本語にすると日本語のログ「セッション タイムアウト」
英語にすると英語のログ「Session Timeout」が出力されるみたいな。
274デフォルトの名無しさん:2012/01/21(土) 16:53:29.15
>>269
Servlet2.5仕様より抜粋。

The/WEB-INF/lib/*.jar area for Java ARchive files. These files contain servlets,
beans, and other utility classes useful to the Web application. The Web application
class loader must be able to load classes from any of these archive files.
275デフォルトの名無しさん:2012/01/21(土) 17:38:36.24
点数(double型)を2値化するため、判別分析法で閾値を決めたいのですが
http://media.itc.u-tokyo.ac.jp/jsim/
以外に、何かそういうライブラリってありますか?
276デフォルトの名無しさん:2012/01/21(土) 17:41:22.06
>>275
なにこのページ
277デフォルトの名無しさん:2012/01/21(土) 17:59:48.73
>>276
なんか色々入ったやつみたいですが、肝心のリンクが切れてて分かりません。
http://media.itc.u-tokyo.ac.jp/jsim/src/jsim/graphic/api/jp/ac/nime/computer/grpsimulator/ImgPr/HistogramBinaryAnaDisc.html#CalcBinary(int[], int)
を見る限り、これが使えれば何とかなりそうなのですが・・・。
278デフォルトの名無しさん:2012/01/21(土) 18:34:45.25
>>277
必要なファイルを集めてコンパイルしたら?
http://media.itc.u-tokyo.ac.jp/jsim/src/HTML/S/59.html
279デフォルトの名無しさん:2012/01/21(土) 19:01:25.80
>>262
アンドロイドのアップリ開発はオラクルとの権利侵害訴訟がまだ続いているからこのままジャヴァを使って開発を続けられるかどうかは微妙じゃないですか?
それにアンドロイドのようなソフトウェーア・ガジェットものはエッチ・テー・エンム・エル・ファイブになっていっても、
オラクルはこの点ジャヴァ・エフエックスを用意してますが、グーグルはこれに移行せずアンドロイドネイティブ開発にドムも採用せずジャヴァ開発者とジャヴァで作ったライブラリーは切捨てでしょうね
きめ細かいネイティブ・コンパイルをしておきたいならやっぱりジャヴァじゃなくてシーシャープの方がグレートじゃないですかぁ?
280デフォルトの名無しさん:2012/01/21(土) 23:30:01.04
このスレには10年前からたまにC#厨が粘着することがあったが
まさかそいつが未だに粘着するとは
281デフォルトの名無しさん:2012/01/22(日) 01:24:26.11
DBからのデータ約80万件をArrayListに格納して
ループ処理をするバッチがあるんですけど、
ArrayListをHashMapに変えると速度改善に効果はあるのでしょうか。
282デフォルトの名無しさん:2012/01/22(日) 02:04:58.58
>>281
そんなんで改善しないだろ。
ひとつののSQLで複数行更新させるとか、ストアドプロシージャ使うとかが妥当じゃないか。
283デフォルトの名無しさん:2012/01/22(日) 04:16:18.67
>>269
やってみればいいだろ
284デフォルトの名無しさん:2012/01/22(日) 05:40:09.54
>>251
シャローコピーとかディープコピーとか、クローンとかコピーコンストラクタ
とかいったブツは
Effective Java、Javaの鉄則、Javaの格言あたりを読めば載っている。
ああいう本を読んだほうがかなり勉強になる
285デフォルトの名無しさん:2012/01/22(日) 06:41:58.67
ちょっとスレ違い?かもしれないけれど、Javaのロゴマークってブログの記事見出しとかで使って大丈夫?

http://www.oracle.com/jp/corporate/oracletrademark-150695-ja.html
これみたかんじだと、クレジットラインさえ書いとけばいいのかなって気がするんだけれども。

あと、くれくれ君ですみません、ロゴダウンロードってどこでできるんでしょうか・・・
286デフォルトの名無しさん:2012/01/22(日) 06:59:56.32
>>258
その昔、この板には「C#って死滅しちゃうの?」「Javaって死滅しちゃうの?」
というスレがあってだな、これらのスレでC#をゴリ押ししている連中が4,5人ほどいたのさ。
C#が登場してから間もない頃の話だった。
マイクロソフトから派遣されたエバンジェリストではないかと言われていた。
彼らの口癖は「Javaはいずれなくなる。これからの時代はC#だ」
「J2EE(現Java EE)はいずれなくなる。これからの時代は.NETだ」などと連呼していた。
「演算子のオーバーロードができないJavaは糞」だとか
「delegateが使えないJavaは糞」「unsafeが使えないJavaは糞」「Javaは糞重い」
「LinuxとJavaとApache Jakartaとオープンソースは共産主義だ。パクリだ。朝鮮だ」
「Sunの株価はたった300ドル。マイクロソフトと比べてみろ。だからJavaに未来はない」
「構造体が使えないからJavaは遅い」
その程度の煽りが多かった。

最終的にC#はWindows上で動作するGUIの開発に強い、携帯やサーバやWindows以外のデスクトップアプリ
ではJavaのほうが強い
という方向で落ち着いた。

他に、当時のJavaにはアノテーションがなく「C#は”属性”(Javaのアノテーションに相当)がある。だからJavaは糞」
とかボクシング&アンボクシング変換(Javaのオートボクシングに似た仕様)ができないJavaは糞」
とかそんなのもあった。

あと、C#はサードパーティなしでいきなり高レベルAPIを提供して、Windows.Forms便利すぎて使いやすいって
いちいち強調している奴らも多かったな。
どれもstaticなメソッドばっかでオブジェクト指向のオの時もしらない奴が作ったライブラリばかりだったが。
287デフォルトの名無しさん:2012/01/22(日) 12:17:23.15
>>278
>>277を書いた後に2ちゃんに繋がらなくなってしまい遅くなりました。
教えていただいたURLを参考に実装したところ、無事計算することができました。
ありがとうございました。
288デフォルトの名無しさん:2012/01/22(日) 14:34:10.57
JavaでDBへのアクセスの結果を格納するResultSetクラスについてですが
DBアクセスして取得した結果は、実際以下のどちらに格納されるのでしょうか?

(a)JavaVMのメモリ上に確保
(b)DBのメモリに確保
289デフォルトの名無しさん:2012/01/22(日) 14:41:23.91
片方ってことはないんじゃね
290デフォルトの名無しさん:2012/01/22(日) 14:56:03.77
ResultSetに格納
291デフォルトの名無しさん:2012/01/22(日) 15:01:58.12
流れ読まずに投稿致します。

以下の条件で簡単な顧客管理システムみたいなのを作ろうと思っているんですが、完成したシステムを素人でも簡単にインストール、設定できる方法は何かないでしょうか。

・使用言語 : java, javascript, その他必要に応じて
・使用DB  : 無料で手に入るの。(MySQLとか)
・条件1   : 素人が簡単にインストールできる。
・条件2   : 素人が簡単に操作できる画面系システム作る
・条件3   : データベース使う。

現在思いつく方法は
1.設定、インストールもろもろをexe形式に
2.データベースの部分をcsv等にしてバッチプログラムで操作(.bat、.vbs形式なら動作環境設定必要ないから)
3.ダウンロード、インストール、設定の方法を全てマニュアル化する

何かいい方法をご存知でしたらご教示いただけないでしょうか。
292デフォルトの名無しさん:2012/01/22(日) 15:20:19.93
クライアントサイドにDB入れるような糞設計はやめろ
293デフォルトの名無しさん:2012/01/22(日) 15:37:08.51
>>292
クライアントサーバシステムという概念を忘れていました。
たしかにDBとかjavaの利点まったく活かせてないですね


エクセルで入力フォーム作とかしたほうがよさそうですね


大変失礼いたしました
294デフォルトの名無しさん:2012/01/22(日) 15:50:55.44
stringbufferで1行ずつデータ入れて
to.Stringを使ってまとめてstringに保存するのを一定時間ごとの連続した流れの中でやるんですけど
string内に同じ文字列(1行単位)があった場合はstringbufferからの追加をせず、重複なかったら普通に追加していくっていうことをやりたい

stiringtokenizerとか使って何かいい方法ありませんか
stringの中身を1行分ずつまた読み込むこととかできますか
295デフォルトの名無しさん:2012/01/22(日) 16:16:11.93
296デフォルトの名無しさん:2012/01/22(日) 20:35:59.41
顧客管理アプリをこのスレで聞いてるのは手に馴染んでるjava/jvmで運用したいんだろうから
javaスレ的にはmsoffice,excelじゃなくてopenoffice/libraofficeを押すべきじゃないか
297デフォルトの名無しさん:2012/01/22(日) 21:52:57.70

就活中
(p)http://livedoor.blogimg.jp/jin115/imgs/3/1/31a6f8e6.jpg

就職後
(p)http://livedoor.blogimg.jp/jin115/imgs/2/b/2b790359.jpg

街の人(やらせ業者)募集中です

298デフォルトの名無しさん:2012/01/22(日) 23:25:54.90
>>297

これってTVサイド側が勝手にテロップ入れてるだけじゃね-の?(就活中とか通勤する人とか)

答えている側は別にわからねーし。ただ質問に答えているだけだろ?
299デフォルトの名無しさん:2012/01/22(日) 23:39:01.40
windows7でxamppからtomcatとmysqlに接続しようとしてるのですが、うまくいきません

tomcat/libにjdbcドライバのjarを突っ込んだだけなのですが、no suitable driver for jdbc となってしまいます
どこか他に設定するところがあるのでしょうか
300デフォルトの名無しさん:2012/01/22(日) 23:49:05.29
JEditorPaneにHTMLフォームを表示しsubmitボタンでフォームデータを表示するプログラムを
↓を参考に作成しましたが、submitボタンでNullPointerExceptionが発生します。
ttp://www15.plala.or.jp/kichijitsu/java/jeditorpane_submit.html

どこがおかしいのでしょうか?

editorPane.setEditable(false);
editorPane.setContentType("text/html");
editorPane.setText(content);
((HTMLEditorKit) editorPane.getEditorKit()).setAutoFormSubmission(false);
editorPane.addHyperlinkListener(new MyHyperlinkListener());

class MyHyperlinkListener implements HyperlinkListener {
 @Override
 public void hyperlinkUpdate(HyperlinkEvent event) {
  System.out.println("HOGEHOGE"); //←マウスがリンクに重なると表示されます。
  if(event instanceof FormSubmitEvent) {
   System.out.println("PIYOPIYO"); //←submitボタンを押してもここまできません。
   ・・・・
  }
・・・・

↓発生する例外
Exception occurred during event dispatching:
java.lang.NullPointerException
 at javax.swing.text.html.FormView.submitData(FormView.java:376)
 at javax.swing.text.html.FormView.actionPerformed(FormView.java:356)
 at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
 at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
 at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
 at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
 ・・・・
301デフォルトの名無しさん:2012/01/23(月) 00:01:34.38
Exceptionに対するサブクラスの作成方法で困っています。

super(String message)を書けるのは最初の行だけですが、
messageの内容をwhile文を使用して書いて変更したいのですが、どうやればいいのかわからないので、教えてください。

具体的には
public ListException(List<String> list) {
StringBuilder builder = new StringBuilder();
for(String text : list) {
builder.append(list);
}

super(builder.toString());
}

という感じにしたいです。
302デフォルトの名無しさん:2012/01/23(月) 00:21:04.62
superは最初にしか書けないからsuper使うのは諦めろ
自前でthis.message=builder.toString()するかListException呼び出し側でStringにして渡すか
303デフォルトの名無しさん:2012/01/23(月) 00:24:43.51
public ListException(List<String> list) {
super(a(list))
}
static String a(List<String> list) { ...}

で行けるだろ。javaやってる奴ってアホなのねw
304デフォルトの名無しさん:2012/01/23(月) 00:43:16.59
>>302
m9(^Д^)
305デフォルトの名無しさん:2012/01/23(月) 00:55:11.69
>>299
スレの上のほうにあった64bitだと動かない云々?
306デフォルトの名無しさん:2012/01/23(月) 03:25:02.45
http://www.82bank.co.jp/hp/menu000000300/hpg000000227.htm
この教育費資産サービスで、「世帯主」と「お子様2」だけ生年月日を入力して、
「お子様2」の小学校だけラジオボタンを私立を選択してから送信すると、
結果画面が表示されません。

IE、FFどちらも同じです。
こういったバグは、何が原因で起こるものなのでしょうか?
307デフォルトの名無しさん:2012/01/23(月) 08:54:49.11
http://www.j-cast.com/2012/01/22119537.html
フジ反韓流デモに新展開 次のターゲットは「電通」「朝日」「日テレ」
2012/1/22 17:53
東京・汐留で2012年1月21日昼、180人あまりが集まるデモがあった。2011年8月以来続いている、「反フジテレビ・韓
流デモ」の参加者たちを中心としたものだ。
ヤリ玉に上がったのはフジテレビではなく、大手広告代理店「電通」。都内の最高気温は4度、参加者は冷たい雨に
濡れながらおよそ1時間にわたり、シュプレヒコールを上げ続けた。
「電通解体!」叫んで行進
http://www.j-cast.com/images/2011/news119537_pho01.jpg
電通が広告代理店として「すべてのメディアを従え」、過剰な「韓流ごり押し」と「日本のイメージダウン」を行っていると
主張するデモ隊は、
「電通は韓流ブームねつ造商法をやめろー!」
「電通解体! 電通解体!」
と口々に叫びながら、電通本社の周囲を練り歩いた。周辺にある日本テレビや朝日新聞社に対しても「韓流押し」「反日
的」だとして、
「日本テレビは第2のフジテレビになるなー!」
「朝日新聞は自主的に廃刊しろー!」
「お前たち反日企業の前に、私たちは何度でも来るぞー!」
と拳を振り上げた。
2011年夏、俳優・高岡蒼佑(当時・蒼甫)さんのツイッターをきっかけにネットで広がった「反フジ」「反韓流」の声は、
8月21日にはお台場・フジテレビ本社前でのおよそ6000人が参加するデモに発展し、一時はマスメディアでも大きく取
り上げられた。
それから5か月、なぜ「反フジ・韓流デモ」参加者たちのホコ先は変化したのか。デモに初期から参加してきた男性
は、こう語る。
「これまでフジに対しデモを行ってきたが、全くメディアは変わらない。『韓流偏向』の根本はやはり『電通』なんです」

フジテレビデモに行ってみた! -大手マスコミが一切報道できなかったネトデモの全記録 [単行本(ソフトカバー)]
古谷ツネヒラ (著)
http://www.amazon.co.jp/dp/4792604435
http://www.furuyatsunehira.com/img/fdi0000404011a_r1_c1.jpg
308デフォルトの名無しさん:2012/01/23(月) 09:58:54.16
なんかこういうのみてると、慰安婦問題でしつこく反日してる韓国人を馬鹿にできないな。
309デフォルトの名無しさん:2012/01/23(月) 10:56:26.75
>>294
そういう場合はStringBufferを使うべきじゃない。
重複を高速にチェックできる構造で入力の行を保存しておいて、最後に
行を連結すべき。
310デフォルトの名無しさん:2012/01/23(月) 11:22:36.02
Javaで定期的に実行される処理を作りたいです。
人の手で停止しない限り常駐して実行され続けるようにしたいです。

public static void main(String[] args) {
System.out.println("---タスク開始---");
Timer timer1 = new Timer();
timer1.schedule(new Hoge(), 0, 1000); // 実行間隔は1000ミリ秒
}

class Hoge extends TimerTask {
public void run() {
System.out.println(System.currentTimeMillis());
}
}

このmainメソッドを実行すると、mainメソッドが終わってもEclipseのコンソール上では
タイマーのイベントは実行され続けることを確認しました。
これを、別のJavaプログラムから任意のタイミングで停止できる仕組みを作りたいです。

自分が思いつく限りでは、
任意の場所に空のテキストファイル"stop_offer.dat"を作り、
タイマーの毎実行ごとにそのファイルを読み取り、
その中に"1"が書きこまれていた場合に自ら停止する。(stop_offer.datは空に戻す)
別プログラムで、停止させたいタイミングで"stop_offer.dat"に"1"を書き込む。

・・・というのを思いつきましたが、もっと上手い、スマートな方法って無いですか?
311デフォルトの名無しさん:2012/01/23(月) 11:26:42.79
サーバソケットbindしといて特定の通信文受信したら止める。
312デフォルトの名無しさん:2012/01/23(月) 12:01:27.47
FileReaderとBufferedReaderの違いは分かるんですが
FileWriterとBufferedWriterの違いがわかりません

Readerは1文字読み込みと行読み込みができるからBufferedの良さがありますが
書き込みは文字列書き込みできるんだし、入らなくね?と思うわけですが
313デフォルトの名無しさん:2012/01/23(月) 12:12:34.44
バッファリングについては調べればすぐにわかると思うんだけど
314デフォルトの名無しさん:2012/01/23(月) 15:08:18.12
>>303
煽り下手だな
そんなくだらない発言してもレスつけてもJavaの需要とシェアを下げることはできないぞ低脳
315デフォルトの名無しさん:2012/01/23(月) 15:13:01.02
>>307
やっと電通の悪評が広まり始めたか。
だがそのアニメ絵の表紙はやめてくれ。逆効果だ。
デモ隊の持っているプラカードと記載されている文字が小さすぎる。
視力の悪い年寄りにももっと目立つ大きな文字を使うべき。
できればトラメガも使うべき。
そしてできれば持ち運びできる電光掲示板や液晶ディスプレイで
重要なメッセージを通行人に告知すべき。
316デフォルトの名無しさん:2012/01/23(月) 15:14:44.52
>>308
デモをする行為は法的には認められている行為。
そしてお前のようにデモに対して嫌悪感を持っているのは日本人だけ。
他の欧米先進国ではデモを当たり前のようにやっている。
日本だけデモが少ないから、彼ら欧米先進国からみれば
日本人は殆ど誰も世の中に不満を持っていないマゾなんだろうと写って見えると誤解されている。
317デフォルトの名無しさん:2012/01/23(月) 15:17:03.08
>>294
高速化するなら今ならStringBufferよりもStringBuilder
だがすでにStringBuffer(StringBuilderも含めて)を使うべきではないとレスがあるように
別の方法をとるべきStringWriterあたりなんかどうだろうか
318デフォルトの名無しさん:2012/01/23(月) 15:17:29.38
>>312
バッファリングなしで1文字ずつとか1バイトずつとかファイル読み書きすると遅いぞ
できるできないだけの話ならもちろん要らない
319デフォルトの名無しさん:2012/01/23(月) 15:19:10.94
>>312
試しにそれらのクラスをそれぞれ実際に使って比較してみればわかる
データ量があまりにも少なくてPCのスペックがあまりにも高いと大した変化に気が付かないかもしれないが
だが他にもファイルIOを高速化する手段はいくらでもある。探すんだ
320デフォルトの名無しさん:2012/01/23(月) 21:28:36.16
>>310
なんで停止が別のプログラムじゃなきゃ駄目なんだ?タイマー起動してから待機すればいいものを。
321デフォルトの名無しさん:2012/01/24(火) 00:03:49.13
>>316
デモといってもいろいろあるしこの前遭遇したのは車いすなどの身体障害者のバリアフリーなどを訴えるデモで、渋谷の駅周辺や公園通り(NHK)ですら100-200人規模のデモ行進ならにたまにやってる。
しかし、テレビや新聞がデモのことをまったく報道しないから、そういう現実を知らされず今でもNHKに依存してるような人間(クレーマーなどと拒否してる人間)にはデモや抗議の現実を一生理解できないだろうね。
322デフォルトの名無しさん:2012/01/24(火) 00:09:31.90
>>316
というかすれ違いだからあっち行って
323デフォルトの名無しさん:2012/01/24(火) 00:45:07.82
androidなんですけど、
class Data (
private int id ;
private Time day;
private String name;
...set とかget とか
)
でArrayList<Data>にしたとき、id順とかday順とかname順とかにDataを並べかえるのってどういうのが定番でしょうか?
324デフォルトの名無しさん:2012/01/24(火) 01:26:21.87
超素人(教科書)的な考えだとCollectionのListクラスのどれかにして
(とりあえずArrayList?重複しないidみたいのが有る場合は・・・Setだっけか)
そしてsortメソッドでソートする。
その際Comparatorをくっつけたクラスで制御する

質問者とは違うけど俺も現場の人間の定番みたいのを知りたいな
325デフォルトの名無しさん:2012/01/24(火) 01:29:19.63
クイックソートを自分で作るしかない
ArrayListではなくSortMapに入れておけば速度は遅いが楽だよ
326デフォルトの名無しさん:2012/01/24(火) 01:31:50.63
重複する場合があるからMapはだめだったorz
マルチツリーはcommonsの1.4しかない xP
327デフォルトの名無しさん:2012/01/24(火) 01:36:41.46
AndroidにはCollections.sortとかないの?
328デフォルトの名無しさん:2012/01/24(火) 03:26:25.32
>>325
バカは黙っとけとあれほど
329デフォルトの名無しさん:2012/01/24(火) 04:11:38.37
あるよ。というかApache全部入り。
330デフォルトの名無しさん:2012/01/24(火) 06:15:19.60
ttp://java.sun.com/javase/ja/6/docs/ja/api/java/util/TreeMap.html#lastEntry()
TreeMapのjavadocに、「public Map.Entry<K,V> lastEntry()」があるのですが、
いざ、使おうとしたところ、不可視(private)になっています。(.classファイルより。)

javadocとJavaの実装とが違う気がするのですが、どうしてなのでしょうか?
331デフォルトの名無しさん:2012/01/24(火) 07:57:50.25
どこの実装?
手元の環境だとちゃんとpublicになってるけど。
変数でprivate Map.Entry<K,V> lastEntryみたいのがあるのかと思ったけどないし。
332デフォルトの名無しさん:2012/01/24(火) 08:17:54.78
>>324 - >>329
ありがとう
Comparater なんてものがあったんだね
とりあえず、昨日はその都度、データベースにorder byで問い合わせるってことにしたけど、それ調べてやってみます
333デフォルトの名無しさん:2012/01/24(火) 08:36:51.93
中国人が抱く外国イメージ 「韓国人は横柄な歴史ドロボー」

中国にとってトラブルの絶えない韓国へのイメージで最も支持を得たのは「歴史ドロボー」だった。
7.6%で1位となった「歴史の剽窃(ひょうせつ)」について、環球網は「端午の節句や孔子を韓国の文化遺産にするなど、
韓国が中国の歴史を盗んだ」ことが背景にあると解説した。また、韓国人が常に自国製品を「世界一」「最先端」と「自称」する
韓国メディアにより「横柄」(7.3%)が2位となったと紹介した。
第3位は「整形」(6.6%)だった。(「整形」が「韓国ドラマ」3.7%、「美女」2.9%を上回った)
このほか「ケチ」「過激」「民族主義」が3−6%。韓国の「家電・デジタル製品」は1−2%にとどまった。
http://news.searchina.ne.jp/disp.cgi?y=2012&d=0118&f=national_0118_074.shtml
334デフォルトの名無しさん:2012/01/24(火) 11:17:52.45
>>330
見てる Javadoc は 6 で、使ってる JDK は 5 だとか、そういうことだったりしない?
335デフォルトの名無しさん:2012/01/24(火) 12:06:25.59
JSTL のダウンロードがリンク切れで放置されたままなのだが
もう開発はやめてしまったのか?
336デフォルトの名無しさん:2012/01/24(火) 14:20:54.91
Executorsで生成されるスレッドのスタックのサイズを指定する方法はありませんか?
単体のThreadを生成する場合はスタックサイズの指定があるのですが、スレッドプールを扱う
APIで、プールされているスレッドのスタックサイズを指定する方法が分かりませんでした。
よろしくお願いします。
337デフォルトの名無しさん:2012/01/24(火) 14:33:20.70
Map<String, String> m = new HashMap<String, String>();

m.put("a", "b");
m.put("a", "c");

こうしたら、"b"の方はGCの対象になる?
338デフォルトの名無しさん:2012/01/24(火) 14:52:04.93
>>337
"b"は字列リテラルだから、
"b" を使ってるメソッドやクラスに先行して、"b"だけGCされる事はない。

文字列リテラルでないならGC対象にはなる。
実際にどのタイミングでGCされるかは実装依存。
339デフォルトの名無しさん:2012/01/24(火) 15:12:53.23
>>336
自前の ThreadFactory サブクラスを作って Executor 作るときに渡す
340336:2012/01/24(火) 19:39:40.05
>>339
了解です。どうもありがとう
341デフォルトの名無しさん:2012/01/25(水) 02:11:19.87
>>321
そこをJavaを使って解決するんだ!

Javaスレでそういう話をしている以上はスレ違い対策のために責任をもて!
342デフォルトの名無しさん:2012/01/25(水) 04:01:08.33
>>316
一応本当に訴えたいなら、主張を示したバナー・のぼり・プラは文字を小さくせず超巨大にして目立つようにし、
メッセージには熱い思い込め簡潔にし、主張を掲げる者は第三者に対して常に○○なインタレストを発し、それがないなら主張はだれにも伝達されないだろう。
そういうことが出来る人や理解できてる人(超文科系)がいないと原発でも反韓中、反米帝国主義、賃上げ要求デモ・ストなど、どんなデモでもただの烏合の衆でしかない。

ていうかここはジャバすれであってお前のチンカス政治思想を自慢するところじゃないからお前はさっさと雑魚すれに帰れ。
343330:2012/01/25(水) 04:43:18.10
>>331,>>334
ありがとうございます。解決できました。

eclipseで、
ウィンドウ>設定>Java>コンパイラ :1.7
ウィンドウ>設定>Java>インストール済みのJRE :1.5 〜 1.7.0_02
プロジェクト>プロパティ>Javaコンパイラ :↑の設定準拠 or 1.7 or 1.6
Javadocはよくわからないけど英語なので、ネットで 1.5, 1.6 付近をみてました。

指摘を受けて見直してみたところ、パッケージエクスプローラに、「JREシステム・ライブラリーは1.5」の表示がありました。
そういえば、以前1.5を利用したことがあった気がします。
そのときに、ウィンドウ>設定 側のデフォルトのJREを1.5にしたのかと思います。
プロジェクト>プロパティ>Javaのビルド・パス>ライブラリ(追加・削除) :1.7.0_02を利用
としたところ解決できました。
おそらく柔軟性のためにいろいろな設定があるのでしょうけど、あちこちに分散していて非常にとっつきづらい様な気が…。

政治・朝鮮・中国に関する、スレッドと関係ない書き込みやそれにレスする連中(今回は私も該当するが。)にとてもイラつくのですが、
だれがどういう意図でやってるのか知らないのですけど、やめさせることって出来ないのでしょうか?
調べれば誰がやってるかわかりそうな気がするのですが。
2ch運営的にどうでもいいことなのかな? むしろ運営は金もらってるのかな。それならアリかも。
344デフォルトの名無しさん:2012/01/25(水) 05:52:33.78
ttp://funini.com/kei/java/clone.shtml
>正しい clone() の書き方
これをコンパイルすると
tryの中で宣言定義した変数がみえないよ、と、コンパイルエラーになるのですけど、
昔のJavaだとOKだったってことです?
345デフォルトの名無しさん:2012/01/25(水) 06:20:43.23
>>344
いや、昔からダメだろ。この先もずっとだめに違いない。
イメージとしてはこんな感じってことで捉えたほうがいい。
346デフォルトの名無しさん:2012/01/25(水) 06:25:27.61
>>343
運営で荒らし報告しとくかスイトン
347デフォルトの名無しさん:2012/01/25(水) 06:40:01.62
synchronized について教えてください。

ttp://ideone.com/HGA7m
(実行結果は関係ないです。)
166行目からのクラス:TreeMapWrapperと、220行目からのクラス:TreeMapWrappesと、
どちらもTreeMapをHasしているクラスなのですが、同期の仕方が違います。
TreeMapWrapperは、ロックオブジェクトを用いてロックしているため、一度に実行できるメソッドは1つです。
TreeMapWrappesはどうなのでしょうか?
・ひとつのメソッドを同時に実行できるスレッドがひとつ
・ロックオブジェクトの場合と同じく、全メソッドで同期している。

ttp://java.sun.com/javase/ja/6/docs/ja/
ここに載ってますか?
348デフォルトの名無しさん:2012/01/25(水) 07:19:56.47
>>343
政治・朝鮮・中国に関する相談やスレッドと直接関係ない相談、さらにあなたの疑問質問でさえ、この板では誰も関心を持ってないので普通にスルーしてます。
349347:2012/01/25(水) 07:23:26.81
自己解決できました。
synchronizedのメソッドにあるスレッドが入ると、そのオブジェクトのsynchronized メソッドの全てが待たされるみたいですね。

ttp://ideone.com/6Smmp
コンストラクタを少し修正しました。
249行目のSortedMapを元にして、コンストラクトする処理ですが、最中にSortedMapが更新されないとも限りません。
SortedMapをインタフェースに使う時点で、この問題を回避することは出来ないと考えて間違いないでしょうか?★
(呼び出し側で、引数にするMapを同期させる必要がある。)

あともうひとつ。
クラス内のメソッドを全てsynchronizedにする魔法の文言ってないでしょうか?★
アスペクト指向じゃないと無理ですか?
350デフォルトの名無しさん:2012/01/25(水) 07:24:52.26
>>348
>深淵をのぞく時、深淵もまたこちらをのぞいているのだ
351デフォルトの名無しさん:2012/01/25(水) 07:26:31.15
>>346
テクニカルな相談・質問について答えや解決方法を知りたいなら、ジャバ・エンジニアに対してお金を払わないといけません。
352デフォルトの名無しさん:2012/01/25(水) 07:54:29.68
>>346じゃないんだけど、
>>351ってどういうこと?

イニシャライザってあるじゃないですか?
引数不要のインスタンス生成について、初期化・イニシャライザ・コンストラクタのどれを選択すべきかわかりません。
何となくの好みでよいのでしょうか?
353デフォルトの名無しさん:2012/01/25(水) 11:24:24.19
好みでいいよ
354デフォルトの名無しさん:2012/01/25(水) 11:50:23.65
>>347
synchronized メソッドは synchronized (this) { ... } と同じ効果

>>349
間違いない
呼び出し側で考慮しないとムリ
あるいは一般的な SortedMap ではなくスレッドセーフな ConcurrentNavigableMap に引数を限定するとか

魔法の文言はない
Map に限った話なら Collections.synchronizedなんとかMap で包むとか
しかし単純にすべてのメソッドを synchronized するだけですべての問題が片付くわけでもないし
最初からスレッドセーフな Map を使う方がいい
355デフォルトの名無しさん:2012/01/25(水) 19:12:32.38
EclipseでJSPファイルを作る際に、<% %>を使うと
500
The content of elements must consist of well-formed character data or markup

って出てしまいます

解決策を教えて下さい
356デフォルトの名無しさん:2012/01/25(水) 19:28:54.93
>>342
Javaはアメリカが作ったプログラミング言語。
そこで反米帝国主義だの言っても損をするだけ。旧右翼も含めて民族派右翼とか新右翼とか
そこらへんで損をしている。Javaを大事にするエンジニアなら新米保守で行くのが合理的だ。

政治レベルではアメリカと仲良くして特定アジア(中朝韓)とは仲良くしない。それが効率的だ。
技術に弱いが経済に強い連中も基本そういう考えだ。資本主義者の常識だろ?

金(資本)がなければなにも始まらないんだよ。だからこその資本主義だ。
そこを中朝韓シンパのように反米帝国主義だとか反日左翼のように脱原発だとか
赤い旗を振り回した労働組合員のように賃上げ要求だとか騒ぐのは論外。


ここはJavaスレであってお前のチンカス政治思想を自慢・披露するところじゃないから
お前はさっさと雑魚スレに帰れ、といいたいのはこっちのセリフだ。

しかもよりにもよって反米馬鹿・組合馬鹿の賃上げ要求ときた。
お前はJavaエンジニアではないな。Javaの技術を認める者が反米馬鹿とか致命傷だ。
そんなのだからおまえはいつまでたっても成功を収めることができないんだよ。
アメリカを否定してどうやって金を稼ぐつもりだ。
357デフォルトの名無しさん:2012/01/25(水) 19:30:37.12
>>355
つかわない
358デフォルトの名無しさん:2012/01/25(水) 19:37:01.72
>>343
> おそらく柔軟性のためにいろいろな設定があるのでしょうけど、あちこちに分散していて非常にとっつきづらい様な気が…。

そこは慣れだ。汎用性のためにわざとそういうふうにわかれている。
Eclipse wikiにそういう情報がもっとまとまっていればいいのだが…
Eclipse FAQなるページがwikiにあれば。
Wikiができてから10年近く経過しているのに誰も作ろうとしない
というかあのWiki自体、殆ど誰も編集しない
書籍もない


> 政治・朝鮮・中国に関する、スレッドと関係ない書き込みやそれにレスする連中(今回は私も該当するが。)
にとてもイラつくのですが、

> だれがどういう意図でやってるのか知らないのですけど、やめさせることって出来ないのでしょうか?

コピペだったら簡単に規制できる。
だがあのコピペ、前からあった気がする。
コピペじゃなかったら規制は難しい。
この板のSETTING.TXTに水遁の設定が入っていないと、水遁はできない。
あの水遁システムはまだ不安定で何度も紆余曲折している。
最初はSETTING.TXTに水遁の設定記述にNoneがなければどこの板でも水遁できたが
水遁に関する記述がまったくない板は水遁がNoneと同じ扱いになり、水遁できなくなった。
結局水遁できる板は限られた。よってこの板では水遁できない。
以前、忍法帖のIDからIPアドレスを特定するスクリプトを作ってサイトに公開した奴がいて、それで簡単に見破られ、
あわてて使用変更した。ところがその変更もまた見破られてスクリプトが更新されてしまった。
しかたなく忍法帖機能をリセットしたり水遁を無効にしたり、師弟関係っていう機能をつけたりしたが
いろいろ問題が起きて結局、今の形になった。

とにかく、規制議論板に報告せよ。但し報告する内容はコピペや、2chのルールとして掲載されている「鉄の掟」を破っているものに限る。
それ以外は、削除依頼のみで対応すること。
359デフォルトの名無しさん:2012/01/25(水) 19:38:00.18
お前らJSPでスクリプトレット使わないの?
360デフォルトの名無しさん:2012/01/25(水) 19:40:18.89
>>355
まずそのJSPのソースコードを見せるんだ
どこかに文法ミスがあると疑ってみる
361デフォルトの名無しさん:2012/01/25(水) 19:40:53.33
>>359
StrutsとかTapestryとかWicketとかで間に合ってる
362デフォルトの名無しさん:2012/01/25(水) 19:43:30.91
>>360
Eclipseで新しくJSPファイルを作って(初期状態)
 <% %> を差し込むとエラーが出ます
363デフォルトの名無しさん:2012/01/25(水) 19:50:51.84
>>362
ソースを具体的に出して
364デフォルトの名無しさん:2012/01/25(水) 19:57:57.94
>>363

<?xml version="1.0" encoding="windows-31j" ?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0">
<jsp:directive.page language="java"
contentType="text/html; charset=windows-31j" pageEncoding="windows-31j" />
<jsp:text>
<![CDATA[ <?xml version="1.0" encoding="windows-31j" ?> ]]>
</jsp:text>
<jsp:text>
<![CDATA[ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> ]]>
</jsp:text>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-31j" />
<title>Insert title here</title>
</head>
<body>
<% %>
</body>
</html>
</jsp:root>
365349:2012/01/25(水) 19:58:08.31
>>345
ありがとうございます。
Collections.synchronized とか ConcurrentSkipListMap とか、いろいろ勉強になって助かります。
特に、Collections.synchronizedSortedMapで包むというのは、こういうのがあればいいのになぁ、と思っていました。
いろいろ試してみます。
366349:2012/01/25(水) 20:04:31.91
間違えた。
>>354だった。orz.
367デフォルトの名無しさん:2012/01/25(水) 20:16:30.29
xml形式だから<% %>は使えない

なので<jsp:scriptlet>を使う→できました

お騒がせしました
368デフォルトの名無しさん:2012/01/25(水) 20:17:17.93
>>364
こうかな?
<\% %\>
369デフォルトの名無しさん:2012/01/25(水) 20:26:36.12
例えば

inJSP
LogicServlet
outJSP

があったときに
Servlet内のList<sampleBeans>をoutJSPに渡したいときってどうすればいいの?

サーブレット内でrequest.setAttribute("tempList",tempList);
outJSP内で中身を表示させるときにrequest.getAttribute()ってやり方は良くないのか? 
370デフォルトの名無しさん:2012/01/26(木) 01:33:05.98
InputStream はSystem.inを使ってテストプログラムが作れたのですが
OutputStream はSystem.outを使っても上手く作れません

※System系についてはよく理解してません(そういうもんだろってぐらい)


考えているのは凄い初歩的なものでABCを表示させるというものです。
String str = "ABC"
OutputStream os = Output Stream( ここに何を入れればいいのか )
os.write();
os.close();

FileやObjectStreamの説明はよくあるのですが
根本的なところの動作を理解したいというかなんというか
371デフォルトの名無しさん:2012/01/26(木) 01:52:35.45
>>370
OutputStream os = System.out;
os.write('A');
os.write('B');
os.write('C');
372デフォルトの名無しさん:2012/01/26(木) 03:26:24.34
jspっていまそういう書き方すんのね
373デフォルトの名無しさん:2012/01/26(木) 06:12:11.79
Mapとかのメソッドの説明に出てくる「ビュー」って何でしょうか?
複製ではなくて、条件に一致する部分を見ている、ということでOKでしょうか?
374366:2012/01/26(木) 06:26:10.20
SortedMap m = Collections.synchronizedSortedMap(new TreeMap());
   ...
 Set s = m.keySet(); // Needn't be in synchronized block
   ...
 synchronized(m) { // Synchronizing on m, not s!
   Iterator i = s.iterator(); // Must be in synchronized block
   while (i.hasNext())
     foo(i.next());
 }
@Collectionsのjavadoc
もしかして、「synchronized(m)」とすれば、
このブロックにひとつのスレッドがいる限り他のスレッドでは、でmをへのアクセスは待ちになるのですか?
「synchronized(m)」の変数はただのマークかと思ってたのですが。
375374:2012/01/26(木) 06:38:35.21
…普通に考えるとそうなんでしょうけど…。
面倒ですけど、複数スレからアクセスするコードを書いてみます。
376デフォルトの名無しさん:2012/01/26(木) 06:41:48.00
そんなにちゃんと使いたいならスレッドを一から勉強したらどうですか?
377デフォルトの名無しさん:2012/01/26(木) 07:15:00.16
>>364
> <?xml version="1.0" encoding="windows-31j" ?>
> <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0">
> <jsp:directive.page language="java"
> contentType="text/html; charset=windows-31j" pageEncoding="windows-31j" />
> <jsp:text>
> <![CDATA[ <?xml version="1.0" encoding="windows-31j" ?> ]]>
> </jsp:text>
> <jsp:text>
> <![CDATA[ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> ]]>
> </jsp:text>

ほう、今のJSPってこんなタグライブラリの使い方があるんだ
昔と違って随分と変わったなあ
CDATAセクションでさらに入れ子にしてあれこれ記述すると
378デフォルトの名無しさん:2012/01/26(木) 08:02:59.81
>>373
覗き穴から操作するとその操作が元のコレクションに反映される
379デフォルトの名無しさん:2012/01/26(木) 08:40:39.42
サーブレットでディレクトリを作りたいんだけど、成功しないぜ助けてくれ

File newdir = new File("/img/" + name);
if (newdir.mkdir()){
System.out.println("ディレクトリの作成に成功したよ");
}else{
System.out.println("ディレクトリの作成に失敗したよ");
}
380デフォルトの名無しさん:2012/01/26(木) 09:16:07.78
>>379だけど
ファイルの作成はできましたがコンテキストルート直下へ相対パスで指定して作成できない・・・
381 忍法帖【Lv=9,xxxP】 :2012/01/26(木) 12:43:45.20
ninjava
382デフォルトの名無しさん:2012/01/26(木) 13:27:18.24
googleカレンダーアプリのサンプル
ttp://labs.techfirm.co.jp/apps/iguchi/48
を動かすことに成功したのですが
その後に、elispe(インディゴver)で極めて単純なサーブレットを構築したところ

public class CalendarTestServlet extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException {
resp.setContentType("text/plain");
resp.getWriter().println("Hello, world");
CalendarService myService = new CalendarService("exampleCo-exampleApp-1.0");
}
}

java.lang.NoClassDefFoundError: com/google/gdata/client/calendar/CalendarService
が出てしまいます。
myServiceを定義するだけで、初期化しない場合はエラーコードは吐かないようです
ビルドパスは先のリンクと変えてないのですが、サーブレットで使う場合は問題があるのでしょうか
ちなみにJSPでCalendarServiceを初期化した場合も同じでした。
383382:2012/01/26(木) 13:33:27.90
すみません、ビルドパスを変えていないは少し語弊がありました
厳密には
http://java.sun.com/products/javabeans/glasgow/jaf.html より
activation.jar
http://java.sun.com/products/javamail/index.jsp より
mail.jar

その他
App Engine SDK(1.55)
GWT SDK(2.40)
も追加しています

384デフォルトの名無しさん:2012/01/26(木) 20:13:22.38
質問です。
クラス間の配列の受け渡しがうまくいきません。

String型の配列に入力文字を表示させたいです。

Scoreクラスの呼び出し元となるクラスでは
  String[] Sen= new String[10];
を宣言した後に、
try {
Score.choice(Sen);
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
System.out.println(Sen[1]);
としているのですが、nullと表示されてしまいます。

また、Scoreクラスのメインメソッドの最後では、
  System.out.println(Sen[1]);
を行うと格納したい文字列がちゃんと表示されます。

どのようなミスが考えられますか。
大変初歩的な質問ですみませんがよろしくお願いします。
385デフォルトの名無しさん:2012/01/26(木) 20:27:22.28
>>384
呼び出し元があるのに、メインメソッドもある。
何か不吉な…
386デフォルトの名無しさん:2012/01/26(木) 20:27:33.25
Sen[1]に代入前にSystem.out.println(Sen[1])したらnullと表示され、
Sen[1]に代入後にSystem.out.println(Sen[1])したら意図した文字列が表示された、とか。
387デフォルトの名無しさん:2012/01/26(木) 20:32:31.08
384です。

Scoreにおいて代入を行った後にSystem.out.println(Sen[1])
を行っていることを確認しました。
また、呼び出し元のクラスではScoreを行った後にSystem.out.println(Sen[1])
を行っています。

参照をうまくいかせるために何か宣言で気を付けなければいけないことだとか
あったでしょうか・・・。
きっとケアレスミスだとは思うのですが、わかりません。
お願いします。
388デフォルトの名無しさん:2012/01/26(木) 20:34:34.76
コード晒した方が話が早いと思うぞ。
389デフォルトの名無しさん:2012/01/26(木) 21:56:42.59
16bit グレースケール TIFF を読み込みたいんですが、いいライブラリはあいませんか?
JAIではできないようです
390デフォルトの名無しさん:2012/01/26(木) 23:50:51.44
Part inFilePart = request.getPart("inFile");

String inFileName = ほげほげ

inFilePartからファイル名を取り出したいんだがどうしたらいい?
391デフォルトの名無しさん:2012/01/27(金) 00:52:44.53
>>389
ないから書いたほうが早い。JOGLがTIFF読めるからソース参考になる
392デフォルトの名無しさん:2012/01/27(金) 00:54:25.80
POIでExcelのワークシートにJPEGファイルを貼り付けて、
イメージサイズを変更したいのだが、サイズ変更ができない。

以下のURLのサンプルで、pict.resize()を、pict.resize(0.5)にしたが、
イメージサイズが変わらない。
http://poi.apache.org/spreadsheet/quick-guide.html#Images

POIでは無理なのだろうか。
393デフォルトの名無しさん:2012/01/27(金) 03:03:34.95
>>392
http://poi.apache.org/apidocs/org/apache/poi/ss/usermodel/Picture.html#resize%28double%29

resize

void resize(double scale)

Reset the image to the original size.

Please note, that this method works correctly only for workbooks with default font size (Arial 10pt for .xls and Calibri 11pt for .xlsx). If the default font is changed the resize() procedure can be 'off'.

Parameters:
scale - the amount by which image dimensions are multiplied relative to the original size. resize(1.0) sets the original size, resize(0.5) resize to 50% of the original, resize(2.0) resizes to 200% of the original.
394 忍法帖【Lv=10,xxxPT】 :2012/01/27(金) 08:27:47.51
ninjava
395デフォルトの名無しさん:2012/01/27(金) 14:39:44.25
オブジェクトの直列化

//oos
ABC A1 = new ABC(1,"hoge");
ABC A2 = new ABC(2,"hage");
oos.writeObject(A1);
oos.writeObject(A2);

オブジェクトファイル生成後の呼び出し部分

//ois
ABC A2 = (ABC)ois.readObject();
ABC A1 = (ABC)ois.readObject();
// ABC A3 = (ABC)ois.readObject();
A3はエラーになります。

動作からreadObject()って、書き込んだ順に頭から呼び出してObjectを生成するって事?
FIFO的な動き?

クラス丸ごと(メンバ変数やらなんやらを)1ファイル化できて、便利だと思ったけど
FIFOでしかファイルを呼び出せないとなると、色々考えて組まないと
使い難いと思ったり思わなかったり
396デフォルトの名無しさん:2012/01/27(金) 14:45:41.81
> readObject()って、書き込んだ順に頭から呼び出してObjectを生成するって事?
yes
397デフォルトの名無しさん:2012/01/27(金) 17:04:57.94
初歩っぽい質問で悪いんですがよかったら教えてください
public class A{
 a
 public class B{
  b
 }
 public class C{
  c
 }
}
のような形のときにaで作った変数はそのままbとcで使えるってことで良いんですよね?
今試しに作っている中でbとcでそれぞれで別の変数として作ったときには問題ないのですが、aで作るとプログラムが強制終了してしまいます。
調べては見たんですが何か考え方を間違えてますでしょうか?
398デフォルトの名無しさん:2012/01/27(金) 17:08:15.67
なにこの上から目線w
399デフォルトの名無しさん:2012/01/27(金) 17:19:40.97
>>397
調べてみて問題あったなら直せ。
問題ないなら調べ方が悪いか見当違い。
400デフォルトの名無しさん:2012/01/27(金) 17:30:17.28
>>398
丁寧に聞いたつもりが上からになってしまいました、すみません
>>399
わかりました、自分で調べてみますね
401デフォルトの名無しさん:2012/01/27(金) 17:37:26.39
とりあえず生ソースを抜き取れ

そのままならパブリッククラスが複数あるぞ!
と超初歩の警告が出る
インナークラスの質問等
用語をある程度調べてから質問しねーと、エスパー待ちになるぞ
402デフォルトの名無しさん:2012/01/27(金) 19:10:39.44
インナークラスでpublicは問題ない
403デフォルトの名無しさん:2012/01/27(金) 21:21:36.54
>>391
ありがとうございます 調べてみます
404デフォルトの名無しさん:2012/01/28(土) 14:32:51.92
JNIって、javaw.exeのプロセスのJVM外の領域にデータが転送されて実行されるの?
JavaからGPGPUとかやってもデータ転送がボトルネックになって大した意味無いかな?
405デフォルトの名無しさん:2012/01/28(土) 14:47:50.71
使い方次第。
406404:2012/01/28(土) 15:31:43.88
にしても、俺が気になってるのは、JVM>同プロセスJVM外領域>グラボ上の領域
というC言語よりもデータ転送の手間が増えているのかいないのかということ。
JavaからJNI経由でGPGPUをやるとメインメモリ上で無駄に1度コピーが発生するんじゃないかなと思って。
407デフォルトの名無しさん:2012/01/28(土) 15:55:15.52
nio.ByteBufferを使えばほとんどのことはネイティブに丸投げ出来ます。
408デフォルトの名無しさん:2012/01/28(土) 17:44:45.32
EclipseでHTML5のCanvasタグをつかうにはどうしたらいいんだ?
なんてプラグインを入れればいいの?
409デフォルトの名無しさん:2012/01/28(土) 18:32:31.93
nioのbufferこそ>>404の気にしてる二重の転送が発生する。JOGLとかどうしようもないネックになる。
410デフォルトの名無しさん:2012/01/28(土) 19:12:00.05
転送回数減らす工夫すりゃいいだけじゃないの?
411404:2012/01/28(土) 19:19:42.88
転送量が減ってないなら依然致命的なボトルネックになる
膨大なデータに単純処理を行うのがGPGPUに向いた問題だと思うけど、
Javaだと膨大なデータという時点で転送のハンデがあるんじゃないかな
俺はGPGPUについてはまだサンプルコードを動かしてる入門者レベルだけど
412デフォルトの名無しさん:2012/01/28(土) 19:27:17.15
たわごと
413デフォルトの名無しさん:2012/01/28(土) 19:30:03.15
転送1回程度でボトルネックになるようならJNI呼び出しコスト見たら発狂すんじゃね?
414404:2012/01/28(土) 19:31:47.88
Javaでcpu vs gpuの比較コードくれ
ベクトル加算の比較コード書いてみたらgpuはcpuの3倍時間がかかった
i7 920とgtx260で
415デフォルトの名無しさん:2012/01/28(土) 19:37:37.10
そんな高性能なgpuもcpuは持ってないよう><
416デフォルトの名無しさん:2012/01/28(土) 19:38:12.22
そんな高性能なgpuもcpuも持ってないようう><
417404:2012/01/28(土) 19:48:34.73
コードだけ渡してくれれば俺の環境で実行するからお前の持ってるハードウェアは関係無い
418デフォルトの名無しさん:2012/01/28(土) 20:00:52.33
Javaゲーム作成総合スレ
http://toro.2ch.net/test/read.cgi/gamedev/1225185820/

こっちで聞いた方が良いんじゃね?
419デフォルトの名無しさん:2012/01/28(土) 20:34:21.08
ただのGPGPUなら転送速度なんて気にしなくていい
420404:2012/01/28(土) 20:36:46.96
他人に丸投げか。お前らで解決しろ
421デフォルトの名無しさん:2012/01/28(土) 20:48:32.71
他人に丸投げか。>>404が解決しろ
422デフォルトの名無しさん:2012/01/28(土) 21:01:36.12
netbeans7.1でswingを使ったソースコードを書いて実行したところ
mainメソッドがありませんとエラーが出るんですが、ソースコードにはmainメソッドがあって
どうしていいか分かりません。
ぐぐったらswingを使うとこういうエラーが起きることがあるみたいだけど
これはどうやったら解決できますか?
423デフォルトの名無しさん:2012/01/28(土) 21:18:55.28
素直にあきめた方がいいでしょう
424デフォルトの名無しさん:2012/01/28(土) 22:37:59.82
質問です。

Textareaにて表示されている文字があります。
エンターキーを推した際に一番最後の文字だけ削除したいのです。
すでに表示されているTextareaを編集することは可能でしょうか。

現在思いつく方法としましては、
Textareaに表示されている文字列を一度取得し、
配列で最後の文字を削除して表示しなおす方法です。
しかし、なるべくなら文字列に格納する段階を踏みたくはないと考えています。

Textarea上で編集することのできるいい方法はありませんでしょうか。お願いします。
425デフォルトの名無しさん:2012/01/29(日) 04:08:54.55
【中国BBS】2030年に韓国が日本を抜く? 反対意見が多数

中国大手検索サイト百度の掲示板に、「2030年に韓国のGDPは日本を追い越すって本当?」というスレッドが立てられた。
これに対して反対意見が多数寄せられている。

● スレ主:八戒窘6
  アジア開発銀行のデータによれば、2030年に韓国のGDPは日本を追い越すらしい。

● せんとう
  どんな予測も多少なりとも正確ではない所があるが、今回の話はあり得なさ過ぎる。

● satay醤
  本当にデタラメだな。アジア開発銀行によるレポートだって?じゃあバンク・オブ・アメリカや欧州の銀行の結論はどうなのよ?

● 佚名野菜地
  アジア開発銀行ってのは、韓国人が開いているのか?

● Joseph19969
  俺の妄想では、2100年日本人の1人当たりのGDPは46万ドル、韓国は8万だな!

● o落葉不知秋o
  その頃までに韓国という国が残っているかどうかも分からないぞ。

● 梨花陰凉
  死んでも信じない。

● MakiのLove
  なんか最近、韓国のニュースが多くね?
http://news.searchina.ne.jp/disp.cgi?y=2012&d=0128&f=national_0128_091.shtml
426デフォルトの名無しさん:2012/01/29(日) 08:17:46.26
>>424
プログラムからTextAreaの内容いじるのは、
MVC的にはjavax.swing.text.Document経由で行うのがあるべき姿。
部分削除も部分挿入もさくさくできるぞ
427デフォルトの名無しさん:2012/01/29(日) 16:16:42.79
static final char[] Test = ("hoge" + "hage").toCharArray();

この文の意味を教えて下さい

「hogehage」というString型のインスタンスをChar型の配列にいれていくということですか?
428デフォルトの名無しさん:2012/01/29(日) 16:38:43.56
"hogehage" というインスタンスに対して String#toCharArray メソッドを呼び、
その結果で char[] 型の static final 変数 Test を初期化する
429デフォルトの名無しさん:2012/01/29(日) 16:43:20.64
ありがとうございました。
430デフォルトの名無しさん:2012/01/29(日) 19:00:55.69
JLayerでdecodeしたInputStreamを取得するにはどんな形が良いですか?
今こんな形で書いてるけど巧く行かなくて頓挫中。
jl.player使わず、jl.decoderだけで行けるような気がして。

String[] a = {"-url", "http://hogehoge:8080"};
try
{
jlp = javazoom.jl.player.jlp.createInstance(a);
return jlp.getURLInputStream();
}
catch (JavaLayerException ex)
{
return null;
}
431デフォルトの名無しさん:2012/01/29(日) 19:30:11.66
初心者です。

public class A {

private static B b = new B();
private static int[] num = {-1,-1};
private static ArrayList<String> arr_st = new ArrayList<String>();


public static void main(String args[]){
arr_st = b.return_arraylist_string();
}
}

public class B {

public staic ArrayList<Stirng> return_arraylist_string(){

}
}

上記のようにクラスAがBをインスタンス化したときに
return_arraylist_string関数からクラスAのint[]型のnumの値を操作することは出来るのでしょうか?
出来るなら方法を教えて下さい
432デフォルトの名無しさん:2012/01/29(日) 20:11:01.28
num が private でなければできる
private ならそれは A のプライベートなものだから A に渡してもらわない限り外からは見れない
433デフォルトの名無しさん:2012/01/29(日) 20:18:15.79
>>432
ご指摘ありがとうございます。
publicに直した上でどのように参照すればいいのでしょうか?
434デフォルトの名無しさん:2012/01/29(日) 20:20:15.09
A.num[1] とか
435デフォルトの名無しさん:2012/01/29(日) 20:31:11.55
>>434
「.」って「クラス.変数」で使えるものなんですね、今まで「インスタンス.変数」でなければ使えないと思ってました。
ありがとうございました。
436デフォルトの名無しさん:2012/01/29(日) 21:00:54.75
private static 変数はバグの元にしかならんから使わんどけ
437デフォルトの名無しさん:2012/01/29(日) 21:11:31.02
どうしてもやりたきゃスレッドを使いこなせるようになってからだな
438デフォルトの名無しさん:2012/01/29(日) 22:17:59.89
アクセサ通すようにすれば
439デフォルトの名無しさん:2012/01/29(日) 23:25:45.89
初心者なのにジェネリックス表記はしっかりしているんだなw

慣れないうちはジェネリックスなんて無記名だった
440デフォルトの名無しさん:2012/01/30(月) 00:43:15.49
>>425
2100年には韓国も北朝鮮も中国共産党そのものもなくなってるだろうよ

それでもJavaは生きているだろう。C言語も生きているように。
441デフォルトの名無しさん:2012/01/30(月) 03:20:11.35
既存政党の責任と限界。2.1韓国大使館デモ
http://www.nicovideo.jp/watch/sm16828941

【2012.01.29】民主党本部前座り込み抗議活動100日目 -エベンキキャノン編-
http://www.nicovideo.jp/watch/sm16828331

1月28日 民主党・野田政権の即時退陣を求めるデモ
http://www.nicovideo.jp/watch/sm16827791

「日本海/東海併記」米議会にて1票差で否決&朝生の感想
http://www.nicovideo.jp/watch/sm16826674

【民主党】は震災復興なんてする気なし!さっさと叩っ斬ってしまおう!
http://www.nicovideo.jp/watch/sm16826826

字幕【テキサス親父】民主党と環境保護団体はグル!誰が儲かる?
http://www.nicovideo.jp/watch/sm16825471

総統閣下はブータン国王侮辱問題にお怒りのようです【拡散希望】
http://www.nicovideo.jp/watch/sm16822734

反日宣伝工作を迎え撃て!★第35回炸裂トーク
http://www.nicovideo.jp/watch/so16821093

笑ってはいけない朝鮮人の妄想2
http://www.nicovideo.jp/watch/sm16820739

【Part3】財産を奪われ続ける日本人
http://www.nicovideo.jp/watch/sm16820261

我が国の憲法の問題点
http://www.nicovideo.jp/watch/sm16819028
442デフォルトの名無しさん:2012/01/30(月) 16:16:28.13
メソッドローカルなインナークラスが
外部の変数を使う時、なんでfinalなの?
443デフォルトの名無しさん:2012/01/30(月) 16:44:27.06
変更できるとスタックフレームややこしいからじゃね?
444ひみつの検閲さん:2024/07/19(金) 18:08:35 ID:MarkedRes
このレスは権利侵害の申し立てや違法もしくはその疑いにて不可視または削除されました。
削除日時:2012-03-01 08:59:38
https://mimizun.com/delete.html
445デフォルトの名無しさん:2012/01/30(月) 16:56:40.88
通報しました
446デフォルトの名無しさん:2012/01/30(月) 16:58:29.54
>>442
たしかマルチスレッド時にバグ埋め込む危険が高いから禁止。
Java8に入る予定のラムダが変数キャプチャできなくなった理由の一つ。
447デフォルトの名無しさん:2012/01/30(月) 20:15:17.99
hogeがTreeMapのとき、
 hoge.clone();
 new TreeMap(hoge);
で返される値に違いってないですよね?
どっちつかったらいいのですか?どう考えるとよいのでしょうか?
448デフォルトの名無しさん:2012/01/30(月) 20:27:27.76
プリミティブラッパークラスってどうしてfinalなの?
システム時間を記録するクラスが欲しくて、たまたまLongと同じだから継承して中身を空にしようとしたら出来なかった。
なんでだろ?
ネットワーク系もfinalが多いよね?
449デフォルトの名無しさん:2012/01/30(月) 20:45:07.31
継承して中身を盗み見されないようにだろ。
450448:2012/01/30(月) 21:06:52.23
>>449
ゆとりにもわかるように、もう少しやさしく。
451デフォルトの名無しさん:2012/01/30(月) 21:12:17.64
>>448
不変オブジェクトだから。
自由に継承されたら不変オブジェクトにならん。

マルチスレッドだと不変オブジェクトは扱いが楽。
可変オブジェクトは排他制御が必要になったりして扱いが面倒。
452デフォルトの名無しさん:2012/01/31(火) 00:55:49.06
453デフォルトの名無しさん:2012/01/31(火) 04:05:15.66
>ttp://www.ibm.com/developerworks/jp/java/library/j-jtp02183/index.html
可変オブジェクトのキャッシュって毎回どう実装するか悩むんだよな
454デフォルトの名無しさん:2012/01/31(火) 04:36:17.87
クローンして渡せばおk
455デフォルトの名無しさん:2012/01/31(火) 15:21:17.03
NullSafeな操作をする改良ってJava8には取り込まれそうなんでしょうか?
456デフォルトの名無しさん:2012/01/31(火) 15:31:44.64
>>455
少なくとも去年末のJavaOneの発表には入ってなかった。
http://blogs.oracle.com/darcy/entry/project_coin_javaone2011

Java8って2013年夏だっけ?
457デフォルトの名無しさん:2012/01/31(火) 15:34:05.21
>>456
そうっすか。一番待望の機能なんだけどなぁ……
458デフォルトの名無しさん:2012/01/31(火) 16:33:55.81
そういえばJava7の新機能すら知らないことに今気付いた
459デフォルトの名無しさん:2012/01/31(火) 18:08:17.33
>>456
それcoinの話だけじゃん。ちゃんとjavaoneのスライドにある。

>>457
サードのライブラリレベルかJSRの本家のがもうある
460デフォルトの名無しさん:2012/01/31(火) 19:14:03.56
あの記法ってライブラリでなんとかなるようなもんなのか?w
461デフォルトの名無しさん:2012/01/31(火) 19:18:48.13
http://www.j-cast.com/2012/01/30120504.html

「国民的英雄」軍人をアニメで萌えキャラ化 フィンランド大使館「巨乳もパンツも全て把握」
2012/1/30 19:30
フィンランドの軍人「ユーティライネン兄弟」を女体化し、萌えキャラにした「ストライクウィッチーズ」というアニメ作品
がある。駐日フィンランド大使館がこの事実を「全て把握している」と明かし、ネット上でちょっとした騒ぎが起こっている。
発端は2012年1月29日、駐日フィンランド大使館の公式ツイッターアカウントに寄せられた「質問」だった。
12年3月には劇場版の公開も予定
「フィンランドの方々は、ユーティライネン兄弟が日本のアニメで姉妹になり、しかも巨乳になってパンツで戦ってい
る事を知っているのでしょうか。」
あるツイッターユーザーから寄せられたこの質問に対し、駐日フィンランド大使館は「全て把握しております」と回答
した。続いて「中の人(ツイッターを運営している人の意)はそのアニメを見てますか?」という質問に「残念ながら、まだ
拝見したことがありません。これから見てみようと思います」と答え、「是非ご覧ください!素晴らしいアニメですよ」と
言われ「ぜひ拝見させていただきます!」と返信したのだ。
462デフォルトの名無しさん:2012/01/31(火) 20:06:38.52
>>459
@NonNullと勘違いしてね?

>>455のってC#の value?.field みたいな奴でしょ。value != null ? value.field : null と等価な。
463デフォルトの名無しさん:2012/01/31(火) 20:13:32.66
ストパンって撃墜王とモロッコの恐怖の話だったのか・・・
464デフォルトの名無しさん:2012/01/31(火) 20:14:48.51
>>462
Yes、Yes。それです。ついでにNullのときだけ代入するとかの判定もしたいんだけどな。
a = a==null ? ほげ : a;
ってのをシンプルに書ける記法。
465デフォルトの名無しさん:2012/01/31(火) 20:16:22.32
>>462
それがボツってJSR308が入った
466デフォルトの名無しさん:2012/01/31(火) 20:20:34.36
JSR308ってモロに@NonNullじゃね?
467デフォルトの名無しさん:2012/01/31(火) 20:45:16.15
@NotNullって便利なのかね……
手間が増えるだけなんじゃないかって気がするんだけど……
468デフォルトの名無しさん:2012/01/31(火) 22:26:02.99
上手く行けば苦労の半分はライブラリ側が受け持ってくれるんじゃないかと。
あとの半分はIDE任せな感じで。
469デフォルトの名無しさん:2012/01/31(火) 23:09:42.02
ここでいいのかわからんですが、
ボタンをテーブルレイアウトの中のテーブルロウ3つにそれぞれ3つづつ入れた後にmain.xmlの中でandroid:layout_margin="1"をつけたときにDimension "1" in attribute "layout_margin" is missing unit!の表示が出て実行できなくなってしまいます。
ググっては見たんですが理由がわかりません
470デフォルトの名無しさん:2012/01/31(火) 23:26:50.80
>>469
すみません、単位付けてないだけでした
471デフォルトの名無しさん:2012/01/31(火) 23:28:06.48
>>464
言語レベルの変更が議論されてたのは初期だけでプランが決まったら白紙になったよ。
動的言語サポートはAPIレベルでしか操作できないようにしてラムダは8に持ち越し
null周りは305と308に落ち着いて308が8で採用される。9でサポートされる符号なし演算もAPIの追加のみ。
全部大規模な変更はせずにライブラリの変更で対応させるため。>>456は小規模な変更の中で採用されたのがcoin。
ラムダの時に言語仕様変更すると今までのjavaと変わりすぎるとか色々激論になった流れから来てる。
JDK実装レベルでは6と7でかなり変わってる。
472デフォルトの名無しさん:2012/01/31(火) 23:46:16.66
別スレで質問しましたが、このスレに誘導されてきました。

Javaの各種部品の図解どこかにありませんか?


GUI awt swt Swing
API J2SE J2EE
DB  JDBC

↑みたなやつです。
 どこかで見かけたんですが・・・。
473デフォルトの名無しさん:2012/02/01(水) 00:34:15.14
474デフォルトの名無しさん:2012/02/01(水) 08:23:56.55
>>471
ジャバ言語自体の変更はcoinなどコンパイラ文法で対応し、jvmなどジャバ・プラットはライブラリで対応ってことでしょ。
Array.newInstanceが未だにreflectのみでコンパイラのサポートがないのもジャバ言語の設計思想を反映している。
475デフォルトの名無しさん:2012/02/01(水) 08:30:36.37
>>473
これです。ありがとうございます!
476デフォルトの名無しさん:2012/02/01(水) 11:02:43.04
>>474
Array.newInstanceのコンパイラサポートってどんなん?
477デフォルトの名無しさん:2012/02/01(水) 11:05:28.69
配列の動的new
478デフォルトの名無しさん:2012/02/01(水) 11:06:28.16
>>471
>>462>>464って両方とも単なる糖衣構文、VMの変更の必要ない
言語仕様も追加オンリーで既存部分の変更なしで済む。
もろにcoinの守備範囲だぞ。

ついでに、JSR305、JSR308は両方とも2006年、
http://jcp.org/en/jsr/detail?id=305
http://jcp.org/en/jsr/detail?id=308
coinでnullsafe演算子の提案が投稿されたのは2009年
http://mail.openjdk.java.net/pipermail/coin-dev/2009-March/000047.html
479デフォルトの名無しさん:2012/02/01(水) 11:07:14.24
>>477
静的配列生成ってあったっけか?
480デフォルトの名無しさん:2012/02/01(水) 11:22:07.06
709+1 :デフォルトの名無しさん [↓] :2012/02/01(水) 01:17:39.30
>>696
価値が無いじゃない。土方言語だという話だ。
土方言語は、往々にしてライブラリじゃなく
言語のコア実装に対して大きく変更が入る。
土方現場の要望に合わせてどんどん継ぎ接ぎ増築される。
始めからある種の概念を持って設計された言語なら、
土方の要望なんて聞かない。識者同士の判断で
ゆっくりと拡張される。
lispやsmalltalk、Cなんかもいい例だ。
Cもいい加減な設計でつくられた土方向けだろうと
言うかもしれんが、あれはあれで殆ど完成してる。
481デフォルトの名無しさん:2012/02/01(水) 12:07:23.15
質問です。
なぜJavaでは、ジェネリクスを使用した型の配列を禁止しているのでしょうか。
ArrayList<String>[] ary = new ArrayList<String>[3];

もし許してしまった場合に、どのような不都合が生じるのか教えてください。
よろしくお願いします。
482デフォルトの名無しさん:2012/02/01(水) 12:09:02.37
嫌です
483デフォルトの名無しさん:2012/02/01(水) 12:26:15.65
484デフォルトの名無しさん:2012/02/01(水) 12:37:08.99
>>482の無能っぷりが際立つな
口だけ
485デフォルトの名無しさん:2012/02/01(水) 12:42:27.54
 s a g 
486デフォルトの名無しさん:2012/02/01(水) 12:50:03.46
>>483
なるほど!!!
Object[] という裏口から配列の要素を設定できるんですね!
わかりやすい記事の紹介、ありがとうございました!
487デフォルトの名無しさん:2012/02/01(水) 13:06:25.08
 s a g 
488sage:2012/02/01(水) 19:19:46.15
RestfulUrlのサイトを構築しようとしています。

自分が行いたいのはURIの最上位のパスを変数として扱いたいのですが、
そのような事が出来るフレームワークはありますでしょうか?

例.下の様なURLの場合0001がパラメータとして受け取れる。
http/XXX.XXX.XXX.XXX/0001/Test/

RESTEasyとか検証してみたのですが、自分ではうまく設定ができませんでした。

実現できるフレームワークをご教授いただけると助かります。
489デフォルトの名無しさん:2012/02/01(水) 19:23:57.06
>>488
mod_rewrite
490デフォルトの名無しさん:2012/02/01(水) 21:06:03.07
interface A{
void setA();
int getA();
}

abstract class B implements A{
private int x;
void setB(int x){ this.x = x; }
}

class C extends B{
int y;
public void setA(){
y = 100;
}
public int getA(){
return y;
}

}

インターフェースをabstract classの段階で実装して
メソッドの定義を後回しという設計てありえるんですか?

この場合なら class Cの段階でinterface Aを付けるべきだろ?
という突っ込みが常識的とは思いますが
491デフォルトの名無しさん:2012/02/01(水) 21:11:59.04
>>400
言語仕様的には問題ない。
設計的には外から値設定できないsetA()の方が気持ち悪い。
492デフォルトの名無しさん:2012/02/01(水) 21:12:29.26
×>>400>>490
493デフォルトの名無しさん:2012/02/01(水) 21:19:04.91
>>490
AがJava標準APIでBはプロジェクトのアーキテクトが設計・実装して
Cはドカタコーダーが実装、てのはよくある。
494デフォルトの名無しさん:2012/02/01(水) 21:19:23.17
>>490
普通にあると思うよ。
ユーティリティ機能をabstract側に持たせて
コアのインターフェースメソッドはコンクリートクラスで実装ってことでしょ?
495デフォルトの名無しさん:2012/02/01(水) 21:49:40.38
>>471
java8の本命は collection literalと named arg methodでしょ。javafx的にもやっぱり。
496デフォルトの名無しさん:2012/02/02(木) 06:58:57.30
>>490
>この場合なら class Cの段階でinterface Aを付けるべきだろ?
>という突っ込みが常識的とは思いますが
本当にそれがプロジェクトのコードのすべてならね。
おまえさんの挙げたサンプルは意味をなしてないから、
それが常識ってケースもそうでないケースもあるだろうね、
としかいいようがない。
当然、class Cの段階でなんてあり得ないってケースもあるからな。
497デフォルトの名無しさん:2012/02/02(木) 11:03:06.12
publicやprotectedやstaticなどの修飾子の使い分けが難しすぎるんですが
みなさんはどうやってできるようになりましたか
498デフォルトの名無しさん:2012/02/02(木) 11:13:38.35
>>497
public/privateの境目がわかんなくなったら、Javadocを見ながら
インターフェイスを再考することが多いかな。
Javadocが理解しやすければ、自然と良い設計になっていることが多いから。

static は文字列リテラルを定義するときと、ユーティリティメソッド書くときくらい。
protected はほとんど使わない。継承が何重にもなるのは好きじゃないから。
継承だけじゃなくて、委譲もうまく使うといい。
499デフォルトの名無しさん:2012/02/02(木) 13:43:13.42
String str = "HageHage";
snychronized void getHoge(){

}

void getHoge()
snychronized(str){
void getHoge(){
}
}

snychronizedをつけて同期を取る時
メソッドに付けるべきか、オブジェクトにつけるべきかの判断がよくわかりません。
何かアドバイスを〜
500デフォルトの名無しさん:2012/02/02(木) 13:51:36.71
>>499
同期を気にしているということはマルチスレッドでの挙動ですよね?
どの範囲を他スレッドからロックしたいかってのがわかれば自明になると思いますよ。
501デフォルトの名無しさん:2012/02/02(木) 14:24:03.24
private static final EnumClass a = EnumClass.a;

って書いてるのに、

public EnumClass getA(){
return a;//aがnullになる
}

どんな原因が考えられる?
502デフォルトの名無しさん:2012/02/02(木) 14:28:35.86
>>500
メソッドにつければ、メソッド内で扱われるオブジェクトは自動的にオブジェクトロック
具体的にオブジェクトを決め、{}で範囲を決めればメソッドにつけるのと違い
特定のオブジェクトだけがロックがかかるって事だと思ってます。

だから、マルチスレッドを使う組み方なら「とりあえずなんでもsynchronizedを付けちまえよ!」と思うのですが
503デフォルトの名無しさん:2012/02/02(木) 14:30:20.42
>>501
たとえばこんなのとか
http://ideone.com/t5MKC
504デフォルトの名無しさん:2012/02/02(木) 14:31:22.50
>>501
EnumClass.a が null
505デフォルトの名無しさん:2012/02/02(木) 14:34:46.44
>>502
何か勘違いしていないか
メソッドに synchronized を付けるのは、メソッドの中身全体を synchronized (this) { ... } で囲むのと同じ効果
つまり特定のオブジェクト (この場合は this) にだけロックがかかるのは同じ
506501:2012/02/02(木) 14:45:25.91
EnumClass.aがnullになるみたいだが、その原因が分からない。
呼び出し順序によってnullになる要素が変わるみたいだ。

//bがnull
System.out.println(EnumClass.a);
System.out.println(EnumClass.b);
System.out.println(EnumClass.c);

//aがnull
System.out.println(EnumClass.b);
System.out.println(EnumClass.a);
System.out.println(EnumClass.c);

//a,bがnull
System.out.println(EnumClass.c);
System.out.println(EnumClass.b);
System.out.println(EnumClass.a);
507デフォルトの名無しさん:2012/02/02(木) 14:47:06.88
EnumClassを見ないとなーんもわかりません。
508501:2012/02/02(木) 14:55:58.31
とはいえオリジナルのソースコードを投稿する訳にはいかない。
正確には、シングルトンのクラスが3つあって、それぞれが1つEnumClassの要素を持ってる。
System.out.println(SingletonClass1.getInstance().getA());
System.out.println(SingletonClass2.getInstance().getA());
System.out.println(SingletonClass3.getInstance().getA());
とやったときに、この3行のうちの1〜2行がnullになる。
呼び出し順序によってどれがnullになるかが変わる。
509デフォルトの名無しさん:2012/02/02(木) 14:58:41.16
微妙にSingletonになってないんじゃね?
510デフォルトの名無しさん:2012/02/02(木) 14:59:42.11
それじゃ、初期化がまずいとしか言えない。
511501:2012/02/02(木) 15:01:16.62
1スレッドでテストしても発生する。
シングルトンのクラスでは
private static final EnumClass a = EnumClass.a;
と定義されていて、getInstance()の返値がaを持っていない。(デバッガでもnullになってる)
static finalで定義されているのに、ロードのタイミングがきていないみたいだ・・・
512デフォルトの名無しさん:2012/02/02(木) 15:03:05.05
>>511
違う。EmumClass内でのaの初期化が問題
513デフォルトの名無しさん:2012/02/02(木) 15:03:33.02
>>505

String s1 = "hoge";

synchronized void Set(String s1){
String s2 = "hage";

}

この場合s2はロックされるけど、s1は駄目よって事?
514501:2012/02/02(木) 15:05:04.38
>>512
EnumClass.aのコンストラクタで、そのシングルトンクラスのgetInstance()を呼んでいた。
このせいでEnumClassのコンストラクタがデッドロックみたいな事になってたり、失敗してるのかな
515デフォルトの名無しさん:2012/02/02(木) 15:06:12.31
情報小出しのエスパー募集か。
516デフォルトの名無しさん:2012/02/02(木) 15:07:41.46
>>513
排他制御の対象になるのはthis.s1でも引数s1でもローカル変数s2でもないぞ。
517デフォルトの名無しさん:2012/02/02(木) 15:07:54.79
>>514
a は名前的にstaic finalでよさそうだから
public static final Enum a = null; にして
static{
 a = new Enum(ほげほげ);
}
で初期化してみ。
518501:2012/02/02(木) 15:08:17.50
EnumClassのコンストラクタでSingleton1〜3のgetInstance()を呼んでいるのは不要なコードだったので削除したところ、
正常に動作するようになった。

Singleton1〜3クラスのstaticメンバにEnumClassがあって、
EnumClassのコンストラクタでSingleton1〜3のgetInstance()を呼んでいる状態だった事が原因だった。
519デフォルトの名無しさん:2012/02/02(木) 15:08:23.90
↑s/Enum/EnumClass/g で
520501:2012/02/02(木) 15:11:09.57
>>515
2chだと仕方ないだろ
あらゆる環境情報を書くのは無理だから
必要そうな情報のみを書かなきゃいけないけど、その判断は1発で完璧に出来るものじゃない
521デフォルトの名無しさん:2012/02/02(木) 15:45:09.97
>>520
うざい
522デフォルトの名無しさん:2012/02/02(木) 15:46:03.92
>>520
つ『Programming Pearls』
523デフォルトの名無しさん:2012/02/02(木) 19:50:23.21
>>513
みんなしてお行儀よく同じオブジェクトに対してsynchronizedすると排他される。
synchronizedへ入るときと出るときに、全てのデータに関して
スレッドにローカルなキャッシュとスレッド間で共有するメモリとのやりとりが行われるので
一貫して同じオブジェクトに対してsynchronizedすれば、そのオブジェクトはどこの馬の骨でもいい。
なお、同期でガードするのは処理ではなくデータであることに注意。
524デフォルトの名無しさん:2012/02/02(木) 22:18:41.51
CSV出力に関して教えてください。CSV出力部分は、下記のようにCDしています。
通常量のデータの場合は、ダイアログが出た時点でwriter.close()まで完了しているので問題ないのですが、
大量のデータを出力時にダイアログが出た瞬間に、すぐにダイアログのキャンセルボタンを押すと、
サーバ側の処理が「3.CSV出力」のところで止まってしまい、writer.close()までいきません。
(ログで確認しました。)これを繰り返すとoutOfMemoryとなってしまいます。
キャンセルボタン押下時にもwriter.close()を走らせる方法はあるのでしょうか?
finallyとかに入れてみたりしましたが、駄目でした。
何か方法があればご教授のほどよろしくお願いいたします。
(ソースは次のレス)
525524:2012/02/02(木) 22:22:24.90
// CSV出力メイン処理.
public ActionForward outputCsv(ActionMapping map, ActionForm frm, HttpServletRequest request, HttpServletResponse response) throws Exception {

// 1.出力データ取得
csvBean = getOutputData();
response.setContentType("application/octet-stream;charset=Windows-31J");
response.setHeader("Pragma", "");
response.setHeader("Cache-Control", "");

// 2.ファイル名設定
String fileName = "test.csv";
fileName = new String(fileName.getBytes("Shift_JIS"), "ISO-8859-1");
response.setHeader("Content-Disposition", "attachment;filename=" + fileName + "");
PrintWriter writer = null;
writer = response.getWriter();

// 4.CSV出力
editCsv(writer, csvBean);
writer.flush();
writer.close();

return null;
}

// CSV出力処理.
public static void editCsv(PrintWriter wr, ArrayList csvBean) throws Exception {
for (int i = 0;i < csvBean.size(); i++) {
wr.print(csvBean.get(i).getData1());
wr.print(csvBean.get(i).getData2());
wr.print(csvBean.get(i).getData3());
}
}
526デフォルトの名無しさん:2012/02/02(木) 22:28:16.65
ログじゃなくてデバッガをつなげてほんとに行ってないのか調べては?
それとfinallyを使った時の実装plz
527デフォルトの名無しさん:2012/02/02(木) 22:42:28.20
>>526

finally を入れた場合はこんな感じでした。

  // 4.CSV出力
  try {
    editCsv(writer, csvBean);
  } catch (Exception e) {
  } finally {
    writer.flush();
    writer.close();
  }

一応、writer.close();の前と後にログ出力処理を入れて動かした時に
ログが出ていなかったので、writer.close();は動いていないようです。
編集処理(editCsv)が完了したであろう頃にキャンセルを押した時は、
writer.close();までいっています。

528デフォルトの名無しさん:2012/02/02(木) 22:49:30.95
>>527
flush()もIOException投げるんじゃないの?
529デフォルトの名無しさん:2012/02/02(木) 22:50:27.32
>>527
finally に入れるのは close だけにしてみたら?
flush は try の最後にするか、いっそ削ってもいいし。
close 直前に flush 必須みたいなアホな実装になってないかぎり。
530デフォルトの名無しさん:2012/02/02(木) 22:51:08.81
>>529
うん。closeはflushもするはずだもんね。
531デフォルトの名無しさん:2012/02/02(木) 23:08:41.77
>>529
ありがとうございます。
最初は、flushなしで作っていました。
tryの中に入れたりも試しました。
でも、駄目でした。
そもそも、編集の途中(だと思われる時)にキャンセルを押すと、
サーバ側の処理がそこで終わってしまうものなのでしょうか?

キャンセル押下は、
catch(SocketException)で拾えると書いてあったサイトも
ありましたが、これも駄目でした。。。
532デフォルトの名無しさん:2012/02/02(木) 23:10:51.21
>>531
Javaのスペック上かならずfinallyは実行されるからcloseが実行されていない
という誤解はおそらくflushでIOExceptionが発生してるからだって。
533デフォルトの名無しさん:2012/02/02(木) 23:16:51.25
>>532
ありがとうございます。
でも、flushをいれずにcloseしか入れていない時も
closeの前後に入れていたログが出ていませんでした。

534デフォルトの名無しさん:2012/02/03(金) 02:41:51.05
>>527
関連ないかもしれんが、flushやcloseで例外出る可能性があるときは↓こういうふうに書くのが普通じゃね?

  // 4.CSV出力
  try {
    editCsv(writer, csvBean);
  } catch (Exception e) {
  } finally {
    if(writer != null){
      try{
        writer.flush();
      } catch (Exception e) {
      }
    }
    if(writer != null){
      try{
        writer.close();
      } catch (Exception e) {
      }
    }
  }
535デフォルトの名無しさん:2012/02/03(金) 05:46:31.66
あほjaver得意のcatch (Exception e)
536デフォルトの名無しさん:2012/02/03(金) 06:33:25.57
DB接続のときのトランザクション処理を詳しく解説してくれる書籍はありますかね
537デフォルトの名無しさん:2012/02/03(金) 08:00:06.64
>>533
> でも、flushをいれずにcloseしか入れていない時も
> closeの前後に入れていたログが出ていませんでした。

ただの勘違いじゃねーかと思うが。
そうでなければfinallyのcloseの前の処理で例外発生しててcloseまでたどりつけてないのかな?
例えば、ログ出力時にOutOfMemory食らっててcloseまでたどり着けない、とか。
538デフォルトの名無しさん:2012/02/03(金) 09:10:44.87
最初の回答でデバッガにかけろと言われてるのに、無視し続けているのか…
539デフォルトの名無しさん:2012/02/03(金) 09:40:45.30
いつまでもアホがアホを相手にしてるとこうなる
540デフォルトの名無しさん:2012/02/03(金) 14:24:31.48
>>537
finallyでない場所に入れてたときなんじゃないですかね。
まあ、人間自分で失敗して自分で気づかないと成長できないからこれでよかったのかもね。
541デフォルトの名無しさん:2012/02/03(金) 14:41:48.82
Groovyでpublic static finalな定数を参照するにはどうしたらいいの?
例えばThread.MIN_PRIORITYみたいなやつを参照する事は出来るの?
542541:2012/02/03(金) 16:13:17.95
パッケージ名全部かいたらできた
543デフォルトの名無しさん:2012/02/03(金) 18:31:07.68
解決したといえるのか
544デフォルトの名無しさん:2012/02/03(金) 19:18:49.35
synchronized(this){
}
ってやったら、public final List<String> a = new ArrayList<String>();
みたいなpublicなものも他スレッドはアクセスできなくなるよね?このブロックを抜けるまで。
545デフォルトの名無しさん:2012/02/03(金) 19:45:42.37
同一オブジェクトをsynchronizedしてる場合は、
同時に一つのスレッドしかsynchronizedブロックに入れないだけ。

synchronizedしてないならさわり放題。
546デフォルトの名無しさん:2012/02/03(金) 19:46:10.71
>>544
人生をやり直すか、勉強しなおしてこい
547544:2012/02/03(金) 20:05:51.27
同じロックオブジェクトを使っているsynchronizedブロックにしか意味が無いという事?
前にこの理解は間違ってるって言われたんだけど
548544:2012/02/03(金) 20:09:27.83
「ロックされてたら止まるけど自分はロックしない」
という事をやるにはどうしたらいいの?
synchronizedブロックは「ロックされてたら止まるし、自分が処理してる間他のスレッドを止める」
ものだと思うけど
549544:2012/02/03(金) 20:17:43.20
volatileがついていない変数AとBがあって、
スレッド1でAに書き込み、Bに書き込み
スレッド2でAを読み込み、Bを読み込み
とした場合、スレッド2がAでは古い値を見ていてBでは最新の値を見ている、
という事はありうる?
550デフォルトの名無しさん:2012/02/03(金) 20:32:30.60
volatileついててもありうる。
551デフォルトの名無しさん:2012/02/03(金) 21:34:31.38
> 自分が処理してる間他のスレッドを止める
だからそれはsynchronizedで同じオブジェクトを使ってロックを取得しようとするスレッドだけだって
552デフォルトの名無しさん:2012/02/03(金) 22:14:52.10
>>548
> 「ロックされてたら止まるけど自分はロックしない」
ロックされてたら止まる、ロックされてなければ止まらないまでならやろうと思えばできる。

ロックされてない事を確認した次の瞬間に他のスレッドがロック獲得して、
こちらが参照しようとしてるオブジェクトを弄り始める可能性もあるわけだし、
普通はそれだけできても意味ないと思う。
553デフォルトの名無しさん:2012/02/03(金) 22:32:12.03
JVMかEclipseのバグとしか思えない現象に遭遇したんだが・・・
再現条件も分からないが俺の目の前のコードでは100%再現する。
byte[] objA があって、
スレッドAでobjA.clone()を実行する一行を入れるかどうかで
スレッドBでのobjAの内容が変わる事がある
おかげで、全く無意味なobj.clone()という返値を受け取りもしない1行を入れるとバグが消えて、
外すとバグが出るという状態・・・。
まあ伝わらないだろうけど、俺もわかりやすく書けない

JVMの何かの最適化がバグを生んでるのかな
554デフォルトの名無しさん:2012/02/03(金) 22:33:50.58
waitとnotifyの話を聞きたいだけじゃね?
初心者がスレッドを勉強中の質問なら、生産者消費者問題のことだろ。
555デフォルトの名無しさん:2012/02/03(金) 22:35:30.93
>>553
学会に発表しろ
556デフォルトの名無しさん:2012/02/03(金) 22:35:53.56
>>553
再現条件限定できたらレポよろ
557デフォルトの名無しさん:2012/02/03(金) 22:57:27.38
>>553
volatile指定しろ
558デフォルトの名無しさん:2012/02/03(金) 23:03:03.40
スピンロックとミューテックスの話で3時間も使うなよw
559デフォルトの名無しさん:2012/02/04(土) 00:03:35.86
Javaのどの実装がスピンロック使ってるんだ?
560デフォルトの名無しさん:2012/02/04(土) 09:01:36.91
JVMのバグなわけないだろ。
君の期待するオレオレ仕様のVM実装するために何が必要か考えてみてくれ。
配列要素1個1個操作するたびにコア間で暗黙に同期せにゃならんのか?
561デフォルトの名無しさん:2012/02/04(土) 13:07:15.96
すごいなあ
昔の人がわからないものは全部神か悪魔のせいにしたみたいにバグのせいにするなあ
562デフォルトの名無しさん:2012/02/04(土) 13:51:24.25
>>544
人生をやり直すか、勉強しなおしてこい
563デフォルトの名無しさん:2012/02/04(土) 13:52:57.15
Javaのバグは今までも結構あったよ。
同じコードなのに、JITコンパイルを通すと結果が変わるとか。

まあ、>>553のコード晒してくれないと何とも言えん。
単にプログラミングが下手なだけかもしれない。
564デフォルトの名無しさん:2012/02/04(土) 13:57:13.83
      / ̄ ̄ ̄ ̄ ̄ ̄ \
/⌒ヽ  / ''''''     ''''''   ヽ
|  /   | (●),   、(●)   |
| |   |    ,,ノ(、_, )ヽ、,,     |
| |   |    `-=ニ=- '      |
| |   !     `ニニ´      .!      馬具じゃ、馬具の仕業じゃ!
| /    \ _______ /
| |    ////W\ヽヽヽヽ\
| |   ////WWWヽヽヽヽヽヽヽ
| |  ////WWWWヽヽヽヽヽヽヽ
E⊂////WWWWWヽヽヽヽヽヽヽ
E////         ヽヽヽヽヽヽヽ
| |  //WWWWWWWヽヽヽヽヽヽヽ
565デフォルトの名無しさん:2012/02/04(土) 14:02:30.66
このコンピュータにバグが住みついています。至急バルサンを焚いてください。
566デフォルトの名無しさん:2012/02/04(土) 14:12:22.52
ばるさん?
567デフォルトの名無しさん:2012/02/04(土) 15:59:14.80
何かで見たな…

『達人プログラマー』だ p.97
> 昔、あるシニア・エンジニアがSolarisのseletシステムコールにバグがある、と確信するような
> 問題に遭遇しました。他のネットワーク・アプリケーションは問題なく動いているから、といった
> 説得や論理でも彼の心は変わりませんでした。彼はいろいろな理由をつけ、何週間もかけて
> 問題と格闘しましたが一向に解決の兆しは見えませんでした。結局、彼は腰を落ち着けて
> selectのマニュアルを読むこととなったのです。そして、ものの数分もしないうちに問題を
> 解決することができたのです。その後我々は、誰かがシステムに問題があると言いだした時に、
> 問題は我々の側にあるということをやんわりと諫めるために「selectがおかしい」という
> 表現を使うようになったのです。
568デフォルトの名無しさん:2012/02/04(土) 20:43:47.07
569デフォルトの名無しさん:2012/02/05(日) 02:50:52.73
Eclipseの動作で高パフォーマンスを得られるJavaVMがあれば、
どなたかご教示いただけませんか?
(GCJ/GIJはメモリ使用量が高すぎるという理由で使用できません)
570デフォルトの名無しさん:2012/02/05(日) 13:10:35.94
質問です

A〜Gの一文字をランダムで表示し、F5を押すと更新するプログラムを作りました。
これを、F5を押さずに所定時間(例えば5秒)経ったら自動更新するようにしたいのですが、
どう書けばいいのでしょうか?
当方初心者で行き詰ってしまい質問させていただきました。
教えていただけると助かります。

ちなみに、F5で更新するプログラム↓↓

<p style="font-size:1000%">
<script language="javascript">
<!--
var txt = new Array();
txt[0]="A";
txt[1]="B";
txt[2]="C";
txt[3]="D";
txt[4]="E";
txt[5]="F";
txt[6]="G";
mmax = 7; //メッセージの行数を数字で
txtno = Math.floor(Math.random() * mmax);
document.write(txt[txtno]);
//-->
</script>
</p>
571デフォルトの名無しさん:2012/02/05(日) 13:14:06.01
>>1
> JavaScript, Ajaxの質問は、ここでは受け付けていません。
572デフォルトの名無しさん:2012/02/05(日) 13:18:01.27
>>571
JavaとJavaScriptの違いも分からないアホでした
すんません
573デフォルトの名無しさん:2012/02/05(日) 17:18:14.73
新しいJAVAの教科書という教本で初歩から勉強してるのですがfor文の項目・・・
0〜9の内偶数だけを足して出力せよという練習問題で以下の構文を組んだのですが、エラーになります
どこが間違ってるのかまったく判らず、悩んでます 手解きお願いします

class ForTest3a {
public static void main(String[] args) {
int sum=0;
fou (int i=0; i<10; i++) {
if((i%2)==0) {
sum = sum + i;
}
}
System.out.println("合計は" + sum + "です");
}
}

以下、エラー内容
ForTest3a.java:4: '.class' がありません。
fou (int i=0; i<10; i++) {
^
ForTest3a.java:4: 型の開始が不正です。
fou (int i=0; i<10; i++) {
^
ForTest3a.java:4: 文ではありません。
fou (int i=0; i<10; i++) {
^
ForTest3a.java:4: ';' がありません。
fou (int i=0; i<10; i++) {
^
エラー 4 個

574デフォルトの名無しさん:2012/02/05(日) 17:21:24.97
本気で判らないのか逆質問したくなるレベルだが
fo「u」じゃなくてfo「r」だろ
575デフォルトの名無しさん:2012/02/05(日) 17:31:20.73
おお!!すいません 数時間悩んでたのがかなり恥ずかしいです><;
けどやっと先に進めます ホントにありがとうございました!!
576デフォルトの名無しさん:2012/02/05(日) 18:35:46.64
フォーウwww
577デフォルトの名無しさん:2012/02/05(日) 20:15:28.53
クラス内に突如でてくるstatic節って何の用途で使うんですか?

static{
・・・・
}
578デフォルトの名無しさん:2012/02/05(日) 20:21:14.97
静的初期化子でぐぐれ
579デフォルトの名無しさん:2012/02/06(月) 00:40:40.78
>>576
っせえ
黙ってろ
580デフォルトの名無しさん:2012/02/06(月) 01:01:44.94
>>576
ふいたw
581デフォルトの名無しさん:2012/02/06(月) 02:05:46.44
fou

釣りネタとしても、笑えたから許せるwwwwww
582デフォルトの名無しさん:2012/02/06(月) 02:11:06.72
スーパースーパークラスのコールの仕方を教えて下さい。

class A{ void f(){...}}
class B extends A{ @Override void f(){...}}
class C extends B{ @Override void f(){ super.super.f();}

という事がしたいのですがsuper.super.なんて使い方はできませんし
A.super.f();なんて書き方もできません。

AとBはswingの中で定義されているクラスなので変更できるのはCのみです。


良い方法があったら教えて下さい。よろしくお願いします。

583デフォルトの名無しさん:2012/02/06(月) 06:54:20.31
ございません
584デフォルトの名無しさん:2012/02/06(月) 08:26:05.26
>>582
class Bのf()中でsuper.f()を呼ぶしかないだろう
というか、継承とは、直上のクラスの機能を受け継ぐんだから
普通はスーパークラスであるclass Bで事足りるはず
にもかかわらず、class Aのf()がほしいということは、
そもそも、class Cはclass Aを継承せねばならなかったということに
ほかならない

以上
585デフォルトの名無しさん:2012/02/06(月) 09:36:19.51
メソッド内の一部を{ }でかこってる部分って何のためにあるんですか?
586デフォルトの名無しさん:2012/02/06(月) 09:36:58.72
>>585
どれのことだかわからないので、コードをさらせ
587デフォルトの名無しさん:2012/02/06(月) 09:41:46.48
>>585
典型的にはローカル変数のスコープを限定するため。
588デフォルトの名無しさん:2012/02/06(月) 09:44:30.16
>>582
Aでのf()の実装をprotectedなfImpl()に書き写して、
AやCのf()はAのfImpl()に丸投げとか、たまーに見かける設計だが
オススメできるかどうかは用途を聞かないとなあ。

Swingの話なんだよね?fireで始まるprotectedなメソッドとかは見た?
589デフォルトの名無しさん:2012/02/06(月) 14:23:49.87
>>584
だよね。
もしどっちも必要なら委譲で使うんだね。
590デフォルトの名無しさん:2012/02/06(月) 18:31:26.83
>>583
わかりました
>>584
普通はスーパークラスであるclass Bで事足りるはず(→論理的に無理)
にもかかわらず、class Aのf()がほしいということは、
そもそも、class Cはclass Aを継承せねばならなかったということに
ほかならない
→結局こうして開発を進めてます。
>>588
実はf()はaddImpl()という名前でその丸投げしたものに問題があるので
不可能です。
591デフォルトの名無しさん:2012/02/06(月) 18:36:24.04
できない事がわかり別の解決手段へ向かえたので助かりました。
ありがとうございました。
592デフォルトの名無しさん:2012/02/06(月) 23:18:48.08
swingでデジタル時計のような物を作っています.
ウィンドウサイズを変更した際に,文字の大きさも変更するには
1. ウィンドウサイズ,フォントサイズの初期値を設定
2. ウィンドウサイズの変更(拡大率)に併せてフォントサイズを変更
という手順以外に,何か無いでしょうか?

一応
1. ウィンドウサイズを取得
2. px->ptへ単位変換してフォントサイズを推定、変更
というロジックも考えてみたのですが、うまくいかない…
593デフォルトの名無しさん:2012/02/06(月) 23:46:14.10
自分でGraphics2Dにフォントカキカキするなら、
アフィン変換(AffineTransform#getScaleInstance)に拡大縮小処理を
丸投げする方が楽だと思うが。
594デフォルトの名無しさん:2012/02/06(月) 23:56:14.81
俺ならポイントを少しずつ大きくしていってはみ出したところでストップするようにする
595デフォルトの名無しさん:2012/02/07(火) 00:03:14.96
Fontはさ、結局整数で指定するんだよねえ
596デフォルトの名無しさん:2012/02/07(火) 06:06:03.92
2chのGZIPで圧縮されたファイルを取得し、解凍、出力しようとしていますが
文字化けてしまいます。
何がいけないのでしょうか?
環境は Ubuntu 11.04 java version "1.6.0_23" です。
よろしくお願いいたします。

以下ソースコード
-----------------------------------------------------

String dat_url = "http://toro.2ch.net/tech/dat/1328276597.dat";
String host_url = "toro.2ch.net";

URL url = new URL(dat_url);
HttpURLConnection con = (HttpURLConnection)url.openConnection();
con.setReadTimeout(10000);
con.setUseCaches(false);
con.setRequestMethod("GET");
con.setRequestProperty("Host", host_url);
con.setRequestProperty("User-Agent", "Monazilla/1.00");
con.setRequestProperty("Accept-Encoding", "gzip");
con.setRequestProperty("Connection", "close");

// 接続
con.connect( );

597596:2012/02/07(火) 06:07:03.22
>>596の続き

// レスポンスコード
int response_code = con.getResponseCode();

// Datが正常に取得できたら, GZIPを解凍して出力
if( response_code == con.HTTP_OK ){
 GZIPInputStream gis = new GZIPInputStream( con.getInputStream() );
 InputStreamReader isr = new InputStreamReader( gis, "UTF-8" );
 BufferedReader br = new BufferedReader( isr );

 // 出力
 String line;
 while( (line = br.readLine()) != null ) {
  System.out.println(line);
 }

 br.close();
}
598デフォルトの名無しさん:2012/02/07(火) 07:28:12.19
レスポンスヘッダのContent-Typeに文字コード渡されてるのに無視してないか?
599デフォルトの名無しさん:2012/02/07(火) 07:32:55.54
Javaの外の世界のShift_JISは
Javaの世界だとWindows-31JとかMS932にしないと、
IBM拡張文字等が変換できないので注意。
600596:2012/02/07(火) 07:37:25.77
>>598
ありがとうございます。
2chはShift_JISなので、encode="Shift_JIS"としたら文字化けが解決されました。

ただ、丸数字(@、Aなど)の文字化けは残ってしまいました。
比較のため、Ubuntu上でテキストにShift_JISで丸数字を書き、
それをnkfでUTF-8に変換しましたが、丸数字は文字化けしませんでした。

Javaの仕様なのでしょうか?
601デフォルトの名無しさん:2012/02/07(火) 08:15:32.66
javaのShift-JISには@がないから
602デフォルトの名無しさん:2012/02/07(火) 09:59:22.20
Vector<Object> vc = new Vector<String>();

コンパイルエラーになるけど、なんでこれが駄目なの?
ジェネリクスをObjectにすりゃ〜、通ってもよさそうな希ガス

混乱するからこんな書き方はする訳がないけどさ
603デフォルトの名無しさん:2012/02/07(火) 10:04:14.69
604デフォルトの名無しさん:2012/02/07(火) 10:18:43.33
でもこれはOKなんだよな

Vector<? extends Object> vc = new Vector<String>();
605デフォルトの名無しさん:2012/02/07(火) 10:44:51.73
それだと vc.add("string") とかできなくなるから。
606596, 600:2012/02/07(火) 11:35:59.39
>>601
ありがとうございます。

現在、Shift_JISをgzipで圧縮したファイルを
Java上で解凍、読み取りをして、Stringにぶち込んでいますが、
Javaが扱えない文字を含んだファイルを、Javaに通した時点でアウトということでしょうか?

Shift_JISのgzip圧縮ファイルの取得、解凍、文字コード(Shift_jis -> UTF-8)は
Linuxのコマンドとかに任せて、
それ以降からJavaで処理する、というを思いつくのですが
これが一番問題が無い(スマート)ですか?
607デフォルトの名無しさん:2012/02/07(火) 11:40:33.17
608デフォルトの名無しさん:2012/02/07(火) 18:00:49.98
このコードでOneクラスのget()はインライン展開されますか?
public class VariousTest {
private class One{
private String a = "One";
protected String get(){
return "One";
}
public String getStr(){
return get();
}
public String getStr2(){
return a;
}
}

private class Two extends One{
private String a = "Two";
@Override
protected String get(){
return "Two";
}
}

@Test
public void test() {
One a = new Two();
System.out.println(a.getStr());
System.out.println(a.getStr2());
System.out.println(a.a);
}
}
609デフォルトの名無しさん:2012/02/07(火) 18:03:01.43
javacの時点ではされない。
実行時にはされるかもしれない。
610608:2012/02/07(火) 18:05:54.58
私が気になっているのは、get()がprivateならインライン展開されるけど、
protectedだからされないんじゃないか、という事です。
子クラスによって内容を書き換えられる可能性があるせいで。
611デフォルトの名無しさん:2012/02/07(火) 18:17:09.54
子クラスと言えど親クラスの処理は書き換えられませんよ。
子クラス側の処理は親クラスと違うものにできるでしょうが。
612608:2012/02/07(火) 18:21:52.91
>>611
まあそうですが、getStr()のバイナリを子クラスと共有してメモリを節約するか、
子クラスと異なるバイナリを持ってget()をインライン展開できるようにするか、
どちらかしか選べないと思うんですよ。
get()がインライン展開されないのなら、TwoはOneのgetStr()をそのまま使えますから。
613デフォルトの名無しさん:2012/02/07(火) 19:41:01.62
>>612
実行時にインライン展開するから、やろうと思えば
ある瞬間はTwo#get()をインライン展開、
ある瞬間はOne#get()をインライン展開、
とかできるよ。
614596, 600:2012/02/07(火) 22:13:52.31
遅くなりました。

>>607
気づきませんでした。
>>599
ありがとうございます。
MS932にしたら丸付き数字が文字化けせずに出力されました。
615デフォルトの名無しさん:2012/02/07(火) 23:47:15.18
java se 6 のサポート期間を教えて下さい。
616デフォルトの名無しさん:2012/02/07(火) 23:59:39.23
617デフォルトの名無しさん:2012/02/08(水) 00:26:22.93
618デフォルトの名無しさん:2012/02/08(水) 01:52:19.26
>>617
何これ
ConcurrentHashMapと何が違うの
619デフォルトの名無しさん:2012/02/08(水) 10:02:27.68
public static void main(String[] args){
System.out.println(Thread.currentThread().getName());
Thread01 th01 = new Thread01();
th01.start();
}

class Thread01 extends Thread{
public void run(){

}
}

th01.start()でスレッドが開始されますが
System.out.println();
new Thread01();
等もmainスレッドの管理下で動作していると考えるべきなんですかね?

常にmainスレッドが動作するので
new Threadをして動かすという時点で、スレッドを複数動かしたのと同じという認識でいいんですかね?
620デフォルトの名無しさん:2012/02/08(水) 10:42:30.76
println や new Thread01 はまだ main スレッド
start した時点で 2 つめのスレッドが動く
621デフォルトの名無しさん:2012/02/08(水) 10:51:18.86
mainメソッド抜けるとメインスレッド終了するけどね。
622デフォルトの名無しさん:2012/02/08(水) 17:07:51.61
public static void main(String[] args){ ... }

staticとString[] argsの意味が未だに分からんけどJAVA歴1年迎えました
623デフォルトの名無しさん:2012/02/08(水) 17:36:03.70
それはよかったね
624デフォルトの名無しさん:2012/02/08(水) 18:37:10.95
整数の2次元座標(int x, y)を時計回りに90度回転させたいんですが
なにかいいライブラリとかサンプルとかありますか?
小数値にならないやつで。
625デフォルトの名無しさん:2012/02/08(水) 18:43:43.85
>>624
それと同じことを小6の甥っ子が自力でやってたよ
626624:2012/02/08(水) 18:48:09.12
すでに存在するライブラリ等を活用したいのですが有益な情報を知っていたら教えて下さい
627デフォルトの名無しさん:2012/02/08(水) 18:52:04.34
3行でできることに大層なライブラリなんか要らん
int oldx = x, oldy = y;
x = -oldy;
y = oldx;
628デフォルトの名無しさん:2012/02/08(水) 19:24:40.63
>>624
まずは右手系か左手系かはっきりしてもらおうか
629 ◆QZaw55cn4c :2012/02/08(水) 20:22:39.04
>>624
sin cos
-cos sin
じゃだめなの?
630デフォルトの名無しさん:2012/02/08(水) 20:24:10.48
90度
631デフォルトの名無しさん:2012/02/08(水) 21:53:21.94
java appletや2dでアニメーションやエージェントとして使うためにdukeのアイコンやらを探してるのですが、そういうジャバ系の素材が置いてあるお薦めのサイトはないでしょうか?

SunがJavaをGPLの下でオープンソース化すると発表したのに合わせて、Javaのマスコット「Duke」もオープンソース化された。ただし、ライセンスはGPLではなくBSDだ。
Sunは「われわれが求めるのは、われわれと同じ敬意を持ってDukeを扱ってくれることだけだ」としている。
632デフォルトの名無しさん:2012/02/09(木) 00:20:05.47
hogeActionという名のただのメソッド・・・。

staticなsetter,getter・・・。

jspからのビジネスロジックの呼び出し・・・。

なぜか文字列リテラルで」Strign結合された、
メソッドの大量呼び出し・・・。

もう死んでもいい出つか?
633デフォルトの名無しさん:2012/02/09(木) 00:21:32.51
× なぜか文字列リテラルで」Strign結合された、
メソッドの大量呼び出し・・・。

○ なぜか文字列リテラルでSQLを組み立てているロジックの、
大量呼び出し・・・。
634デフォルトの名無しさん:2012/02/09(木) 00:22:59.73
職場の話なのか?
学校か何かのグループ制作の話なのか?
635デフォルトの名無しさん:2012/02/09(木) 00:56:19.66
要約すると、死んでもいいですかっていう相談でしょ?
いいけどGCされるようにしろよ。
636デフォルトの名無しさん:2012/02/09(木) 01:09:56.25
set or getするフィールドがstaticじゃないと仮定した場合、staticなgetter,setterだとなにが困るの?
637デフォルトの名無しさん:2012/02/09(木) 01:34:50.63
>>636
そもそもスタティックなセッターゲッターがスタティックなメンバをいじれない
というかどれをいじっていいかわからない
638訂正:2012/02/09(木) 01:35:55.97
>>636
★★Java質問・相談スレッド151★★
http://toro.2ch.net/test/read.cgi/tech/1326557705

>>636

そもそもスタティックなセッターゲッターがスタティックでないメンバをいじれない
というかどれをいじっていいかわからない
639デフォルトの名無しさん:2012/02/09(木) 01:41:46.04
>>636
Person tarou = new Person("太郎");
Person hanako = new Person("花子");

Personに仕事を与えるsetJob(String)メソッドが非staticであれば、
tarou.setJob("くつみがき");
hanako.setJob("さらあらい");
というように、それぞれのインスタンスに値を設定できる。

これをstaticにすると、
Person.setJob("ぷろぐらま");
という書き方になるが、
これだと太郎の仕事なのか花子の仕事なのか分からない。

>>638の言ってる「どれをいじっていいかわからない」というのはこういうこと。
太郎のフィールドをいじったらいいのか、花子のフィールドをいじったらいいかわからないということ。
640636:2012/02/09(木) 07:17:17.11
なるほど。実際のコードを例に説明して頂いたおかげでしっくりきました。

>>638
>>639
ありがとうございます。
641デフォルトの名無しさん:2012/02/09(木) 09:00:41.47
642デフォルトの名無しさん:2012/02/09(木) 10:44:07.94
class Hoge{
public static void main(String args[]){
ArrayList<A> list = new ArrayList<A>();
}

public static void myFunc(ArrayList<B> list){
list.add(new B());
list.add(new C());
}

}

class A{ ・・・ }
class B extends A{ ・・・ }
class C extends B{ ・・・ }

ジェネリックスの質問ですが、Superクラスを指定すれば子クラスは問題なく設定できるなら
myFuncの部分を
public static void myFunc(ArrayList<? extends B> list)
と書く必要がないと思います。

ジェネリックスのワイルドカードって必要なん?
643デフォルトの名無しさん:2012/02/09(木) 11:03:30.13
public static void func1(List<B> list)
public static void func2(List<? extends B> list)

List<C> list = new ArrayList<>();
これをfunc1に放り込むとエラー。
func2には放り込むことができる。

なんかぜんぜん違うこと回答してる?
644デフォルトの名無しさん:2012/02/09(木) 11:16:49.93
>>642
例えば

ArrayList<Integer> integerList = ............... ;
ArrayList<String> stringList = ............... ;

のようなものがあったとき、

ArrayList<Object> objectList = new ArrayList<Object>();
objectList.addAll(integerList);
objectList.addAll(stringList);

のようなことができる
645デフォルトの名無しさん:2012/02/09(木) 11:26:48.74
ジェネリクスマスターした。
646デフォルトの名無しさん:2012/02/09(木) 11:29:10.42
そうか。おめでとう。
647デフォルトの名無しさん:2012/02/09(木) 13:55:42.66
>>644
解答になってなくねw
ワイルドカードが不要である事を再度証明しただけ?
648デフォルトの名無しさん:2012/02/09(木) 14:00:32.43
addAll はどんなマジックを使って引数に ArrayList<Integer> や ArrayList<Integer> を取れるのか?
それがワイルドカードだ
649デフォルトの名無しさん:2012/02/09(木) 14:01:29.37
ArrayList<Integer> や ArrayList<String> だった
650デフォルトの名無しさん:2012/02/09(木) 14:19:14.10
ワイルドカード【wild card】

ファイル名やディレクトリ名を指定するときに使う、「任意の文字」を意味する特殊文字。
「*」が任意の長さの任意の文字を、「?」が任意の1文字を意味する。「*」「?」はWindowsとUNIXの両方で使用できるほか
UNIXではこの他にいくつかワイルドカードが定義されている。
651デフォルトの名無しさん:2012/02/09(木) 14:33:34.09
得意げに何の役にも立たない情報引っ張ってきたな
652デフォルトの名無しさん:2012/02/09(木) 16:52:58.68
>>648
それはワイルドカードでなくスーパークラス(継承)の特性じゃね?
ジェネリクスワイルドカードは
<? extends className>
<? super className>
の事だと思ったJava歴5ヶ月の素人
653デフォルトの名無しさん:2012/02/09(木) 17:17:03.28
>>641
SUN Design Guidelines などは以前から知ってましたがそういったUXデザインの方針や理論じゃなくて、ジャバを題材にしたアイコンや画像などのリソーシーズを探してます。
654デフォルトの名無しさん:2012/02/09(木) 17:34:35.15
>>652
スーパークラスや継承関係ってのは
ArrayList<Integer> → List<Integer> → Collection<Integer>
となるのであって、
ArrayList<Integer> から ArrayList<Object> や List<Object> や Collection<Object> にはならない
655デフォルトの名無しさん:2012/02/09(木) 18:31:38.03
>>654
ArrayList<Number> al = new ArrayList<Number>()

al.add(new Integer(10))
al.add(new Double(10.5))

こういうのが可能なのは
Numberが親クラスだからこそ
継承関係の子クラスはジェネリクス表記しても
正常に処理されているという認識なんだけど
656デフォルトの名無しさん:2012/02/09(木) 18:43:40.76
>>655
Number は Integer の親だから Number に Integer は渡せる
だから add の引数は Number でいい

でも addAll の方は少し違う
Collection<Number> は Collection<Integer> の親じゃないから Collection<Number> に Collection<Integer> は渡せない
もし addAll の引数が Collection<Number> だったら Collection<Integer> は渡せない
実際の addAll の引数は Collection<? extends Number> だから Collection<Integer> も渡せる
657デフォルトの名無しさん:2012/02/09(木) 20:08:45.64
他人の質問に首を突っ込んだけど
そのヒントから俺もジェネリクスマスターになれるかも

明日暇な時間を見つけて実際に組んであれこれやってみる
addAllか
658デフォルトの名無しさん:2012/02/09(木) 20:12:12.74
パッケージ内にメインメソッドを持ったクラスだけを作ったファイルがあるのですが
これをルートディレクトリにインポートすることはできないのでしょうか?
659デフォルトの名無しさん:2012/02/09(木) 20:18:41.07
<? super T>のsuperって、どんな時に使うんでしたっけ?
ジェネリクスマスター教えて!
660デフォルトの名無しさん:2012/02/09(木) 20:25:24.67
>>658
日本語でおk
661658:2012/02/09(木) 20:37:51.21
例えばtest内にあるTest.java
package test;
public class Test{
public static void main(String args[]){
System.out.println("hello");
}
}これを
ルートディレクトリ内にあるTestes.javaが
import test;

public class Testes{
public static void main(String args[]){
/*ここからクラスTestの内容を読み込めるのでしょうか?*/

662デフォルトの名無しさん:2012/02/09(木) 21:37:47.45
キャスト変換について
Object型のサブクラスFooObject,BarObjectがObject型のどちらかがObject型の変数に入ってる場合
Object型のtoStringで ”(パッケージ名).(型名)[〜” って文字列表現取得できると思うんですが
FooObject、BarObjectの名前はわからない場合、その型名でキャストするにはどうすればいいでしょうか?

                  この部分を変数で指定できたらということです
                    ↓
ようは、somethingObject = (someString) Object;
663デフォルトの名無しさん:2012/02/09(木) 21:40:25.01
キャスト出来たとして、なんの型の変数に代入するつもりだ?
664デフォルトの名無しさん:2012/02/09(木) 21:53:47.24
>>662
日本語でおk
665デフォルトの名無しさん:2012/02/09(木) 21:53:47.44
>>659
例えば Arrays.sort(T[], Comparator<? super T>)
T = Integer だとする
Integer をソートするには、もちろん、Comparator<Integer> があればいい
でもそれ以外にも、例えば Comparator<Number> があれば、
Number が比較できるのならそれを使って Integer を比較できるだろう?
そういうわけで、 Comparator<? super T> が使われている例でした
666デフォルトの名無しさん:2012/02/09(木) 21:55:20.07
>>661
読み込むっていうか、呼ぶだけでしょ?
test.Test.main(args);
667デフォルトの名無しさん:2012/02/09(木) 22:00:55.04
>>665
あー、わかりやすい!
ジェネリクスマスターは説明もうまいですね。
668デフォルトの名無しさん:2012/02/09(木) 22:07:29.85
ジェネリクスネタが流行ってんなw
669デフォルトの名無しさん:2012/02/09(木) 22:55:17.54
670デフォルトの名無しさん:2012/02/09(木) 23:27:18.84
>>669
あれ?java cupのロゴもbsdライセンスになったんですか
dukeはbsdだからいわゆるコピー改編自由なので二次的創作物なんか結構あると思ったんですけど、dukeなどキャラクターものがbsdライセンス付与であるという概念は一般的には先進的過ぎて理解できないんですかね。
671638:2012/02/09(木) 23:42:43.46
>>639
わかりやすい補足解説ありがとう
言いたかったことはそれでございます
672デフォルトの名無しさん:2012/02/09(木) 23:43:02.54
md.update(bb2);
byte[] bb3 = md.digest();
System.out.println("bb1="+Arrays.toString(bb1));
System.out.println("bb2="+Arrays.toString(bb2));
System.out.println("bb3="+Arrays.toString(bb3));
if(Arrays.equals(bb3,bb1)){
System.out.println("OK.");
FileOutputStream fs1 = new FileOutputStream(lastHashFileName);
ObjectOutputStream os1 = new ObjectOutputStream(fs1);
os1.writeObject(op2);//a big mistake has been fixed
os1.close();
fs1.close();
}else{
System.out.println("NG.");
}
/*サーバ側のプログラムですがこのOKかNGという出力結果を
ObjectOutputStreamでクライアント側に送りたいのですがどうしたらよいでしょうか?*/
673デフォルトの名無しさん:2012/02/09(木) 23:48:11.82
今はどうやってクライアント側とやりとりしているんだ
そこに乗せればいいだけじゃないのか
674デフォルトの名無しさん:2012/02/10(金) 00:04:53.77
>>663
考えてみたらこれは不可能でした・・・
samethingObjectも型を指定できればなと思いました
675デフォルトの名無しさん:2012/02/10(金) 01:51:58.72
>>674
質問のレベルから察して理解しているかどうか怪しいから聞くけど、
ポリモーフィズムを理解してますか?

FooObjectクラスとBarObjectクラスに共通のスーパークラスを指定したり、
同じインタフェースを指定したりすることを知ってますか?
676デフォルトの名無しさん:2012/02/10(金) 08:28:11.88
サーバーサイドアプリを開発しています。
int a;
static{
a=10;
}
public static void test(){
System.out.println(a);
}
というプログラムがあったとき aが初期化され10になるはずなのに
そうならない時があります。
どうすればいいですか?
677デフォルトの名無しさん:2012/02/10(金) 08:29:55.22
舌を噛んで死ぬ
678デフォルトの名無しさん:2012/02/10(金) 09:07:10.30
すみません訂正です int a;ではなく static int a;でした。
679デフォルトの名無しさん:2012/02/10(金) 09:20:23.02
こうすればいいですよ

public static void test(){
System.out.println("10");
}

680デフォルトの名無しさん:2012/02/10(金) 09:26:16.17
>>679
理解できました。
わかりやすい説明ありがとうございます。
もんもんとしていたものがスッキリしました。
681676:2012/02/10(金) 09:44:44.84
>>680
勝手に自作自演しないでくださいwwww
682デフォルトの名無しさん:2012/02/10(金) 10:31:40.40
>>676
a に 10 を代入する前に test が呼ばれれば当然まだ 0 のまま
この前の >>501 の事例と一緒だろ
683デフォルトの名無しさん:2012/02/10(金) 10:35:50.62
staitcイニシャライザ抜ける前にstaticメソッド呼べたっけか?
684デフォルトの名無しさん:2012/02/10(金) 10:36:01.55
>>682
多分同じだと思われます。static{}の方が先に実行される工夫などありますか?
685デフォルトの名無しさん:2012/02/10(金) 10:46:35.16
あとこの現象が起こるのはサーバーサイドアプリに限られると思います。
普通のjavaアプリケーションで起こった事はありません。
なおこの現象は以下でも起こります。

static int a=10;
static void test(){
System.out.println(a);
a++;
}
この場合11と表示される事がたまにあります。
686デフォルトの名無しさん:2012/02/10(金) 10:48:25.00
単に test が 2 回呼ばれてるだけなんじゃね
687デフォルトの名無しさん:2012/02/10(金) 10:54:18.19
10と表示されるときはOKですがたまに0や11(2回呼ばれたのかな?)
688デフォルトの名無しさん:2012/02/10(金) 11:01:25.17
こうしとけば?
static int a;
static synchronized void test(){
if (a == 0) a = 10;
System.out.println(a);
}
689デフォルトの名無しさん:2012/02/10(金) 11:01:42.33
一応環境も書いておきます サーバーサイド tomcat 6.0.18 jdk 1.6.0_11
690デフォルトの名無しさん:2012/02/10(金) 11:03:13.67
>>683
静的初期化子かstatic変数の初期化子で呼び出せば呼べる。

http://java.sun.com/docs/books/jls/third_edition/html/classes.html#287406
class Z {
static int peek() { return j; }
static int i = peek();
static int j = 1;
}
class Test {
public static void main(String[] args) {
System.out.println(Z.i);
}
}
みたいにすると、peek() は初期化前のZ.jに触って0を返し、Test.mainは 0を出力する。
>>676みたいにメソッド介さないで単純に代入してるだけなら発生しないと思うが。
691デフォルトの名無しさん:2012/02/10(金) 11:10:01.37
>>688
そういう手もありますね。しかし

static A a;
static synchronized void test(){
if(a==null)a=new A();
System.out.println(a);
}
class A{ public String toString(){return "10";}}

ClassNotFoundExceptionだったかNoClassDefFoundError
だったか記憶があいまいですが、例外がたまに出た記憶があります。
692デフォルトの名無しさん:2012/02/10(金) 11:14:36.02
クラスローダー系のエラーは全然別問題
693デフォルトの名無しさん:2012/02/10(金) 11:23:49.16
>>688の方針しかなさそうなので
それで行こうと思いますありがとうございました。
もやもやしてたものがスッキリしました。
694デフォルトの名無しさん:2012/02/10(金) 12:45:18.27
サーバーサイドJavaだと、
static変数の値が異なる、同じ名前のクラスがサーバに同居しているのも
大して珍しい話ではない。

リモートデバッガとか使わんの?
695デフォルトの名無しさん:2012/02/10(金) 20:54:32.57
サーバーアプリケーションをやっているんですが
getWriterで書き込みブラウザ確認しても
htmlが微妙に反映されません

キャッシュか何かなんですかね
HelloWorldのままです
696デフォルトの名無しさん:2012/02/11(土) 02:34:18.63
Javaの勉強するのに参考書を一冊買いたいのだけどおすすめってあります?
一応C言語は少しやりました
697デフォルトの名無しさん:2012/02/11(土) 02:48:25.09
とりあえず俺はやさしいJavaで入った
Cの知識があったから、普通に理解できた
698デフォルトの名無しさん:2012/02/11(土) 03:19:26.07
>>697
調べてみたけどJava初心者に調度良さそうですね。
早速買ってみます。情報ありです
699デフォルトの名無しさん:2012/02/11(土) 08:17:59.22
Cやったのなら
基礎からのJava
プログラミング言語Java
あたりでいいと思うぞ
700デフォルトの名無しさん:2012/02/11(土) 09:06:22.05
Cの基本文法を1週間でマスターした俺の
勉強法は入門書を2冊買う事。
読み比べながら勉強するとかなり理解が増す。
701デフォルトの名無しさん:2012/02/11(土) 09:10:32.31
プログラミング言語Javaは翻訳がうんこ過ぎて薦められない
Effective Javaに、「実はこの部分は○○という言語仕様なので云々」と
いうのが頻発するが(あれも結構頭にくる)
それが参照しているのはJava言語仕様の方
リファレンスに持っておきたいならJava言語仕様の方を薦める
702 ◆QZaw55cn4c :2012/02/11(土) 11:39:04.34
ついでに独習Javaもうんこといっておこう
703デフォルトの名無しさん:2012/02/11(土) 11:55:17.75
うんこはいいから、おすすめを言ってよ
704デフォルトの名無しさん:2012/02/11(土) 12:00:21.21
パーフェクトJava。
705デフォルトの名無しさん:2012/02/11(土) 12:02:55.39
まじおすすめ

Java Programming Language
Java Language Specification
706696:2012/02/11(土) 14:27:00.89
おすすめ教えてくれるのは嬉しいが数が多いw
とりあえず出てきた名前の本全部メモって本屋行ってきます
707 ◆QZaw55cn4c :2012/02/11(土) 14:37:26.96
>>706
そうですね。おみくじみたいなもんだと考えればいいでしょう。当たるも八卦、当たらぬも八卦。
でも沢山引けばいつかは大吉。
708デフォルトの名無しさん:2012/02/11(土) 15:08:53.89
JavaでWebアプリを作る時に、フロント、バックロジック、DBアクセスみたいなレイヤー分割をしているものが多いのですが、
レイヤーを意識して作るとどのような利点があるのでしょうか。

例えば、バックロジックからDBアクセスを分離すると変更に強くなる、というのを書籍で読みましたが、
開発が始まっているのに途中でDBが変わるとか考えにくいし、本当に変わったらロジック側にもなんらかの影響は避けられないんじゃないかなと思ったりして良くわかりませんでした。
709デフォルトの名無しさん:2012/02/11(土) 15:20:20.60
>>708
書籍はただのオナニーだからほっとくのが吉
710デフォルトの名無しさん:2012/02/11(土) 15:35:52.94
>>708
テストがしやすくなる
711デフォルトの名無しさん:2012/02/11(土) 15:59:09.19
まさか画面生成するコードにビジネスロジックからSQL文までごっちゃにできんから分けるでしょ
712708:2012/02/11(土) 20:17:51.99
レスありがとうございます。
レイヤーを分けることでテストしやすくなるというのはたしかに仰るとおりで納得できました。
わたしはPerl, PHP3からPG入門していて、ほんとに全部同じところにごちゃっと書いてましたので・・・


もう1点質問なのですが、
DBアクセスする場合は、DBのテーブルに対応するクラス(Entity?)を作るとわかりやすいとありました。
挿入、更新、削除はそれでいいのですが、検索する場合は1テーブルだけで検索することって少なくて、
たいていは別のテーブルと結合して情報を取得すると思います。

このような場合、結合したSQLごとにクラスを作るような設計にするのでしょうか。
SQLの数だけクラスが増えると恐ろしいことになりそうなのですが。。
713デフォルトの名無しさん:2012/02/11(土) 21:20:08.60
>>708
プログラマのレベルで考え方が変っていく。

俺も最初はゴチャゴチャスパゲッティで書いていた。
レベルが上がったらもっとスッキリ分類して書きたくなった。
さらにレベルが上がったら再利用性向上(他人が見て解りやすい構造)を心がけるようになった。


あと知能の高い奴は最初からそういう境地にあるのかもしれないが
俺は経験でそこに達した。
714デフォルトの名無しさん:2012/02/11(土) 21:57:39.70
マルチモニタ環境でサブモニター側にフルスクリーン表示したウィンドウがありまして、
それと違うメインモニター側のアプリケーションをクリック(フォーカス移動)をすると
フルスクリーンが解除されてしまいます。対処方法はありますか?
715デフォルトの名無しさん:2012/02/11(土) 22:12:07.90
>>712
DTO,DAOパターンの話なら、俺はMySQLを常用してるけどtableとviewの数だけJava側でクラスを作ってるよ。
結合したSQLの数 = viewの数 だけクラスを増やすのがそんなに恐ろしく数が増えるっていうんなら、
そもそもDBスキーマの設計がアレなんじゃない?

恐ろしい数ってのがどれくらいを意図してるのかがよくわからないが。
716デフォルトの名無しさん:2012/02/12(日) 11:47:20.74
GridBagLayoutの中にJListを作成して、ボタンを押すごとに項目を追加するようにしたのですが、項目の追加をする毎にセルがどんどん膨らんでいき他セルを圧迫してしまいます
スクロールバーの設定をしても駄目でした。
理想はどんなに項目を追加してもセルのサイズが変わらずに、スクロールバーが出てきてくれるようにしたいのですがどのようにすれば良いでしょうか。
717デフォルトの名無しさん:2012/02/12(日) 11:53:06.23
JList 自体はスクロール機能を持たない
JScrollPane などの中に置く必要があるはず
718デフォルトの名無しさん:2012/02/12(日) 12:01:11.67
>>717
その通りでした。JScrollPaneではなくJListを配置していました・・ありがとうございます
719デフォルトの名無しさん:2012/02/12(日) 18:55:35.02
>>715
レスが遅くなってすみません。
100本SQLを書いたらクラスが100個増えるという感じです。
同じテーブルを結合するけどselectしているカラムは違うような場合、
1つのクラスに集約するのか別のクラスにするのかなど、実務ではどのようにしているのか気になるところです。

mybatisとかhibernateのようなO/Rマッパーと呼ばれる技術を用いれば上のような問題には気を使わなくとも良くなるのでしょうか?
720デフォルトの名無しさん:2012/02/12(日) 19:40:38.60
O/Rマッパーは遅すぎて実用に絶えない
721デフォルトの名無しさん:2012/02/12(日) 21:03:52.94
SQLに対応するのはクラスじゃなくてメソッドじゃないの?
722デフォルトの名無しさん:2012/02/12(日) 22:49:32.18
ヒープサイズ10GBで起動して、必要サイズ6GBのはずなのに
OutOfMemoryError : java heap space
って出るんだけどなんで?
3000 * 2個のヘッダやなんやで4GBも使わないでしょ?
Eclipse, JDK, OS全部64ビットで統一されててPCのメモリは15GB

-server -Xms10g -Xmx10g
public void testArraySize(){
byte[][] b1 = new byte[3000][1000000];
byte[][] b2 = new byte[3000][1000000];
}
723デフォルトの名無しさん:2012/02/12(日) 23:06:58.36
配列のサイズ変えながら実際にメモリの使用量調べれば
724デフォルトの名無しさん:2012/02/12(日) 23:30:42.36
Javaの配列って例外投げるって事は
内部でtry〜catchみたいなことしてるの?
725デフォルトの名無しさん:2012/02/12(日) 23:59:30.58
内部でtry-catchしてたら例外が外へ出てこないだろ
726デフォルトの名無しさん:2012/02/13(月) 00:20:41.28
index
out-of-bounds exception
727デフォルトの名無しさん:2012/02/13(月) 00:22:42.16
>>719
結合以前の問題な気がする。
例えば 会員テーブル ( ID, 名前, メールアドレス, is有料会員 )
みたいなテーブルがDBにあったとして、
これに1:1で対応する 会員DAOクラス, 会員DTOクラス がある。
719の言う SELECT * FROM 会員; とか
SELECT ID FROM 会員 WHERE is有料会員 = 1;
とかのSQL文はそれぞれ会員DAOクラスのメソッドとして
getAll会員List() とか get有料会員IDList() とかいう名前で記述するので
SQL文の数だけクラスが増えることにはならない。
>>721 が言ってるのもそういう意味だと思うが。
728デフォルトの名無しさん:2012/02/13(月) 00:23:05.08
近頃、DSLというのが流行っているらしいが

これってJavaの視点から見てどうなの

というか、すでに昔から使われているものらしいが
UNIXのシェルスクリプトとして


それから、型推論とか。ハスケルとか

Javaにはない、型が曖昧なPerlなどのスクリプト言語にもない、魅力的な概念だというが、
何か落とし穴があるようなきがする
729デフォルトの名無しさん:2012/02/13(月) 00:49:06.94
>>728
とりあえずscalaでもつかってみたら?
730デフォルトの名無しさん:2012/02/13(月) 00:57:52.24
DSLってメジャー言語で便利なフレームワーク作るだけじゃダメなの?
731デフォルトの名無しさん:2012/02/13(月) 02:19:21.29
DSLって何?DomainSpecificLanguageならただの分類名だろ。
732デフォルトの名無しさん:2012/02/13(月) 04:04:08.09
DynamicSexyLedyに決まってんだろ
733デフォルトの名無しさん:2012/02/13(月) 05:40:14.46
それより素朴にSQLをいちいち書いてるのか
例えば固定ならストアドプロシージャでDBに持たせるとか何とかしないと
恐ろしい性能問題を次から次へ起こしそうだ
734デフォルトの名無しさん:2012/02/13(月) 07:18:06.81
>>732それを言うなら DynamiteSexyLadyだろが
735デフォルトの名無しさん:2012/02/13(月) 08:45:30.41
>>729
それはHaskellよりも優れているのか?

>>733
SQL書かずにO-Rマッピングでは駄目なのか?
736デフォルトの名無しさん:2012/02/13(月) 09:12:37.52
>>735
ときどき頼まれてDBのチューニングもするんだが(性能問題が発覚したあと)、
DBからSQLを見てるとこれを書いた奴を呼んでこい、ドタマをカチ割って中を書き直してやるから呼んでこい
と言いたくなるようなSQLを投げてるアプリケーションがある

そういう場合に対応できるのか?
737デフォルトの名無しさん:2012/02/13(月) 10:04:58.39
List<? super B> hoge = new ArrayList();

hoge.add( new A()); //error
hoge.add( new B());

class A{}
class B extends A{}

/*
? super クラス
設定したクラスとそのスーパークラスってことなのにAが追加できません

? extends クラス
こっちはサブクラスのはずですし、そもそもaddできないはず


というわけで、super の利用用途(動作)がよく分かりません。
738デフォルトの名無しさん:2012/02/13(月) 10:14:40.63
>>737
List<? super B> っていうのは、つまり List<B> または List<A> または List<Object> ってことだ
もしそれが List<B> だったら、 new A() を add するのはマズイだろう? B じゃないものが List<B> に add されてしまう
一方 new B() なら List<B> にも List<A> にも List<Object> にも add して問題ない
739デフォルトの名無しさん:2012/02/13(月) 11:01:40.87
>>738
ジェネリックスっていう物をすげぇぇぇぇぇ勘違いしていたかも

<>の中身はCollectionの戻り値の型を決めるのであって
addなど追加する値の型を決めているわけではないって事だよね

こういう事?
list.add( (B)object ) でなく (B)obj = list.add(Object)
740デフォルトの名無しさん:2012/02/13(月) 11:06:55.68

あるDTOクラスのゲッタ・セッタの構造にて、
public class Kurasu1 {
private int hoge;

public void setHoge(int value) {
this.hoge = value;
}

public int getHoge() {
return hoge;
}
}

呼び出し側
Kurasu1 kurasu1 = new Kurasu1();

こういうのがあったとして、
変数hogeのクラス内での初期化はなく、
また一度もkurasu1.setHoge(0)などしていなくても、
いきなりkurasu1.getHoge()を実行しても0が出てくるのはなぜですか?
741デフォルトの名無しさん:2012/02/13(月) 11:07:12.58
書いておいてなんだけど戻り値って表現はおかしいな
あとlist.add でなく list そのものの型か
742デフォルトの名無しさん:2012/02/13(月) 11:09:19.01
クラスのフィールド変数は初期値を設定してなくても自動的に初期化される
メソッド内の変数は初期化されず、ぬるぽになったりする
743デフォルトの名無しさん:2012/02/13(月) 14:19:32.68

\\
\\\
\  ∧_∧
   ( ´・ω・)
   G   と) ガッ >>742
    ヽ⌒)、 \人∧__∧
      ̄ (_) >`д´)')
         ∨つ   /
744デフォルトの名無しさん:2012/02/13(月) 14:32:54.14
>>742
ありがとうございます。初期値ゼロが自動で入るんですね。
745デフォルトの名無しさん:2012/02/13(月) 15:32:27.50
>>742
いや違うだろ。
勝手に初期値が入るのはプリミティブ型のみ。
クラスはインスタンス化してやらないといつまでもnull。
746デフォルトの名無しさん:2012/02/13(月) 16:27:31.87
>>745
ありがとうございます。いろいろ試して確認しました。
String型とかはnullですね。
747デフォルトの名無しさん:2012/02/13(月) 18:05:00.61
インライン展開されてるかどうかを確認するいい方法ってある?
jvisualvmのサンプラでメソッドが計測結果に出てこなければインライン展開されてる?
748デフォルトの名無しさん:2012/02/13(月) 19:07:13.09
staticで総称型を使ったメソッドって定義できないの?
749デフォルトの名無しさん:2012/02/13(月) 19:09:33.58
できるよ
java.util.Collections にすでにそういうのがたくさんあるよ
750デフォルトの名無しさん:2012/02/13(月) 19:19:37.98
総称配列は作れないの?
new T[];
というようなコードが書かせてもらえない
751デフォルトの名無しさん:2012/02/13(月) 19:32:58.05
それはできないんだ
Java の配列は例えば Object[] と String[] は異なるクラスとして区別されているが、
総称型の T は実際には何型なのかわからないから、
どういったクラスを new するべきか決められなくて、対応するバイトコードを生成できないんだ
参考:
http://www.ibm.com/developerworks/jp/java/library/j-jtp01255/index.html#2.2
752デフォルトの名無しさん:2012/02/13(月) 20:10:04.19
String"1"をfloatにパースすると1.0 となってしまいます。
"1"の場合は1のfloat
"1.5"の場合は1.5のfloat
とするにはどうすればいいですか?
753デフォルトの名無しさん:2012/02/13(月) 20:34:41.64
1のfloatと1.0のfloatって何が違うの?

printfとかって知ってる?
754デフォルトの名無しさん:2012/02/13(月) 21:20:51.10
>>752
static Number parse(String str) {
try { return Integer.valueOf(str); } catch (NumberFormatException e) {}
try { return Float.valueOf(str); } catch (NumberFormatException e) {}
throw new NumberFormatException();
}

System.out.println(parse("1").getClass()); //=> class java.lang.Integer
System.out.println(parse("1.0").getClass()); //=> class java.lang.Float

こうすればIntegerとFloatを区別してパースできる。

>>753
floatの精度知ってるの?
朝初心者は黙ってろ。
755デフォルトの名無しさん:2012/02/13(月) 21:21:16.17
変換ミス
s/朝初心者/超初心者
756デフォルトの名無しさん:2012/02/13(月) 21:23:46.50
>>754
ちがうことしてね?
757デフォルトの名無しさん:2012/02/13(月) 21:27:34.41
あとはNumberオブジェクトの使用箇所でinstanceof使えば、
intとfloatを取り出せるってこと。
758デフォルトの名無しさん:2012/02/13(月) 21:29:36.68
ああ、ごめん。
「"1"の場合は1のint」に見えた。
正直すまんかった。

>>753 にもお詫びする。
759デフォルトの名無しさん:2012/02/13(月) 22:02:11.32
すぐに一人語りはじめるタイプだね
760デフォルトの名無しさん:2012/02/13(月) 22:28:41.14
聞いてくれ・・・俺ァな・・・・
761デフォルトの名無しさん:2012/02/13(月) 23:01:26.38
ぬるぽ→ガッ→変数→初心者

「ぬるぽ」というキーワードは良くないものを呼び込む魔法の言葉
762デフォルトの名無しさん:2012/02/13(月) 23:17:38.40
>>752
基本情報処理技術者の勉強することをお勧めするよ。
763デフォルトの名無しさん:2012/02/13(月) 23:26:23.24
質問です。

あるjarファイルをサーバにおいて実行すると、
jarの中にあるクラスではなく、サーバにすでにインストール済みの
クラスを参照してしまい、思ったとおりに動作しない事象が発生します。
jarの中のクラスのみを参照するように実行させるには
どのようにすればよいでしょうか?
764デフォルトの名無しさん:2012/02/13(月) 23:31:28.45
>>763
ClassLoader周りの仕組みを使う。
試しにURLClassLoaderを使ってみてはどうか。
765デフォルトの名無しさん:2012/02/13(月) 23:32:08.15
クラス名を変えればいいよ
766デフォルトの名無しさん:2012/02/13(月) 23:51:37.18
URLClassLoader試してみます
767デフォルトの名無しさん:2012/02/14(火) 00:58:41.33
おまえらジャバスw
768デフォルトの名無しさん:2012/02/14(火) 11:22:33.04
独自ジェネリクスの有用性がわかりません

class Hoge<A,B>{
A hage1;
B hage2;
}

public A getHage(){
return hage1;
}

public B getHage(){
return hage2;
}
}

こんなんじゃいみね〜って気分です。


public int tasuHage(){
return hage1 + hage2;
}

みたいのは当然むりなわけで・・・
769デフォルトの名無しさん:2012/02/14(火) 11:30:47.49
>>754
精度がどうかしたか?
770デフォルトの名無しさん:2012/02/14(火) 11:42:28.52
>>768
そんな使い方じゃ意味ねぇわな
771デフォルトの名無しさん:2012/02/14(火) 13:21:34.26
>>768
ArrayList の改良版を作ろうとかそういうのでもなければあんまり使わないかもね
772デフォルトの名無しさん:2012/02/14(火) 16:19:52.23
>>735
なんでHaskellじゃなくてScalaかって、ここがJavaスレだからだよ
773デフォルトの名無しさん:2012/02/14(火) 17:15:23.14
ジェネリスクというかテンプレート信者に汚染されたものなど使いたくないわ!
ってことで未だにjava1.4互換を保って開発してます。
774デフォルトの名無しさん:2012/02/14(火) 17:17:57.65
と言いつつ実は俺はバリバリのC++テンプレート信者だった過去がある。
775デフォルトの名無しさん:2012/02/14(火) 18:27:33.67
いまだにboostだって現役で使われてるし
縦書きだってfreetypeで、ってここandroid
すれじゃなkっったああああ
776デフォルトの名無しさん:2012/02/14(火) 19:32:17.54
String[] tests のなかに "aiueo" が入っているかどうかを検索するメソッドってないの?

foreach ( String s in tests){
if同じだよelse違うよ
}

みたいにしなきゃだめ?
777デフォルトの名無しさん:2012/02/14(火) 19:38:53.09
>>776
commons 使えるなら ArrayUtils.contains(tests, "aiueo")
標準API縛りなら Arrays.asList(tests).contains("aiueo")
778デフォルトの名無しさん:2012/02/14(火) 21:54:28.39
現在SAStrutsを使用してページング処理の勉強をしているのですが、
パッケージでのアクセス関係がいまいちよく分かりません。
Action・Form・Serviceパッケージのみを使用してシステムを作る事はできたのですが、
同じシステムを計算式はutil,Formに関係ない変数はentityに分ける作業で躓いています。
Actionでは、@ActionForm ResourceでFormやServiceを参照できるのですが、
utilでは同じように設定しても参照できません。
FormやServiceをActionと同じようにutilで参照するにはどのようにすれば良いのでしょうか。
Actionクラスにはutilを呼び出すメソッドを記述し、
内部的にはutilやserviceで処理を行いたいと考えています。
初心者という事もあり、言っている事が既におかしいかもしれませんが
参考サイト等でも構いませんのでよろしくお願いします。
779デフォルトの名無しさん:2012/02/15(水) 00:56:20.25
>>778
初心者と書いてるが、SAStruts初心者ってよりJava初心者って感じか?
まずutilからFormやActionを@Resourceで見ることができない理由はその必要がないから。
そうしなければならないと感じたのなら、その感覚が間違っている。

SAStrutsの場合、各クラスの責務はこんな感じだ。
ActionForm・・・画面からの入力と画面への出力項目を保持する
Action・・・ActionFormから必要な項目を抜き出し、Serviceに渡す。
        Serviceから受け取ったList<Entity>とかEntityを画面に出力する形式に変換する。
Service・・・Actionから受け取った情報を元にデータベースからEntityを取得する。
Entity・・・データベースのテーブルの1レコード
util・・・Action, Service内で共通的に使いたい処理(文字列のtrimなど)を書く。

utilがActionFormやServiceを使うんじゃない、ActionやServiceがutilを使うんだ。
もう一つ、utilは脇役で業務的な処理を書く場所じゃない。主役と脇役を間違っちゃだめだめ。
ここまで読んだら、
>同じシステムを計算式はutil,Formに関係ない変数はentityに分ける作業で躓いています。
というのがどれだけおかしいかもわかるだろ。

たぶんStrutsのことも知らないだろうから、SAStrutsの前にStrutsも勉強しとけー。
780デフォルトの名無しさん:2012/02/15(水) 05:19:51.77
責務ってなんのことですか?
781デフォルトの名無しさん:2012/02/15(水) 11:13:58.41
下のコードLinux だと使っている locale が正しく表示されるんだけど
Solaris だと (英語環境でも) 常に日本語 ja_JP.UTF-8 と表示されてしまう。
Solarisのデフォルト環境である日本語の設定がどこかに残っているからなのか?
ログイン時に使用言語を指定する方法でも $ LANG=en_US.UTF-8 java test
のようにコマンドラインで指定する方法でもどちらも同じだった。
どうしてだかわかる人教えて! (表示のために行頭に全角スペース文字を使ってます)
//test.java
import java.util.*;
import java.io.*;
public class test {
 public static void main(String[] args) {
  Locale locale = Locale.getDefault();
  System.out.println(locale);
 }
}
782デフォルトの名無しさん:2012/02/15(水) 12:40:36.28
まずはシステムプロパティuser.languageを晒してもらおうか
783デフォルトの名無しさん:2012/02/15(水) 13:08:32.90
>>782
レスありがとう。
使う言語環境に英語を指定しログインして環境変数LANGをみると
$ echo $LANG
en_US.UTF-8
になっているんだけど,JVMのシステムプロパティをみると
user.language=ja
になっている。JVMから環境が見えていないようですね。
そもそもJVMのuser.languageって何をみて判断しているのかな?
784デフォルトの名無しさん:2012/02/15(水) 13:32:32.88
LC_ALLに設定しても無理かえ?
785デフォルトの名無しさん:2012/02/15(水) 14:10:52.74
>>783
openjdk/jdk/src/solaris/native/java/lang/java_props_md.c を流し読みしたけど、
たぶん setlocale(LC_MESSAGES, NULL) の戻り値見てるんじゃないかな。
カテゴリはLC_MESSAGESじゃないかもしれん。

http://docs.oracle.com/cd/E23824_01/html/821-1465/setlocale-3c.html#scrolltoc
man見ると、カテゴリがLC_MESSAGESなら、$LC_ALL, $LC_MESSAGES, $LANG の順らしい。
786デフォルトの名無しさん:2012/02/15(水) 15:00:35.81
>>784
>>785
2chってすごいな。習熟者からこんなすばやいご指導をいただけるとは。
さっそくLC_ALLを設定してみたら見事に正しいlocaleが得られた。
そのときにLC_ALL=en_US.UTF-8なら問題ないのだがLC_ALL=en_GB.UTF-8
(イギリス英語)だと
/bin/bash: warning: setlocale: LC_ALL: cannot change (en_GB.UTF-8)
という警告が出た。LC_ALLにはメジャーなロケールを指定しないとだめなのか、
en_GB.UTF-8 環境をインストールしていない(のかもしれない)ことが問題らしいが
これでまさに>>785のご指摘どおり setlocale() の戻り値を見ているらしいことが
わかった。
Solaris10のころはLANGの値が直にJVMの環境にも反映されていたように記憶
しているのだが、上の挙動はSolaris11上でのものだ。結局、面倒だがlogin時に
LANGの値をLC_ALLに設定し直すようなことをしなきゃだめなのかな。
いずれにせよSolarisの問題らしいのでここまでで充分です。どうもありがとう。
787デフォルトの名無しさん:2012/02/15(水) 15:08:59.13
>>786
多分ロケールが作られて無いだけ。locale -aで設定可能なものがリストされる
localedefでないものを作れた気がするけど確かにスレ違い棚
788デフォルトの名無しさん:2012/02/15(水) 15:54:10.45
>>787
確かに Solaris の locale -a には en_GB.UTF-8 がありませんでした。
最後に問題の回避策を報告しておきます。(ksh 使用者の場合) Solaris の ~/.kshrc 内に
LC_ALL=${LANG}
export LC_ALL
を追加したところ login 時の言語環境が JVM のシステムプロパティにも反映されました。
以上、みなさまご指導ありがとうございました。
789デフォルトの名無しさん:2012/02/15(水) 16:38:51.66
課題で
@【コンポーネント名】JFrame
 【サイズ】 横600, 縦700
A【コンポーネント名】JMenu
 【Item】 新規作成…ファイルの新規作成
      開く  …ファイルを開く
           Cを表示
      保存  …名前を付けて保存
           Dを表示
      閉じる …アプリケーション終了
B【コンポーネント名】JTextArea
C【コンポーネント名】JFileChooser
D【コンポーネント名】JFileChooser

を持ったMemoPadクラスを作らなければならないのですがどう始めたらいいかわかりません。
教えてください
790デフォルトの名無しさん:2012/02/15(水) 17:16:43.80
舌を噛んで死ぬ
791デフォルトの名無しさん:2012/02/15(水) 17:27:03.38
先生に聞け
792デフォルトの名無しさん:2012/02/15(水) 17:52:34.16
好きなクラスメイトに聞いて恋が芽生える。
793デフォルトの名無しさん:2012/02/15(水) 18:19:57.12
extern==継承するの反対で、継承されるみたいなキーワードはないでしょうか
もしかしたら、implementsがそれに当たるのかもしれませんが
794デフォルトの名無しさん:2012/02/15(水) 18:22:29.39
継承されないキーワード final はあるので、
final がなければ継承されるってことでいかがか
795デフォルトの名無しさん:2012/02/15(水) 18:32:26.16
>>794
なるほど、ありがとうございます
796デフォルトの名無しさん:2012/02/15(水) 21:25:40.12
韓国成人6人に1人、この1年間に精神疾患を経験


韓国の成人の6人に1人はこの1年間に精神疾患を経験し、さらに成人の4人に1人は生涯に1度以上、
精神疾患を経験していることが分かった。

保健福祉部が昨年、全国の成人男女およそ6000人を対象に精神疾患実態を調べた結果、精神疾患の
1年間の有病率は16.0%だった。 これは成人6人のうち1人が調査時点前の1年間に精神疾患を経験した
ことを意味する。 性別では男性が16.2%、女性が15.8%で、男性がやや高かった。

また成人4人のうち1人の割合で、これまでに1回以上、精神疾患を経験していることが明らかになった。 ただ、
症状が軽いアルコール・ニコチン中毒が伴う「アルコール・ニコチン使用障害」を除けば、精神疾患の1年有病率は
10.2%、生涯有病率は14.4%に下がる。

政府は精神疾患者の大半が周囲の目を意識して治療を受けていないと把握し、精神健康検診の実施、
精神疾患の細分化など対策づくりに取り組んでいる。


中央日報日本語版: 2012年02月15日16時12分
http://japanese.joins.com/article/313/148313.html?servcode=400§code=410
797デフォルトの名無しさん:2012/02/16(木) 00:24:10.12
>>789
http://www1.axfc.net/uploader/Sc/so/319594.dat&key=4545

動作確認はしてない。
あと、JDK7でないとコンパイルできない。
798デフォルトの名無しさん:2012/02/16(木) 10:16:15.51
三項演算子ってExcelのIFそのものだけど、愛用している人っているの?
使い始めれば、結構使い勝手がよさそうだけど変な癖が付きそうなので使ってない
799デフォルトの名無しさん:2012/02/16(木) 10:18:36.71
俺はこれに感化されて積極的に使うようになったな
http://yasutech.blogspot.com/2010/07/blog-post.html
800デフォルトの名無しさん:2012/02/16(木) 10:58:54.68
>>798
Cのころは最適化に関係あったりしたんじゃないの?
javaはどうだか知らない。

ま、三重くらいにするとどれだか分からなくなって、if文みたいに字下げすることになったりするな。
801デフォルトの名無しさん:2012/02/16(木) 13:51:08.68
Collections.sort(list, new nantara());
でソートしてるんですが、
list.clear();
list.add..........
でlistを書き換えると正しくソートできなくなります。
対処法ってないでしょうか?
802デフォルトの名無しさん:2012/02/16(木) 14:00:58.69
書き換えた後にまたソートする
803デフォルトの名無しさん:2012/02/16(木) 14:02:44.77
List<String> list = new ArrayList<String>();

list.add("bbb");
list.add("aaa");
list.add("ddd");
list.add("ccc");

Collections.sort(list);
for(String s:list){
System.out.print(s + " ");
}

list.clear();
list.add("20");
list.add("10");
list.add("15");

Collections.sort(list);
for(String s:list){
System.out.print(s + " ");
}

ではちゃんとソートされたから
普通にnew nantara()のcompareToやcompareがおかしいだけじゃね?
804デフォルトの名無しさん:2012/02/16(木) 14:05:32.08
>>801
変更時にソートさせたいならTreeを使う手もある。
805デフォルトの名無しさん:2012/02/16(木) 14:15:29.35
>>802
書き換えた後にソートするとおかしくなります。

>>803
中身はこんな感じです。

class NantaraSort implements Comparator<Are>{
@Override
public int compare(Are object1, Are object2){
if(object1.getFugafuga() > object2.getFugafuga()){
return 1;
}else if(object1.getFugafuga() < object2.getFugafuga()){
return -1;
}else{
return 0;
}
806デフォルトの名無しさん:2012/02/16(木) 14:30:16.17
getFugafugaがfloatのNaN値を返したりすると
A>BでもA<BでもA==Bでもない条件が成立したりするが、
その辺大丈夫なのかこれ?
807デフォルトの名無しさん:2012/02/16(木) 14:35:09.96
getFugafuga()の中身も見ないとなんとも言えん。
808デフォルトの名無しさん:2012/02/16(木) 14:47:39.50
class ClassA{
private String name;
private int price;
ClassA(String name, int price){
this.name = name;
this.price = price;
}
String getName(){ return this.name; }
int getPrice(){ return this.price; }

@Override
public String toString(){
return this.name;
}
}

//805と同じつもり
class SortA implements Comparator<ClassA>{
@Override
public int compare(ClassA o1,ClassA o2){
if(o1.getPrice() > o2.getPrice()){
return 1;
}else if(o1.getPrice() < o2.getPrice()){
return -1;
}else{
return 0;
}
}

}
809デフォルトの名無しさん:2012/02/16(木) 14:49:17.59
List list = new ArrayList();

list.add(new classA("Banana",20));
list.add(new classA("Apple",50));
list.add(new classA("Orange",100));

Collections.sort(list, new SortA());

for(Object o:list){
System.out.print( ((classA)o).toString() + " ");
}

list.clear();
list.add(new classA("Banana",200));
list.add(new classA("Apple",50));
list.add(new classA("Orange",10));

Collections.sort(list, new SortA());

for(Object o:list){
System.out.print( ((classA)o).toString() + " ");
}
}

って感じのを作ったが、値段に応じて商品の並び順が変わったけど?
810デフォルトの名無しさん:2012/02/16(木) 14:56:53.86
Servletで動かす場合、メンバ変数をstatic finalにするのはなぜ?
811デフォルトの名無しさん:2012/02/16(木) 14:57:18.94
>>808の感じからgetFugafuga()がソート中に変化しそうもない。
おかしいと思い込んでいるだけじゃないかな?どのようにおかしいのだろう?
812デフォルトの名無しさん:2012/02/16(木) 14:59:27.86
>>810質問がおかしい。static finalは定数
813デフォルトの名無しさん:2012/02/16(木) 15:02:38.26
たまたま設定関連のclassだから定数であるstatic finalってだけか

構造上、パスやらファイル名はインスタンスを生成した瞬間定数で設定されたほうが都合が良いからな
814デフォルトの名無しさん:2012/02/16(木) 15:26:39.72
三項演算子はもうすぐ抜ける現場で嫌がらせに使いまくって出て行ったよ
815デフォルトの名無しさん:2012/02/16(木) 15:28:02.43
>>806,807
getFugafugaの中身はDouble型の数値です。

>>811
まず始めに、ArrayListでlistをつくり、画面に表示します。
そして、Collectionsでソートします。
この時点でのソートは全く問題なく、何度やっても正常にできています。

しかし、ソート後にlistの中身を書き換え、
再度Collectionsでソートすると、正しくソートされません・・・・・
816デフォルトの名無しさん:2012/02/16(木) 15:39:43.35
clearで一度消してaddで追加の部分がおかしいのでは?
808みたいな単純なものならソートが動くはず

ソートされないって事は
追加した順に表示されているの?
817デフォルトの名無しさん:2012/02/16(木) 15:54:22.49
>>816
いや、なんというかバラバラな感じになります
概ね数値の大きいものは上の方に、小さいものは下の方にならんでるなぁ
という感じで中途半端な感じなんです。
ソート作業してる途中でやめました。みたいな。
818デフォルトの名無しさん:2012/02/16(木) 16:09:48.11
面倒くさいのでそろそろお引き取りください
819デフォルトの名無しさん:2012/02/16(木) 16:15:20.49
ソースコード晒したほうが早い。
おそらく瞬殺でバグが見つかる。

アップローダはここにある。
http://www.axfc.net/uploader/
820デフォルトの名無しさん:2012/02/16(木) 16:35:03.43
>>817
>>809は試したの?
821デフォルトの名無しさん:2012/02/16(木) 16:40:02.87
ログ出力で色々確認していたところ、どうやらlist自体は出来ているようでした。
表示がおかしいのでバグを探してみます。
ありがとうございました。
822デフォルトの名無しさん:2012/02/16(木) 16:41:59.61
△ System.out.print( ((classA)o).toString() + " ");
キャスト不要、o == nullの場合に使えない、文字列結合のコストあり

△ System.out.print(o.toString() + " ");
o == nullの時使えない、文字列結合のコストあり

○ System.out.print(o); System.out.print(" ");
823デフォルトの名無しさん:2012/02/16(木) 16:42:29.08
腹を切れ
824デフォルトの名無しさん:2012/02/16(木) 17:27:02.14
System.out.append(o).append(' ');
825デフォルトの名無しさん:2012/02/16(木) 21:17:11.22
ポイント=(入力文字数-間違い文字数)*60/入力時間*正誤率の2乗
※正誤率=(入力文字数-間違い文字数)/入力文字数

↑のポイントをできるだけ誤差なしで出すにはどうするのがベストだと思いますか。
ちなみにポイントはdouble、他は全部intです。
826デフォルトの名無しさん:2012/02/16(木) 21:43:44.37
>>825
その式には致命的な欠陥があるんじゃないか?
たとえば全部間違ったとすれば、当然正誤率は0になるわけだ
そうなるとポイントを求める式でゼロ除算が発生するわけだ
827デフォルトの名無しさん:2012/02/16(木) 21:46:10.36
>>825
と思ったけど別にゼロ除算なんか出ないわ
よく見てなかった
828デフォルトの名無しさん:2012/02/16(木) 21:51:09.97
>>825
掛けるものと割るものをそれぞれ別々に全部掛けて、最後に 1 回だけ割ればいいんじゃない
829デフォルトの名無しさん:2012/02/17(金) 00:10:26.10
score = (double)Math.pow((inputCount -missCount),3)*60 /Math.pow((time+inputCount),2);
scoreInt = (int)Math.round(score);
こんな感じでしょうか。最終的には四捨五入してint型にしようと思っています。
830デフォルトの名無しさん:2012/02/17(金) 07:59:19.48
scoreInt = (int)(score + 0.5);
とかじゃだめなのかね。。
831デフォルトの名無しさん:2012/02/17(金) 08:07:44.34
Math.round() の実装を覗いたら
0x1.fffffep-2f とかいうリテラルが出てきた。
こんなの見たこと無い。
832デフォルトの名無しさん:2012/02/17(金) 09:43:43.85
16進浮動小数リテラルだな。
コンパイラが勝手に値を丸めたりしないので、精度にうるさい人たちには便利。
833デフォルトの名無しさん:2012/02/17(金) 10:26:37.92
へぇぇ、知りませんでした。
0x1234の後に必ずp+1とかp-2とかを付ける必要があるんですね。
もう10年ぐらいJava使っているけど知りませんでした。
機会があったら使ってみます。
834デフォルトの名無しさん:2012/02/17(金) 15:11:41.84
Dateクラス(正確にはメソッド)はオワコンってわりに
Calendarクラスだけじゃ日付計算ってできないよね

Dateで現在のデータを取得しながら、操作はCalendarって紛らわしくね?

Date date = new Date();
なんか止めて、Calendarクラスで現在の日付を取れるようにして
Dateクラスを完全にオワコンにすべき

オワクラって言うのが正しいかw
835デフォルトの名無しさん:2012/02/17(金) 15:15:33.34
calendar.setTimeInMillis( System.currentTimeMilis() ); とか
あと、生成したばかりのカレンダは現在の日付になっている
836デフォルトの名無しさん:2012/02/17(金) 15:16:49.65
じゃあ、Dateクラスなんて利用してないもの?
837デフォルトの名無しさん:2012/02/17(金) 15:23:44.15
データベース触るときとか仕方なく使う以外には俺は使ってない
838デフォルトの名無しさん:2012/02/17(金) 16:04:04.33
SAStrutsにてアクションにUtilパッケージ下にある
クラス(変数格納用)をDIしたいのですが、
アクションのパブリックフィールドに
protected XxxxUtil xxxxUtilの宣言と
@Resourceをつけたところ
指定パスのインスタンスがないと言われてしまいます。

サービスやDtoは難なくDIできるので理由が分からず困ってます。
この場合の解決策はなんでしょうか?
携帯からなので読みづらいかもしれませんがよろしくお願いします。
839デフォルトの名無しさん:2012/02/17(金) 16:15:03.91
>>834
Calendarクラスは大量にメモリを使用する上にメモリリークしている。
自作した方がいいんだけどメンドクサイのでやっていない。
840デフォルトの名無しさん:2012/02/17(金) 17:23:27.34
逆にDateメソッドを改良して復活すれば良くね?
841デフォルトの名無しさん:2012/02/17(金) 17:35:55.00
逆にDateメソッドを改良して復活すれば良くね?
842デフォルトの名無しさん:2012/02/17(金) 18:15:51.00
APIは互換性を保たないといけないからね。
根本から直すことができない。

いいタイミングで互換性を断ち切って、
文法と全APIを直してほしい。
843デフォルトの名無しさん:2012/02/17(金) 19:12:14.38
それ別の言語だから。
844デフォルトの名無しさん:2012/02/17(金) 19:18:41.35
何を言ってるんだ。
Pythonだって2.xと3.xで互換ないし、
Rubyだって1.8と1.9で互換ない。
断ち切ろうと思えば断ち切れる。
ただ、断ち切ると失うものも大きいだけ。
845デフォルトの名無しさん:2012/02/17(金) 20:55:19.39
がんばってくださいね^^
846デフォルトの名無しさん:2012/02/17(金) 21:43:57.47
普通にDate使ってるけど時々Dateがイミュータブルじゃないのが気になる
でもやっぱりイミュータブルみたいに使う
847デフォルトの名無しさん:2012/02/17(金) 21:45:30.79
質問させていただきたいです。htmlに記述するスクリプトで




<!--
function chgColor()
{
if(document.getElementById)
{
document.getElementById("box").style.color = "#575757";
}
}
// -->

として、"box"が複数あり、

<div id = "subbox03">
<form><input type="button" value="1" onclick="chgColor()"></form>
<p>AAAAAAAA</p>
</div>
<div id = "subbox03">
<form><input type="button" value="2" onclick="chgColor()"></form>
<p>BBBBBBBBB</p>
</div>


文字色は同じなのですが、1をクリックした時はAAAAの文字色を変更、
2をクリックした時はBBBの文字色を変更するやり方がわかりません。
引数を渡してやればいいのだと思いますが、どうやって渡してやればよいのでしょうか。
初歩的な質問で申し訳ありません。
848デフォルトの名無しさん:2012/02/17(金) 21:46:31.74
>>847
すみません、ミスです"subbox03"の箇所は全て"box"です
849デフォルトの名無しさん:2012/02/17(金) 21:48:19.40
JavaScriptスレへどうぞ
850デフォルトの名無しさん:2012/02/17(金) 21:49:36.64
>>849
申し訳有りません、勘違いしていました。失礼します
851デフォルトの名無しさん:2012/02/18(土) 03:13:20.89
これからjavaを始めようと思っているのですが
Windows(32bit)のコンパイラはどこから入手すればいいんですか?
ページは多分ここで良いと思うんですがダウンロードできません
リリースが終わったんですか?
http://java.sun.com/javase/ja/6/download.html
852デフォルトの名無しさん:2012/02/18(土) 03:17:07.00
853デフォルトの名無しさん:2012/02/18(土) 03:24:41.95
>>736
それもそのSQL投げるところをすべてORマッピングでラッピングするとか…
大変だけどね
854 忍法帖【Lv=6,xxxP】 :2012/02/18(土) 03:27:16.48
>>772
それもわかるけどScalaってそんなに凄いのか
何がいいのかものすごく気になる
855デフォルトの名無しさん:2012/02/18(土) 03:27:45.48
>>852
なるほど
だからファイルが存在しないんですねえ
初心者ですいません、これはどれをダウンロードしたらいいんでしょうか
856デフォルトの名無しさん:2012/02/18(土) 03:36:58.26
http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html
バージョン7でいいなら Java SE 7u3 の JDK。
バージョン6がいいなら Java SE 6 Update 31 のJDK。
JDKって書かれているところの下のDownloadボタンを押す。
JREだと開発できないよ。

Downloadボタンを押した後のページで、
windows-i586.exe で終わる名前のファイルをダウンロードする。

ダウンロードする前に、
Accept License Agreement というラジオボタンを押さないとダウンロードできない。
857デフォルトの名無しさん:2012/02/18(土) 04:12:23.26
>>856
たびたびすいませんでした
やっとインストールすることができました
ありがとうございました
858 忍法帖【Lv=7,xxxP】 :2012/02/18(土) 05:06:20.99
>>773
> ジェネリスクというかテンプレート信者に汚染されたものなど使いたくないわ!
> ってことで未だにjava1.4互換を保って開発してます。

それも困るわな
C++テンプレートよりもかなり安全でものすごく便利なのに
859デフォルトの名無しさん:2012/02/18(土) 05:30:07.04
>>858
ジェネリクスなんてテンプレートの超絶劣化コピーとしか言いようがないのに、具体的に何が安全で何が便利?
少なくともメタプログラミングにジェネリクスは使えない
860デフォルトの名無しさん:2012/02/18(土) 09:59:59.67
FTPでファイルを取得し、その新規で保存されたファイルを参照するにはどのようにプログラムを組めばいいでしょうか?
是非聞かせてください。
861デフォルトの名無しさん:2012/02/18(土) 10:03:05.37
なめてんの
862デフォルトの名無しさん:2012/02/18(土) 10:03:28.28
日本語のjavadocはもうないんですか?
863デフォルトの名無しさん:2012/02/18(土) 10:13:44.34
>>860です
Javaで組むところは、フォルダに新たに加わった物を参照するところです。
現在あるファイルを外部ファイルに保存しておいてそれを参照し、差し引いて考えるべきなんでしょうか?
また、カレントディレクトリではなく違うディレクトリを参照するにはどうすればいいでしょうか?
864デフォルトの名無しさん:2012/02/18(土) 10:17:38.78
そんなのは質問するまでもない。
865デフォルトの名無しさん:2012/02/18(土) 10:32:40.68
>>862
英語の読めないプログラマは不要。
866デフォルトの名無しさん:2012/02/18(土) 10:44:34.20
オッス!オラ狂う
867デフォルトの名無しさん:2012/02/18(土) 11:50:21.08
>>863
まずは日本語の勉強から始めろ
868デフォルトの名無しさん:2012/02/18(土) 13:32:04.43
>>859
いつものあれが便利じゃないか
コレクションでは逆に不便なのか?
自作するのが大変だがうまく自作に成功すれば
ものすごく活用できる
キャストの手間がかからない点だな
869デフォルトの名無しさん:2012/02/18(土) 13:39:20.96
最新の32bitのjavaインストールしようとすると
"インストールを完了するのに必要なDLLを事項できませんでした"
ってアラートがでてセットアップできない。

ググって対策しても治らず。 どうすればインストールできるの?
870デフォルトの名無しさん:2012/02/18(土) 13:58:12.03
>>869
「最新のJava」でエスパーできる奴がいるとでも思ってるの?
そもそもあんたみたいな雑魚が管理者権限持ってるの?
871デフォルトの名無しさん:2012/02/18(土) 14:04:22.82
j7u2とj6u30までなら、何の問題もなく
インストール出来たけどな、j7u3とj6u31は
まだ試してない。
872デフォルトの名無しさん:2012/02/18(土) 14:07:32.30
>>870
確かにいないよね 抜けてたわ
追記させていただくと>>869の「最新のjava」ってのはVersion 6 Update 31の事です。
管理者権限も持ってます
873デフォルトの名無しさん:2012/02/18(土) 15:55:07.54
ファイルに書き込む度に、ファイルの内容をカラにして書き込むようにするにはどうすればいいんでしょうか?
~.write("")って書き込むと初期化できると思ってたんですが、追記されてしまいます。
874デフォルトの名無しさん:2012/02/18(土) 17:33:35.44
>>868
その程度の用途ならC++も同程度に安全で便利だろう?
875デフォルトの名無しさん:2012/02/18(土) 17:35:20.26
long t = System.currentTimeMillis();

try {
Thread.sleep(100);
} catch (InterruptedException e) {}

System.out.println(System.currentTimeMillis() - t);

これで結果が100以下になることがあります。何でですか?
876デフォルトの名無しさん:2012/02/18(土) 17:58:01.52
>>868
人間は集中力を得るためには単純作業が効果的だから俺は以下を黙々と書く。
Iterator i=a.iterator();
while(i.hasNext()){
X x=(X)i.next();
}
877デフォルトの名無しさん:2012/02/18(土) 18:07:45.16
>>876
スコープを汚染するな!

for (Iterator i = a.iterator(); i.hasNext(); ) {
  X x = (X)i.next();
}
878デフォルトの名無しさん:2012/02/18(土) 19:17:40.91
>>873
いったん閉じて開き直すとか
>>875
currentTimeMillisの精度が低いんじゃね
879デフォルトの名無しさん:2012/02/18(土) 19:33:23.59
>>876
for (X x : a) {
}
880デフォルトの名無しさん:2012/02/18(土) 20:10:30.67
>>873
java.nio.channnels.FileChannel の truncate() は三鷹?
881デフォルトの名無しさん:2012/02/18(土) 21:52:11.92
>>877>>879
まで短縮すると、逆にイラッとする俺ガイル
882デフォルトの名無しさん:2012/02/18(土) 23:27:38.56
同じオブジェクト内のメソッドAとBで
AがsynchronziedでBがsynchronizedじゃない時、
Aにsynchronizedがついている事でBのパフォーマンスが低下する事はありうる?
883デフォルトの名無しさん:2012/02/19(日) 00:18:32.38
>>872
> >>870
> 確かにいないよね 抜けてたわ
> 追記させていただくと>>869の「最新のjava」ってのはVersion 6 Update 31の事です。

どこが最新なんだw
普通最新のJavaといったらJava 7 update3のことだろ
884デフォルトの名無しさん:2012/02/19(日) 01:04:31.15
>>883
それなら>>870は馬鹿ってことでOK?
>「最新のJava」でエスパーできる奴がいるとでも思ってるの?
885デフォルトの名無しさん:2012/02/19(日) 01:38:11.04
>>789
の問題を、練習でソース作ってみたんですが、これに機能実装させるにはどうしたらいいのでしょうか?
メニューの機能動くようにならなくて…
886デフォルトの名無しさん:2012/02/19(日) 01:39:22.45
>>885
貼り忘れましたがこれがソースです
http://ll.la/wjEv
887デフォルトの名無しさん:2012/02/19(日) 01:44:12.73
バージョンどんどんアップして行って対応するの大変だな
デバッグが一番大変だわ
全部のバージョンのエミュで起動してテストしては、治して
Androidはオワコンだね
888デフォルトの名無しさん:2012/02/19(日) 04:44:28.93
>>884
バカはJava6が最新だと思ってた質問者

だが「最新のJava」なんて曖昧な表現は誤解を招くから
そんな曖昧な表現を使う質問者はほとんど相手にされなくなるってことを自覚すべきだ、
889デフォルトの名無しさん:2012/02/19(日) 04:49:12.96
>>887
Javaは後方互換性があるからさほど気にならない

問題はサードパーティ製のライブラリやフレームワークのバージョンアップ
EclipseなどのIDEのバージョンアップ

Eclipseは3.2以降から不安定になってバージョンアップするたびにプラグインの入れなおし
プラグインどうしの互換性も怪しくなることが多くてEclipseを一からインストールしなおすとか
何度もつらい体験をした

あとJava 5 が出た頃、Genericsやアノテーションといった機能が登場して当時は興奮したが
Eclipseが即座には対応してくれなくて、それらの機能をEclipseで堪能することができなかった

また各種ライブラリ、フレームワークも同様にJava 5 のGenericsあアノテーション対応が遅れて
Java 5 の新機能が生かされるまで時間がかかった。
Apache Common CollectionsなんかJava 5 が登場してかなり時間が過経過しても
Genericsやアノテーションには即座に対応してくれなかったものだ。
対応するまで時間がかかるかかる。
890デフォルトの名無しさん:2012/02/19(日) 04:49:32.55
> 普通最新のJavaといったらJava 7 update3のことだろ
「最新のJava」=Java 7 update3 でしょ。
「最新のJava」のどこが曖昧な表現なの?
891デフォルトの名無しさん:2012/02/19(日) 04:57:53.01
> 普通最新のJavaといったらJava 7 update3のことだろ

> だが「最新のJava」なんて曖昧な表現は誤解を招くから

この2つは矛盾してるよ。
前者は「最新のJava」=「Java 7 update3」と言い切ってるのに、
後者は「最新のJava」= 曖昧 になってる。
言ってることが滅茶苦茶。
892デフォルトの名無しさん:2012/02/19(日) 05:32:10.09
>>884
>>870はエスパー
まあ、最新版のことを言っていないと言うのは臭っていたということ?
893デフォルトの名無しさん:2012/02/19(日) 06:00:35.25
まあ最初の質問の仕方がダメダメですからね。
894デフォルトの名無しさん:2012/02/19(日) 06:07:25.71
あいからわず雑魚ばっかりだなw
895デフォルトの名無しさん:2012/02/19(日) 06:39:43.21
いまさら横槍スマソ。
ただの暇つぶしに長文書いてみただけさ。

>>884
「最新のJava」=Java 7 update3
「最新のJava」=Java 6 update31
"最新"って表現が含む意味次第でどっちも正解にも不正解にもなる。
おまけにその含みをどう捉えるか行間読んで答えてあげようにも、
ヒントが"javaインストール"っちゅうこれまた曖昧な話しかない。
だから親切な>>870が指摘してくれたのさ。

まぁ質問文の時点で、
質問者はJREとかJDKとか言ってもよくわからない情報弱者さんで間違いなさそうだから、
java.comのトップにあるエンドユーザ向けダウンロードのものって考えてあげられなくもないけど。

(蛇足)
>>883のように「普通最新といったら」なんてどんな場合の"普通"の話をしてるのか相互理解がないまま、
勝手に自己完結して"普通"と言い放ってしまうのはデキる技術者のすることじゃない。
896デフォルトの名無しさん:2012/02/19(日) 07:08:38.31
>>895
そういうことを言おうとしたけど面倒だからやめておいた。
わざわざ書いてくれてありがとう。
897デフォルトの名無しさん:2012/02/19(日) 08:53:23.37
まあ>883の余計な茶々がなければ
「最新のJava」→「最新っていわれてもわからん」→「Java6の最新です」
で終わっていた話
898デフォルトの名無しさん:2012/02/19(日) 09:31:16.60
すまんが、この為替レートの部分(JavaScriptでリアルタイムで更新される)を、なんとかほぼリアルタイムで取り込む方法ってないかなあ?
http://fx.yahoo.co.jp/chart/index.html
パケットキャプチャ作って取り込む以外に、なんかいい方法ありそう???
899デフォルトの名無しさん:2012/02/19(日) 09:45:32.68
JavaScriptでリアルタイムで更新されてるんなら
そのまままねすれば委員で内科医
900デフォルトの名無しさん:2012/02/19(日) 09:47:17.42
USD/JPYを80円強でSしとけ
901デフォルトの名無しさん:2012/02/19(日) 09:49:21.96
>>899
おお、その通りだった。
ぼけとったw
902デフォルトの名無しさん:2012/02/19(日) 10:29:46.84
test(? extends ClassName)はClassNameまたは継承したクラスはOKという意味だと思います。
しかし、?を単体で使っている時がありますが、単体で使った場合どういう意味なのですか?

なぜ、これはダメなの?
ArrayList<?> l = new ArrayList<String>();
903デフォルトの名無しさん:2012/02/19(日) 10:44:56.51
? 単体は Object でも String でも Integer でもなんでも当てはまるという意味

別にダメくないよ
ただ何も add できないから役に立たないだけ
904902:2012/02/19(日) 10:52:22.47
>>903
>? 単体は Object でも String でも Integer でもなんでも当てはまるという意味

それでは、class ClassName<T>のTと?の違いは何ですか?
905デフォルトの名無しさん:2012/02/19(日) 11:01:11.71
何か名前を付けないと、class の中でその型名を参照できないだろ
T でも E でも X でも Hoge なんでもいいんだ
906902:2012/02/19(日) 11:15:47.44
>>905
わかりました
ありがとうございます
907デフォルトの名無しさん:2012/02/19(日) 12:29:15.46
>>885
最低限の機能を実装しておきました。
http://ll.la/DOwf
908デフォルトの名無しさん:2012/02/19(日) 14:06:44.87
SWTにてJavaアプリを作っているのですが、処理中にウィンドウを非アクティブにした後
アクティブに戻すと、処理が終るまで一切画面の更新を行ってくれないのですが
強制的に画面全体の再描画をする方法はありますか?
909デフォルトの名無しさん:2012/02/19(日) 15:03:30.31
人生相談に載ってください。
某企業で害虫でSEをやっているのですが、すごくむなしいです。
JavaとStrutsやらSpringやらを掛け合わせたオリジナルWebフレームワークを使って
Web上でシステムを作っているのですが、
10年ほど前の低性能な開発環境のうえ十分な資料もなくとても作りづらいです。

しかし、スケジュール管理や仕様作成、管理などはExcelとVBAで作られたアプリが使われているのです。
DBにもつなげれているし、デバッグ機能もついているのだから、なんでこっちでやらないのかと叫びたくてしょうがありません。

Excel上で画面を作れるならいちいちJSPで細かくタグなんて打たなくても良いのに、
バク重のEclipseやTomcatの起動もXMLの記述も、もうヤダ。
なんでわざわざ面倒くさいjavaなんて使わなけりゃいけないんだと小2ヶ月…。
帰りの電車で貨物列車がとおったとき飛び降りたくなります…。
910デフォルトの名無しさん:2012/02/19(日) 15:08:34.75
さっさと死ねよ
911デフォルトの名無しさん:2012/02/19(日) 15:31:27.44
Java叩きになってないぞ
やり直し
912デフォルトの名無しさん:2012/02/19(日) 15:43:03.62
>>908
再描画のための java.awt.Component#repaint() ってのがあるけど、
再描画するのはEDTだから、EDTの手が空いてない時は再描画できない。
再描画したければ重い処理を別スレッドでやることですな。
913デフォルトの名無しさん:2012/02/19(日) 16:43:23.34
>>907
ありがとうございます。
わからなかったところが解決しました。
914デフォルトの名無しさん:2012/02/19(日) 16:57:51.32
高校の課題でわからないところがあるので教えて欲しいです。
■システム概要
ユーザがキャンパス上で指定した座標に点を描画できる。
(マウスドラッグ状態で連続して点を描画できる)
また、カラーパレットがあり、描画する色をクリックすることで選択できる。
なお選択できる色は、黒、赤、黄、青、緑、白の6色。
■UI概要
http://www1.axfc.net/uploader/Img/so/136309
こんな感じの問題で
キャンパスは出来たのですがカラーパレットが作れなく、
うまくキャンパスに色が付けれません。どうしたらいいでしょうか?
一応出来たソースはこんな感じです。
http://ll.la/SWF)
915デフォルトの名無しさん:2012/02/19(日) 16:59:39.02
>>914
うまくはれなかったのでソースのファイルです。
http://www1.axfc.net/uploader/File/so/75575
916デフォルトの名無しさん:2012/02/19(日) 17:03:26.87
ユーストリームの広告がホップアップしてきたら自動で消すスクリプトの作り方を教えてください
917デフォルトの名無しさん:2012/02/19(日) 17:07:33.14
>>914
★★ Java の宿題ここで答えます Part 71 ★★
http://toro.2ch.net/test/read.cgi/tech/1309076891/l50
>>916
スレ立てるまでもない質問はここで 117匹目
http://toro.2ch.net/test/read.cgi/tech/1328439334/l50
918デフォルトの名無しさん:2012/02/19(日) 17:08:19.58
>>914
宿題スレに行けば構って貰えるぞ
919デフォルトの名無しさん:2012/02/19(日) 17:09:43.75
わかりました。板違いすいませんでした。
920909:2012/02/19(日) 18:16:04.49
>>910
ひ、酷い…。
スレタイに相談って書いてあるから深く思いつめてる悩みをぶちあけたのに、死ねだなんて…。

>>911
Javaは叩いてません。趣味でゲーム作ってるくらい好きです。
叩いてるのは配属先の会社です。害虫、害虫と私を虐げるあのにっくき大企業です。
Javaのjの字も知らない、脳みそが20年前で止まったCOBOL脳共に奴隷のように使われて、
意味不明な仕様書を書く設計に振り回されて、設計修正は遅いのにロジックのミスを延々と突いてきて、
同じJavaの先輩もわからないことを質問すると、聞き方が悪い、メモの採り方が悪い、学び方が悪い、生き方が悪いだの、
私をこけにする人間ばかり。毎夜毎夜うなされてほんとう死にたいですよそりゃ。
でも少しでも解決の糸口になるんじゃないかとここでなんとなく相談してみたんですよ。
921デフォルトの名無しさん:2012/02/19(日) 18:26:32.83
>>920
なんてことだ、真性なのかこの荒らし
マ板でやれ糞ゴミ
922デフォルトの名無しさん:2012/02/19(日) 18:31:06.06
転職してもいいんだよ。死んでもいいんだよ。
そこにいるのはお前が選択した結果。
あと、おっさんを能なしだと思うのは勝手だけど、
それを表にだすのはやめたほうがいい。
オレもお前も20年すれば同じ立場だ。
COBOL脳だってそれなりの筋道があってその仕様を出してくるのに
それを端から否定する目線で見てるんじゃないの?
そういうのってすけて見えるもんだけど、
自分が歩み寄ると、意外と相手も歩み寄ってくるもんだ。

でも、スレの趣旨と合致しているかどうかも見分けがつかないなら
きっとその上司の言ってることのほうが合ってるよ。
923デフォルトの名無しさん:2012/02/19(日) 19:02:12.27
ポエム板かと思ったわ
924デフォルトの名無しさん:2012/02/19(日) 20:14:08.54
COBOL脳には筋道なんてありません
925909:2012/02/19(日) 20:29:33.96
>>922
はい、確かに私はJAVAができない人をさげすんでみてる気がします。
上司の言ってることも正しいのでしょう。
しかし、私は素直にそれに従う気持ちになれないのです。

私は高校、大学とプログラミング三昧でした。
大学の研究では処理をいかに早く、バイナリをいかに早く解読するかを突き詰めていました。
書く文章は数式や論理式、計算式とその解説でした。
とにかくプログラムで1と0の計算をしていたかった。

それが社会に出てみたらどうでしょう。
仕事の中でプログラミングが1割未満、残りの9割は仕様書を書き、眺めるばかり。
コーディングもInput Process Outputという単純な式でif文の羅列ばかり。
右から流れてきた仕様書をパソコンに打ち込んで左の人に報告という作業の繰り返し。

大学で論理や数式を学んだ結果がこれだなんて、なんのために今まで勉強してきたのやら。
『因数分解なんてできて何の意味があるんだ』という言葉の意味がわかります。
必要なのは設計書を書く知識だけ。

今の日本の情報教育は間違っていると思います。
情報リテラシー、プログラミング、ハードウェア、
こんなの学んだってサラリーマンのデスクワークな開発には何の役にもたたない。
それより必要なのは、UMLがかけてガントチャートがかけてIDEF1XなER図がかける知識です。
使うソフトはVisualStudioもEclipseもいらない。図をかくためにExcelだけ覚えておけばいいでしょう。
それなのにスーパーハッカーの夢を見させて、プログラミングとアルゴリズムを教える。
926909:2012/02/19(日) 20:30:38.98
そんな教育に染まってしまった私は、もはや今の現場に夢が持てません。
なりたいと思う先輩がいません。確かに仕事をものすごく効率的にこなす人がいますが、
その人の何がすごいかというと、設計書を書くためにExcelのショートカットキーをこなせて、
必要なソースを探し当てるためにEclipseの機能を理解してるだけ。
ほかのできる人もそうです。今の職場につかりきってるだけなんだなって。
社内でしか通じない狭い範囲の古くから続く慣習をただひたすら覚えてきたから評価されてる。

私は、そんなふうに評価される人間になりたいと思えないのです。
だからCOBOLしか使えない人間などとさげすんでしまうのでしょう。
でも、しょうがないじゃないですか。
いくら周りがその人をすごいと言っても、私は微塵もこんな人間になりたいと思えないのだから。

私がなりたいと思う将来像は所詮、趣味の範疇のプログラマーのことだったのでしょう。
毎日毎日パソコン付け、こんなのは社会は必要としない。
そんなの自分の部屋の中に引きこもってやってろってことなんでしょう。
そう思うと社会が私を望んでない、私も社会を望んでないんだなと思います。
将来のビジョンが作れず、むなしく明日も出社するのかと嘆きながら、うなされながら寝るんですよ今日も。
927デフォルトの名無しさん:2012/02/19(日) 20:39:58.84
ドワンゴとか入ればいいと思うよ。
928デフォルトの名無しさん:2012/02/19(日) 20:48:24.94
>>926
俺は日銭しか稼いで無いけど
年がら年中好きなプログラミングをやっているから幸せだよ。
でも凡人に俺のような生き方はおすすめできない。
俺ほど孤独に強くそして独創性の溢れる人間は少ないからな。
ちょっと独創性がありすぎてこの板で全く発言できない。
何故なら皆さんが凡人過ぎて可哀想だから。

929デフォルトの名無しさん:2012/02/19(日) 20:49:28.28
>>925
ここ読むといいよ
http://bit.ly/zzz52M
930デフォルトの名無しさん:2012/02/19(日) 21:46:53.92
>>925
>大学で論理や数式を学んだ結果がこれだなんて、なんのために今まで勉強してきたのやら。
>今の日本の情報教育は間違っていると思います。
悪気は無いが…
君の発言は意訳すると「私は井戸から出たことなかった自信過剰な低脳蛙です」ってのが現実。

思うに君は、学生時代は人一倍プログラミングできて周りに「凄いヤツ」ってチヤホヤされてたんでしょ。
それでカンチガイしちゃった自信過剰なヤツが社会に出て1〜2年目、君と全く同じことを言って消える。
そんなことくらい学生時代に知っとけよ、ろくに業界研究もしないで就職決めたからそうなる。

情報教育が間違ってるなんて苦しいイイワケしてても成長しないぜ。
評価されないのはお前に自分が思ってるほど実力がないから、そこで評価される人間になっても嬉しくないってのは逃げでしかない。
君の得意な技術一筋の仕事しても、Excelでお上手に図書いてるそいつらにも勝てないよ君は、本質が何もみえちゃいないからな。
931デフォルトの名無しさん:2012/02/19(日) 21:51:42.57
>>929で終わってた
932デフォルトの名無しさん:2012/02/19(日) 21:53:34.17
>>931
すまんw
933デフォルトの名無しさん:2012/02/19(日) 22:30:33.58
>>877
それでもスコープを汚染しているくせに。スコープを汚染するな!とは無能なり。
934デフォルトの名無しさん:2012/02/19(日) 22:40:57.25
>>933
はあ?あんた何言ってんの?
935デフォルトの名無しさん:2012/02/19(日) 22:49:51.79
>>934バーカ
Iterator i;
for(Iterator i;;){}
エラー

936デフォルトの名無しさん:2012/02/19(日) 22:55:47.39
その場合汚染しているのは最初のiだと思うけど。
まあいいや。
あとは馬鹿同士でがんばってくれ。
937909:2012/02/19(日) 23:08:39.79
>>928
いいですね。その日暮らしで生きていきたいものですが、家族が許してくれないという壁が大きいですね。
年金とか税金とか払えるのかって、生涯賃金しっかり稼げるのかって。

>>930
はい自意識過剰です。Fラン大学を周りからちやほやされて上位3位で卒業しましたよ。

でもそうやって育ててきたのはやっぱり学校だと思いますよ。
会社がほしい人材と学校の教育方針が思いっきりずれてるとよく言われてますし、
パソコン学んだから仕事できるんだと言われても、
まったく未経験者だけど設計書書いてバッチ書いてる人もいますし。
結局、高校や大学で教ええるパソコンの知識なんて趣味でプログラム作るためのもので、
社会ではまったく役立たないとやっぱり思います。

配属先の会社、部署までを入社前に調べられるのは内通者か企業スパイだけでしょ。
会社はインターンとか会社説明では現実をおもいっきりぼかしてる。
業界研究なんてものは営業向けだけ、わかることはその会社の営業が客先にどうやって頭を下げているかしかないですよ。

みんなだまされた気分になって、イヤイヤでやめるやめるって言いながら仕事やってくんでしょ。
1〜3年でやめる人間は職務経験者3年以上じゃないから社会的に別枠にされるだけで
5年でやめる人間も、10年でやめる人間も結局イヤだからやめただけ。
ずっと続けてる人も嫌だけど何かしら吹っ切れるタイミングがないから続けてるだけかと。

配属先は2ヶ月弱なんで自分の評価は現状、可もなく不可もなくだと思いますし、
これからも上司のイヤミに耐えてれば会社に入れるレベルの評価はもらっていけるかなと思います。

私の将来像を描くなら、今の配属先で超絶ストレスたまりながらも
やめると言えずにグダグダグダ仕事を続けるって感じですかね。
社会人なんだから誰かが「すごいね」なんていって褒めてくれるわけないですし、
他人の評価が低くても、クビレベルの評価や整理解雇が無い限り働き続けて、
自分は成長したいとも思っていないのでショートカットキー覚えて少し効率が上がる程度、
朝、会社いって夜帰宅の繰り返し。
938デフォルトの名無しさん:2012/02/19(日) 23:12:14.94
>>937
さっさと死ね。目障りだ
939デフォルトの名無しさん:2012/02/19(日) 23:13:46.29
まったくだ
Javaと関係ない話は他所へ行きたまえ
940デフォルトの名無しさん:2012/02/19(日) 23:22:23.73
Javaの質問でも相談でもねえ

死ねよカス
941デフォルトの名無しさん:2012/02/19(日) 23:22:41.46
>>937
本質が読み取れない残念なヤツだってことは十分わかったからもう黙っとけ
おまえはどこ行って何やっても誰のせいだ会社のせいだ文句タレるだけ、どこ行っても変わらんよ

>私の将来像を描くなら、今の配属先で超絶ストレスたまりながらも
>やめると言えずにグダグダグダ仕事を続けるって感じですかね。
羨まれるようないい会社だな、カスにも仕事くれんだから感謝して働け

>社会人なんだから誰かが「すごいね」なんていって褒めてくれるわけないですし、
そりゃおまえはなw

>自分は成長したいとも思っていないのでショートカットキー覚えて少し効率が上がる程度、
一生コンビニでバイトでもしてろ
お前にITは向いてない
942デフォルトの名無しさん:2012/02/19(日) 23:30:44.77
自分の中で結論出ていて、それを変えるつもりもさらさらないのに
相談するという体で持論をぶちまけるだけ。
三項演算子からやり直しだな。
943デフォルトの名無しさん:2012/02/19(日) 23:47:37.76
話ぶったぎりで質問

テキストデータから文字列を取得し
その文字列の長さを判断して、TAB区切りがしたい

AAAAAA   AA     AAA
AAAA    AAAAA AAA
(2ちゃん投稿だとちょっとズレるがこういう感じ)

static double Tab(String str){
double count;
count = 10 - Math.ceil((str.getBytes().length)/8);
return count;
}

全角半角交じりを考慮したらlength()は駄目っぽいのでgetBytes()
そしてメモ帳標準のTABの文字列(バイト数)が不明ながら、8文字?8バイト?っぽいので
8で割って、繰上げ。

であれこれ考えて、文字列の長さに応じてTabを追加するメソッドを作ってみたけど頓挫した。
もっとあっさり出来そうな・・・出来ないような・・
944デフォルトの名無しさん:2012/02/19(日) 23:59:10.00
>>943
何がしたいかさっぱりわからない。
Tab関数の引数に何入れるの?
Tab関数に"AAAAAAAAAAAAAAAAAAAA"突っ込んだら3.0が返ってくるとけど、これ何に使うの?

あとテキストが2行あるとして、
2行目のデータが1行目のタブの数に影響を与えるの?
例えばデータが
A A
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA A
の場合、1行目のスペースの間にタブをいくつも入れるの?
945デフォルトの名無しさん:2012/02/20(月) 00:02:27.22
寧ろなんでそんなことしたいのか問い詰めたい
946デフォルトの名無しさん:2012/02/20(月) 00:09:37.84
Name1 Name2 Address
ああああ AA BBBB
あA ああああAA えB

のようなデータを読み取り、splitってぶった切って
その文字列に"\t"をつける。(その数を調べるメソッドが目的)
そしてタブ区切りで表のようなにコンソール表示したいというのが目的です。

スペース区切りでなくタブ区切りでファイルを保存すればいいだけじゃんw
と、突っ込まれそうですがJavaの文字列操作の練習も兼ねているので

>>944
一番最後の質問は一番長い文字列に合わせてタブが増える事になるので
1行目のスペースの間のタブはものすごく多くなる計算をさせるつもりです。
一番長い文字列かを調べるのはとりあえず無しで、一番長い文字列を考えてリテラルな値を入れる

count = 10 -  の10がその値です。
947デフォルトの名無しさん:2012/02/20(月) 00:16:17.13
>>946
練習兼ねてるんじゃ仕方ないな
スレ住人ともども何も言わず生暖かく見守る他ないな
948デフォルトの名無しさん:2012/02/20(月) 00:19:27.77
コンソールに表形式ならタブじゃなくスペース埋めで String.format("%-10s", str) とかでいいでしょ
タブは環境によって長さが変わるんだから見た目合わせるのに使うもんじゃない
949デフォルトの名無しさん:2012/02/20(月) 00:24:09.92
Tab関数に"AAAAAAAAAAAAAAAAAAAA"突っ込んだら3.0じゃなくて7.0か。

> スペース区切りでなくタブ区切りでファイルを保存すればいいだけじゃんw
最後の出力はタブ区切りじゃなくてスペース区切りってことかな?
>>943 のTab関数で返ってきた数値分だけスペース付ければいいだけじゃん。
950948:2012/02/20(月) 00:28:34.65
あ、全角文字考慮するとフィールド幅は調整しないとだめか
String.format("%-" + (10 - str.getBytes().length + str.length()) + "s", str) みたいな感じで(Shift JISなどの場合)
951デフォルトの名無しさん:2012/02/20(月) 00:30:10.97
サロゲートペアとか言い出す奴も居るから気をつけろ
952デフォルトの名無しさん:2012/02/20(月) 00:34:46.40
フォントに拠るとか言い出す奴も居るから気をつけろ
953デフォルトの名無しさん:2012/02/20(月) 00:34:51.32
いや、8で割ってるからTab関数はタブ数を返すのか。
その場合でも、Tab関数の戻り値の分だけタブ付ければいいだけじゃん。
何が難しいんだろう。
954デフォルトの名無しさん:2012/02/20(月) 00:45:25.74
これで生き残れ
スマートフォンアプリを中心に売る
サーバーはクラウド VPSを借りる
電話はスマートフォンSkype

オフィスはコワーキングスペースを借りる
http://bit .ly/sHz1UU

または
地方にプレハブ型の格安高性能オフィスを建て(300万〜500万)
レンタル自習室&シェアオフィスで収入を得ながらそこでアプリを開発する
http://bit .ly/iLIpJa
http://bit .ly/m7nkew
955デフォルトの名無しさん:2012/02/20(月) 01:36:46.96
>>953
質問者も回答者達の発言からも
「タブのバイト数=8」が確実ではなく、環境に依存するって話
956デフォルトの名無しさん:2012/02/20(月) 01:41:41.67
これまでDB関係の仕事ばっかりで、
プログラミングと言ったらVBAくらいした書いたことないのですが、
今度Javaいじることになりそうです。
詳しいことがまだわからないのですがいまからgkbrです。。

VBAにはそれなりに自信あるのですが、
VBAの知識・考え方でJavaやる時にも役立つことってありますか?

教えてください。よろしくお願いします。
957デフォルトの名無しさん:2012/02/20(月) 01:46:10.14
やってみればいいじゃないか・・・
958956:2012/02/20(月) 01:50:25.94
>>957
少し目を通したんですが、なんぞコレっていう感じで…。
違うとは思いつつ、何か共通点があるんじゃないか、とか思って…。
VBA知識を生かして早めに習得する方法とかあればいいかな、と思って書き込みました。

959デフォルトの名無しさん:2012/02/20(月) 02:05:36.37
自称VBAに自信がある、がどの程度かわからんからなあ
VBAにもクラスあるから当然使ってたんだろ?それなら特に困ることないだろ
960956:2012/02/20(月) 02:17:19.74
クラスモジュールとか使ってたけれど、
Javaって何か難しそうで。。
思考様式の違いというか、VBAとは格が違うと言うか…。
本格的なオブジェクト指向とか。

VBAと関連付けて学習するのが良しなのでしょうか。
961デフォルトの名無しさん:2012/02/20(月) 02:36:44.30
vbaでもオブジェクト思考らしい設計できてた人なら通用するが…
962デフォルトの名無しさん:2012/02/20(月) 02:53:47.14
>>960
両方使いこなすがJavaを先に知った立場からの推測だが
関連づけない方がいいと思うぞ
963デフォルトの名無しさん:2012/02/20(月) 02:55:11.81
なぜなら、VBAのクラスはエセなので
関連づけは縮退させることな等しくなり
本質的な理解の妨げになると考えるからだ
964デフォルトの名無しさん:2012/02/20(月) 03:44:45.13
>>960
.でメソッド呼ぶって分かってればOK
VBAに自信があるなら
新規でフレームワーク作るとかじゃなければ
既存コード見てれば大抵わかる

あとは標準モジュールはJavaでいうstatic classで
VBAのImplementsはJavaでいうインターフェース継承とか

例外(Exception)処理の仕組みは勉強しといたほうがいい。
それもDB関係の仕事でストアド書いてたんなら仕組みは同じ
965デフォルトの名無しさん:2012/02/20(月) 04:24:32.84
>>960
VBAの言語仕様とは関連付ける必要はない、というか無意味あるいは弊害にしかならん。
VBAとJavaに言語仕様上の関連は一切無いんだから。
じゃあ0からの勉強かっつうとそうではない。

VBAで初めて開発学ぶにしたって言語仕様云々以前かVBAに触りながら、オブジェクトとは、モジュールとは、クラスとは、インスタンスとはといった情報技術の概念を学んだでしょ。
その概念が、VBAやJavaの言語仕様の中でどう実装されているかが違うだけ。
概念はJavaの方が広く深くカバーしてる。
VBAを通して学んだ技術の概念はすべて活かしつつ、より広げながらJavaの言語仕様を覚えればいいだけ。
966デフォルトの名無しさん:2012/02/20(月) 04:26:54.61
長々と書いちゃったけど、一言にまとめると「>>963に同意」。
967デフォルトの名無しさん
一年未満の正社員で働く職場を間違えたなら、コンビニバイトを二週間で辞めるのと同じでさっさと辞めて他を探した方がいいんじゃないか。
しかし日本で人材派遣登録や契約社員をやってるなら、スキルだ資格だ云々と意地になっても所詮年収300万程度なんだし、JAVA業界界隈では所詮ITドカタと後ろ指さされるレベルの負け組でしかない。
Fラン大学ネタはもう飽きたけどせっかく大学卒業して年収300万程度の職場しか見つからないなら、ふがいない業界を選んだ自分について素直に諦めて日本型就業制度の歯車の一部(派遣コボラー)に染まっていく道もある。