2012年09月プログラム136: JAVAってこんなことも出来ないの? (473) TOP カテ一覧 スレ一覧 2ch元 削除依頼
Google App Engine for java (266)
VB.NET質問スレ(Part39) (362)
【アンチ】関数型言語は使えない【玩具】 2 (407)
プログラミング言語 Scala 8冊目 (562)
人気プログラミング言語ランキング (744)
プログラミング言語 Scala 8冊目 (562)

JAVAってこんなことも出来ないの?


1 :2007/05/19 〜 最終レス :2012/10/28
mainメソッドから値を返す。

2 :
>>1
System.exit(0);じゃだめかね

3 :
>>1ってプログラム言語もまともに使えないの?

4 :
ごはんを焚く

5 :
馬鹿キタコレ

6 :
まずお湯を沸かします

7 :
「苗を植える」からじゃないのか?

8 :
  __________   __   ______   _____     ___ ___    ___
 /              /  /  /   |        /   /__  __/ [][] _| |_| |__ _| |_
/_______   /__/  /_  | ____/      / /     |    _  | |_  レ'~ ̄|
          / / /__   _/ / /____      |  |___      ̄|  | / / /   /| |
         / /     /   |   /   __  /      \__|     |  |  ̄ /_  /  | |_
/ \    / /      /    |  /   |  /  /                 |_|     |__|   \/
.\  \/ /     / / /|_| / /|  | /  /
  \   /      \// /   / / \ V /            We are The Real Programmers
    \  \        / /   / /  /   \               http://pc11.2ch.net/prog/
     \/        /_/   /_/ ∠_/\_\

9 :
   ∩___∩
   | ノ      ヽ/⌒) あばばばばばば
  /⌒) (゚)   (゚) | .|
 / /   ( _●_)  ミ/    ∩―−、
.(  ヽ  |∪|  /    / (゚) 、_ `ヽ
 \    ヽノ /      /  ( ●  (゚) |つ
  /      /      | /(入__ノ   ミ   あばばっあびゃばびゃばば
 |       /       、 (_/    ノ
 |  /\ \       \___ ノ゙ ─ー
 | /    )  )       \       _
 ∪    (  \        \     \
       \_)

10 :
確かにできないね。
何となく必要性はわかるよ。
他のクラスから、既存のロジックを実行するクラスをコールする。
みたいなことでしょ?
で、その「他のクラス」は「既存のロジック」を実行した結果を知りたいんでしょ?
だとしたら、
「既存のロジック」を持っている既存のクラスで、
値の代わりにカスタムExceptionをthrowさせればいいんじゃない?
「他のクラス」はthrowされたExceptionで結果を判別できるでしょ。
ちょっとデザイン的には不細工に思えるけどね。
もしくは、
「他のクラス」からコールする前提のPublic methodを実装すればいいんじゃない?
結果的にはこちらが自然なんだけど。

11 :
>>1低脳乙。もうちっと調べて物を言え。
>>2でも言われているが...
java.lang.System.exit(int status);
現在実行している Java 仮想マシンを終了します。
引数はステータスコードとして作用します。
通例、ゼロ以外のステータスコードは異常終了を示します。
-----終了-----

12 :
釣りだろ?

13 :
> 4
最近はReal-timeもかなり良くなってるから、Javaで制御する炊飯器って問題なく作れると思う。

14 :
javaってGPUの機能使えるの?

15 :
>>11
return 1;
とか出来ないじゃん。

16 :
そこに何の問題が?

17 :
>>15
static void main(....
なんのためのvoid指定なんだよ

18 :
Javaって
  W r i t e O n c e , R u n A n y w h e r e
も、出来ないよね。

19 :
>>18
これができない時点で実は Java の存在意義ってほとんどなくなるんだけどなw

20 :
えっと、いまのところWrite Once, Run Anywhereが一番できることに変わりないのだけど。
少なくとも、Javaの存在意義が発揮できる程度にWrite Once, Run Anywareが実現できてるわけだけど。

21 :
perlの方が

22 :
例えば Perl はポータブルな GUI 作れないやん

23 :
て言うか、PC アプリに限れば Windows をターゲットにすればどんな言語でも
ほぼ Run Anywhere だからなぁ。

24 :
ププ

25 :
>>21
ファイルパスの扱いは?
あとは、スレッドの扱い。
印刷はどうする?
> 23
Macのユーザーは着実に増えてるわけで。
その程度の動作確率でRun Anywhereといっていいなら、Javaは充分Run Anywareだ。

26 :
Java以外で出来ないとでも思っているのか?

27 :
>>25
> その程度の動作確率でRun Anywhereといっていいなら、
> Javaは充分Run Anywareだ。
その程度の動作確率で充分な世界があるわけで、その世界だと
Java もその他の言語も充分 Run Anywhere
つまり、その世界では Run Anywhere なんて何の自慢にもなら
ないって言ってるんだけど、難しかった?

28 :
>>27>>18 はとんだ大間違いだと言いたい訳か

29 :
>>20
うん、まぁ、ある程度はそれができていることは認めるよ。
でも、厳密に Write Once, Run Anywhere ができていない以上は、
この点に関しては他の言語と程度問題の差でしかなく、一線を画す類のもんじゃない。
それでいて実現できてない理想の為にVM上で動かさざるを得ずパフォーマンスは悪い。
現状、それでも使い物にならないってほどじゃないから、妥協した上での選択肢として
Javaがそれなりに利用されてるってだけだってことをお忘れなくw

30 :
それなりねー・・・・

31 :
http://pc11.2ch.net/test/read.cgi/tech/1178945996/10n
>C: ケンシロウ
>C++: ラオウ
>D: トキ
>Java: ジャギ
これ、言いえて妙だと思ったw

32 :
>>29
Run Anywareで問題になってるところって、たとえば何があるの?

33 :
北斗の拳を知らないのか、プログラミング言語を知らないのか、どっちなんだろう…

34 :
>>32
それは Java 厨のほうがよく知ってることだと思うんだが。

35 :
つまり、想像でRun Anywhereができないと言ってるわけかな?
パフォーマンスが悪いってのも、どういうアプリケーションで問題になるの?
あと、程度問題でも、実用上の差があれば一線を画すわけだが。これはRun Anywhereの問題に限らずね。

36 :
>>35
ハイハイ、じゃヴぁはすごいねぇ。ほんとすごいよ。
これでJavaしかできない劣等プログラマでも一安心だねw

37 :
むしろ、Run Anywareが特に効果を発揮した場所を知りたい。結局プラットフォームごとにデバッグするわけで。

38 :
スペルミスorz
Anyware → Anywhere

39 :
いやぁ、3年前くらいだったら、こういうときに反論できなくなってたのはJava使いの方だったんだけど。
ほんと、Javaもすごくなったもんだ。
CPUが速くなってメモリが安くなったおかげってのもあるんだけど。
Javaしかできなくて心配だった時期もあったんだけど、>36のレスみて一安心した。
ありがとう。

40 :
単なる興味の話なんだけど、JavaでLANカードのMACって作れるの?
組み込みLinux上で動くJavaVMとかあれば何とかなるんだろうか。
レジスタアクセスとか、物理メモリを直接触る操作とか辛そう。

41 :
>>37
え?
Windowsで開発して、実環境はLinuxというのが大規模アプリのレベルで行われてるわけで。
大規模じゃない場合、WindowsだったりMacだったりLinuxだったり、好きな開発マシンを使えるし。
プラットフォームごとにテストする場合も、同じテストが使えるしな。
あとは、MacとWindowsで共通のアプリを作る場合にもJavaが採用されるな。
Javaのおかげで、開発マシンのOSが自由に選べるのは、結構ありがたい。

42 :
>>40
そういうのはJNI使うだろうな〜。
言い訳としては、そういうアプリではRun Anywhereが求められない、って感じで。
需要が大きければ主要OS用のライブラリを誰か作ってくれて、しばらくするとJDKに取り込まれる。

43 :
>>41
俺はそれと同じことをC++で実際にやってますが、なにか?

44 :
> 43
それは、とても尊敬する。
そういうときって、Windows邪魔だよね。
あ、Cygwin使うのかな?

45 :
C++はRだからなー・・・

46 :
>>44
将来的にはGUIアプリなんかでも同様のことをやろうと思ってるけど、
現時点ではそこまでは及んでない。んで、別にGUIアプリじゃなきゃ
実はそんなに難しいことじゃなかったりする。
Cygwin は Windows 上から Linux 系向けのコードを簡単にテスト
する為の環境として重宝している。

47 :
>>42
JNIは初めて知った。
やっぱJava全然知らんなぁ、俺。
とりあえず外部DLLに頼らざるを得ない部分は出てくるわけか。
>Run Anywhereが求められない
めっちゃ欲しいっす。
MACみたいなハード寄りの組み込みプログラムなんかだと、
ハードウェアとソフトウェア、同時に開発進むこと多いんだ。(うちの会社の場合)
で、ソフトはエミュレータみたいなの使って動作確認やるんだけど、
ハードとの結合でボロボロ不具合出てくる。
でも出来ても結局リソース食うから、コスト的には使われなさそう・・・。>組み込みJavaVM
下手するとCPUすら削って、製造コスト下げようとするからネ!!

48 :
C++というか、周辺ライブラリだよね。
GUI使うと、WORAは結構悲惨。
というか、GUI使ってWORAだと、Javaが最善だと思う。
システムLAFもよくなったし、タスクトレイにアイコン追加できるようになったし。
GIMP見てると、GTKはWindows上で一般向けっていのはかなり難しいし。

49 :
>>47
なんか面白そうだな。
たまにはそんなジャンルの仕事もしてみたい。
いつもそんな仕事じゃいやだけどw

50 :
>>47
MACだけとか単純なものだったら、各環境でJNIやってもそこまで手間にならないと思うから、アプリ部分をJavaにしてWORAになるのはデカイと思う。
EclipseでもNetBeansでもC++の環境があってJNIやりやすくなってるし。
まあ、組み込みだとちょっとつらいかね。
ハードとソフトが同時進行の場合は、いかにハードのモックを作れるかが勝負だね。

51 :
>>49
Web+DBアプリってのは、プログラム的には一番面白くないと思う。
Ajaxなんて、流行りモノじゃなければ、無駄な作業以外の何者でもない。

52 :
>>48
JavaのGUIはSwingでしか作ったこと無いけど、確かに良いね。
多少見た目変わるけど、ほぼ確実に動く。(気がする
>GIMP見てると、GTKはWindows上で一般向けっていのはかなり難しいし。
いまひとつ意味が分からない
(閑話休題)
C/C++のマルチプラットフォームなプログラムは#if、#ifdef、#pragmaの
オンパレードだったりするしなぁ・・・。
こっちの問題は、そもそもC/C++はコンパイラの種類が多すぎる。
そのくせ標準のC/C++の関数だけだと大したこと出来ないし。
WinでもLinuxでも存在するgccは、その辺は強いかも知れない。

53 :
あ、業務アプリ系やってるのかなぁと勝手に推測してみた。

54 :
>>52
GIMPをWindows上で使ってファイル保存ダイアログが表示されるタイムラグとか使用感とか見てると、Windows上でのGTKって普通の人に使わせるにはちょっとつらいかなと。
C++で使えるクロスプラットフォームなGUIって、GTKくらいだよね?実用的なの。

55 :
>>53
>>51 は、なに言ってんのか、意味不明だったけどそういうことかw
おれ自身はいままで幅広くいろんなことをやってきたんでたいていの分野の特色は
ある程度はわかる。ただ、逆に汎用的なプログラマになっちまったせいで、これなら
誰にも負けないぞ的な部分に欠けるのがちと痛い。
汎用的だと潰しはいくらでも利くけど、極端に高い給料がなかなか望めんのよね。

56 :
>>54
知ってる限りではGTKぐらいだなぁ。
>一般的でないって話
なるほど。
んー・・・俺の場合はEtherealがサンプルになるけど、確かに遅いは遅い。
が、2年前ぐらいにJBuilderで作ったJavaのGUIアプリと比べては
そんなにストレスに差は無かった気がするけどなぁ。
2年前とは既に別物なくらい早いとかJBuilderがクソとかなら
ちょっと経験上は比べらんないな。

57 :
>>54
コアの機能だけ移植性が高ければ、プログラミング言語側の都合を抜きにしても
GUIまわりはOS別に構築したほうが俺はいいと思ってるけどなぁ、昔から。
だって、そもそもGUIってプラットフォーム毎に文化が全然違うんだから、
それを無理に共通化するのなんてナンセンスだと思う。
例えば、iTunes を俺は最初に Mac 版で使ってんだけど、Windows 版を
初めて見たときなんかあまりのナンセンスぶりに思わずひとりで大爆笑しち
まったもんだよ。あんなのギャグ以外のなにものでもない。

58 :
>> 56
JDKのバージョンが問題だな。
JDK1.4.0でのSwingと、JDK6のSwingは、速さの点では別物。
JDK1.3だったりすると、話にならないレベル。
今は速さの点でSwingに不満が出ることはないと思うよ。

59 :
>>57
Swing使ってみ。
Mac用のVMをAppleが作ってるってのは、そういう点でかなりいいと思うよ。
Windows上の動作も、バージョン重ねるたびに改善されていってるし。

60 :
>>57
どうだろう。
一理あるけど、レイアウトは独立的でも、
各コンポーネントは共通の方が作りやすいかも。
>>58
JDK5だったかな。
系統的にはどっちになるか分からない。<1.4系?6系?

61 :
JDK5.0だったらかなり速くなってるはずだなぁ。5.0系。

62 :
>>60
確かに(例えば)リストコントロール周りの似たような処理を
OSごとに書くのは馬鹿馬鹿しい気もする
どこまでを共通のフレームワークとするのかはまた別の話だけど

63 :
>>61
んー、そんな個人的にはGTKもSwingも、実用的な速さだと思う。
同じぐらいの速さだった気がするなぁ、って程度の話。
スペック低いPCだと顕著な差が出たりすんのかねぇ。
ではそろそろ寝る。

64 :
> 63
速さ的には、GTKの方が速いと思うんだよね。
ダイアログ表示が待たされるだけで。この遅さが結構つらいと思ったんだけど、それよりなんか使用感に違和感がありすぎて。
ファイル保存ダイアログの表示が遅いからGTK共通かと思ってるんだけど、もしかしてGIMPの保存ダイアログが特別遅いのかな。

65 :
あ、お休み〜ノシ

66 :
まちがえた、65=64

67 :
>>40
MACを作るってのがわからんけど、
MACアドレスなら 1.6 から java.net.NetworkInterface#getHardwareAddress() で取れるぞ。

68 :
>>67
MACソフトは、ハードウェアとドライバの間にあって、
ドライバからの送信要求をハードウェアに
ハードウェアからの受信通知をドライバに
それぞれ橋渡しするソフトウェア。
MACアドレスが取れるとかよりも、ROMやRAMのメモリにどれだけ自由にアクセス出来るか、かな。
具体的に例を挙げると、Ethernetの送信とかだと
ドライバからあるデータを送信しろという命令を受ける

データにEthernetのヘッダをつける

ある物理メモリの0x00210104にヘッダ付きデータの先頭を表すポインタを設定

0x00210100の第3ビットを1にする

ハードウェアがそのパケットを送信する
とかそういうインターフェースをラッピングする。
概念的なMACはまた違うけど、実装にあんま関係ないかな。

69 :
あー、ファームウェアみたいなもんか?

70 :
ていうか、ファームウェアの一種かな。

71 :
そのあたりの処理は NIC によってはドライバでやってる奴もあるし
ファームでやる奴もある。
残念ながら、まだ Java でどうのこうのできるレイヤーじゃなくて、
ASM / C / C++ あたりで書かれる。

72 :
もしそのファームがJavaで書かれてたとしてもPC上のJavaからは使えんから意味ないね。

73 :
実現したら携帯のアプリをJavaで作るのと同じようなノリになるのか?

74 :
実践的にJavaでプログラム書いてると
想像以上のぬるぽExceptionの出現の頻度に驚く
まじでCで書いてた時よりも多いよ
Javaってつくづく間抜けだなと思う

75 :
>>74

76 :
ぬるぽに遭遇するのは低級プログラマ

77 :
自分で組んだプログラムでのぬるぽは、言語の話ではなく単なるコーディング能力。

78 :
Cのスタイルで先頭にまとめて変数宣言するとぬるぽ多発しそうな悪寒。
変数は必要なときに、初期化つきで宣言するが吉。

79 :
TextBox hogehoge = new TextBox();
String fugafuga = hogehoge.getText();
みたいなときに
TextBoxの入力が空だった場合
fugafuga は "" になる? null になる?

80 :
""

81 :
>>78
クラスのインスタンス変数は先頭にまとめてしまいがちで
コンストラクタで初期化する傾向にありますが
何か良い方法はご存知ないでしょうか?

82 :
>>81
それはCスタイルとは意味が違うと思われ。
まあ、普通に初期化文法が使えるなら使えってのは一緒じゃないの?

83 :
>>74がbug量産プログラマということが証明されたのか、ふんふん

84 :
>>81
1.Eclipseで編集
2.DI(Springなんか)を使ってxml記述にて初期化

85 :
>>74はCでメモリ開放しないでコードかいてたんだよ。きっと。
そしてJavaにきてガーベッジコレクションでメモリ管理されるようになって
ぬるぽが続出しているんだ。
そして74はこれを回避するために一時変数とかをすべてstaticなフィールドにして
最初に初期化するという方法を思いつくんだ!
ぬるぽが出なくなって74は喜ぶが、代わりにロジックの誤りに悩まされてデスマに突入
ガッ

86 :
ぬるぽとがべこれは無関係だろ

87 :
84が負け組ということはわかった。

88 :
>>85
Cだと概念的にはnullのところがエラーとならずに値が読めてしまう場合あるだろ?
Javaだとそういうところ厳密なわけよ。
それはメモリ管理がガーベッジコレクションによって行われるようになって
プログラマの責務が減ったからからなんだよ。
新言語に搭載される機能が生まれてきた背景は知っても損はないぜ。

89 :
仮想マシンが null チェックやってるってだけのことだろ。
GC と何の関係もないよ。

90 :
>>54
> C++で使えるクロスプラットフォームなGUIって、GTKくらいだよね?実用的なの。
wxWidgets是非試してみて。
>>57
> GUIまわりはOS別に構築したほうが俺はいいと思ってるけどなぁ、昔から。
wxWidgets使えばGUIもWriteOnce, CompileAnywhere!

91 :
>>77
> 自分で組んだプログラムでのぬるぽは、言語の話ではなく単なるコーディング能力。
「ミスが出易い仕様」という言語の話。

92 :
ミスするのは人

93 :
確かにミスを洗い出しやすい仕様だな

94 :
>>89
まったく分からん奴だな。
CGがメモリ管理するようになって、alloc、freeみたいに
自力でメモリ確保と開放しなくてよくなったんだよ。
これは背景事情な。
で、自力でメモリ管理やるCの場合は、初期化していないアドレスに
アクセスすることがあったし、開放したメモリにアクセスすることもあった。
Javaの場合は前に使った値がメモリに残っている、とかそういうのはなくて
オブジェクトが生成されてなければ常にnullなんだよ。
だから、Cでメモリ管理ミスってるコードみたいな書き方をした場合は
みんなぬるぽになんの。
たまたま値が残っててそのまま動く、とかそういうことは起こらんの。
そういう見つけにくい、かつ深刻な問題が起こるバグの代わりに
はっきりと初期化されてないよって警告が出るようになったの。
だから、「ミスが露呈しやすい言語仕様」になっただけ。
むしろ発見が早まって生産性いいんだよ

95 :
Cでヌルポインタと言ったらNULLのことで、
初期化されていないポインタや解放済みの領域を指すポインタはまた別だろ。

96 :
>>95
誰に言ってんの?

97 :
http://pc11.2ch.net/test/read.cgi/tech/1168157769/14-15

98 :
画面作るのが糞めんどくせええ!!!!
SWTイレねーと糞なのにデフォで付いてねえ!!
環境整えるの糞めんどくせーー!!
jsp+servretでやっとMVCの概念覚えたと思ったら
strutsがデフォだからjsp+servret使ったらわかりにくいだってwww
strus糞めんどくせえええ
HTMLタグやっと覚えたと思ったらstrutsタグつかえだと?
jspファイルでhtmlタグとjspタグが混ざってたら見づらいんだってwwww俺は見づらくねえwww
web.xmlとかserver.xmlやっと覚えたと思ったらstruts.xml使えって?
あほかwwwwww今までの、無駄wwwwwww今までのは嘘でしたwwwwwって言われた気分wwwwww
eclipseバージョンあげたらプラグイン動作しねえええ!!!
web系でフォルダ覚えるの糞めんどくせええ!!!
全体的に覚えることが大杉
と思いながらも、独学でjavaやってたが
仕事で使ってるvb.netの使い勝手があまりに良いので
javaの情熱冷めた('A`)


99 :
struts がアレだったのは別にして、>>98はプログラマに向いて無いと思う。

100 :
うん

101 :
98ってそんなことも出来ないの?

102 :
strutsだろうがstruts2だろうがググれば出てくるよ。使用法

103 :
まあjava、というかEJBはめんどくさいよ。

104 :
そうか?EJB3ってそんなにめんどくさいとは思わないけど。

105 :
C: ザク
C++: ドム
C# : リック・ドム
D: アッガイ
Java: ジム
VB: ボール
こうですか?わかりません!

106 :
誤爆したスマソ

107 :
しかも番号がずれた。氏のう

108 :
>>105-107
ワロス

109 :
コンストラクタに引数をつけたいんですが、どうすればよろしいですか?

110 :
EJB3はどうかしらんが、EJB2.0のころは、ソースコードかくより
xmlファイル編集することで頭が混乱してきた。JBOSSの何とか言う分厚い
3800円の本かったけど、押入れの奥で眠ってる。
Javaの仕事はJSP/サーブレットないし、バックグランド処理だけやった。EJBはパスした。
PHPやらVB.NETの方がはるかにわかりやすい。

111 :
>>109
どうもこうもないべ。コンストラクタの宣言時に引数付コンストラクタを
定義すればいいんじゃない?
んで使うほうは、コンストラクタに引数つけりゃいいじゃん。
Buttonクラスだとすると、単にボタン作るコンストラクタとボタンに表示する
文字列を指定できるコンストラクタがあるんだけど、それでも他にコンストラクタがほしければ
Buttonクラス継承してクラス自作して、コンストラクタを新たに定義すればいいよ。

112 :

 カレントディレクトリを変更できない

113 :
__FILE__
__LINE__

114 :
EJBは3になって少しましになった程度
あれでDIのつもりだからため息が出る
まともなDIコンテナ使うと劇的に見通しが良くなる
これに慣れるとRailsや.NETみたいななんでもやります系の、そのかわり選択の余地は与えませんなやり方にうんざりする

115 :
>>113
System.out.println(new Exception().getStackTrace()[0].getFileName());
System.out.println(new Exception().getStackTrace()[0].getLineNumber());

116 :
>>115
なげ〜〜よ

117 :
将来的にはPCよりも携帯端末のほうが主流になるだろうから
MIDP/DOJAをやっておいても悪くない
ただしJ2MEでWORAなんて夢のまた夢だからプリプロセッサ必須だけど

118 :
>>116
間違っています。
以上。
はい、次。

119 :
TextSS

120 :
EJBなんて、めちゃくちゃ簡単じゃん。と、CORBAから移ってきた時は思いました。
今は面倒くさくてやってられない。

121 :
リストとハッシュで済むような処理のためにクラスを書くような言語は間違っている。

122 :
JavaってHTMLを生成するための言語でしょ?

123 :
>>120
そこはEJB3でどうでしょ
でもCORBAもJavaだと楽じゃね?

124 :
>>121
javaで書いたインタプリタで巻いちゃえばいいんだよ

125 :
文字列はコピー渡しの方が良いのではないか?

126 :
そう思うならコピーして渡せばいいのでは?

127 :
>>126

128 :
コピー渡しだと何がいいんだろ?

129 :
オリジナルに影響ないじゃん。
バカじゃない?

130 :
Javaではオリジナルを変更することはできないのだが。
バカじゃない?

131 :
>>128
コピー渡しというか値渡しだな。

132 :
>>130
> バカじゃない?
自己紹介乙。

133 :
値渡しは変更してもオリジナルに影響ないから文字列は値渡しってんなら、もともとJavaの文字列は不変オブジェクトなんだから、単なる無知の意見だね。

134 :
a( new String(str));
a(str);
どっちがいいかってこと?

135 :
>>129==>>133の予感がしてきた。

136 :
>>130 == >>133
です。

137 :
>>136
必死で否定するところが怪しいな。

138 :
>>137
見りゃ分かるだろ。
この バ カ

139 :
>>31
どういうところが?

140 :
すごく久々にレスが着いてると思ったら
どうでもよかった

141 :
バカを
バ カ
と呼んだまでのこと。
気にスンナ。
バ カ

142 :
夏厨様
糞スレはsageでお願いします

143 :
Javaが遅いのと、メモリ管理が自動なのは関係あるの?

144 :
今では無関係と言って差し支えないと思う。
メモリ管理は下手に手動でやるよりはGCに任せたほうがかえって性能が良くなるって話すらある。

145 :
>>1
   
  ∧∧
 (・ω・ )
 _| ⊃/(__
/ ヽ-(___/
 ̄ ̄ ̄ ̄ ̄ ̄

146 :
>>98にすげー共感する。
Struts覚えようとしたらDIも使うべき、とかおいおい環境作りにどんだけ手間かけさすんだよいつになったら画面作るとこに手つけさせてくれるんだよとウンザリしてRailsに逃げたw

147 :
オマイら、楽しそうだな。

148 :
>>145
   タノシイヨ
  ∧ ∧
  (´・ω)
 _|⊃/(___
/ ヽ_(____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄

149 :
> 98は、NetBeans使ってればよかっただけって話か。
Eclipseが悪いな。

150 :
つーか、EclipseってJava使うのに向いてないだろ。クソつかえねぇ。
そもそもJavaの特徴ってのは使いやすい使いにくいじゃねぇんだから
ごちゃごちゃ文句言うんじゃねぇよ!俺みたいに学生時代に勉強しとくのがベスト。

151 :
>>150
Javaの特徴は重いことだ。

152 :
>>150
ベストの勉強しても全角厨しか生まれないんだな。
さすが、Java (w

153 :
Cではprintf();ですむ作業をわざわざSystem.out.println();って書かなきゃいけないのに驚いた
scanf関数に相当するものがないのにはさらに驚いた

154 :
import static System.out;
することで、out.printlnに減らすことはできるけど、長いね。
scanfの代わりはjava.util.Scannerということだけど、使い方全然違うしね。
正規表現でこんなことはできるけど、面倒だね。びっくりだね。
Matcher m = Pattern.compile("(\\d+)を入力して(.+)に").matcher("500を入力してほげほげに");
m.matches();
System.out.println(m.group(1));
System.out.println(m.group(2));

155 :
Cのscanfは使っちゃだめ系の関数だし、なくてもいいんじゃね

156 :
>>154
ありがとうございます
なんか面倒ですね…
>>155
scanfって使わない方がいいんですか?
学校のプログラミングの授業ではバリバリ使われています;´・ω・`)

157 :
ヒント: セキュリティーホール

オプソなんかではscanf調査ツールがあったり、
つかっちゃいけない関数は、
DONOTUSE_なんたらかんたら、という文字列に#defineされてたような。

158 :
>>156
まあ、System.out.printlnはEclipseならsysoutでctrl+space、NetBeansならsoutでtabとすれば入力できるから、入力がめんどうというのはあんまりあてはまらないね。

159 :
>>156
学生さんならいいと思うよ。
でも、商用プログムだと入力は最も気を使うところ。
>>157 の言うようにセキュリティホールの危険もあるし、
変な入力された時に適切なエラーメッセージを出すことも
容易でないから基本的に使わない。

160 :
最近のJavaはかなりCと同じ関数が増えてるよ

161 :
import java.io.*;
public static void main(String[] args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("数字を入力してください");
String str = br.readLine();
int num = Integer.parseInt(str);
面倒臭い

162 :
やろうと思えばJavaでできるけど、
そういうのはLLにまかせとけばいいと思うんだ

163 :
いっそ、こっちの方が楽だったりな。クロージャーが導入されてくれれば、もっとスッキリするのに。
あとはsetDefaultCloseOperationがどうにかならないんかな。
ウィンドウ出すマルチプラットフォームアプリ作るときはJavaが楽。
public static void main(String[] a){
JFrame f = new JFrame("数値入力");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setLayout(new GridLayout(2, 1));
f.add(new JLabel("数字を入力してください"));
final JTextField t = new JTextField();
t.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int i = Integer.parseInt(t.getText());
System.out.println(i);
t.setText("");
}
});
f.add(t);
f.pack();
f.setVisible(true);
}

164 :
今はJavaにもprintf()があるんだが・・・・
ポインタがない分どれだけラクだと思ってんだ

165 :
Cみたいな特種用途向けの言語相手に何威張ってるんだ

166 :
printfがないとかいう話にはなってないでしょ。

167 :
既出かもしれんが、自分でクラスライブラリ作っていて、
abstract static a();
みたいな抽象スタティックメソッドが作れなくて困った。
これはJavaの仕様でたまたまそうなのか、抽象スタティックメソッド
というオレ考えが論理的におかしいのかわからん。

168 :
おまえがおかしいに決まってんだろ。javerはバカだね

169 :
そもそも >>167 が何をしたいのからわからん。

170 :
ファクトリメソッドパターン?

171 :
関数ポインタが欲しかったんじゃね?

172 :
>>167
利用法が思いつかない…

173 :
みんな許してやれ

174 :
>>167
マジレスすると、ここはJavaの質問スレではないから
真面目な答えはここじゃ返ってこないぞ。

175 :
おれもクラスライブラリつくっちゃおうかな

176 :
>>174
> 真面目な答えはここじゃ返ってこないぞ。
>>168 は充分真面目な答えだと思うが。

177 :
>>174
167は質問してないね

178 :
えー、別に質問したかったわけじゃなくて。
”こんなこともできねーの”という主旨にそって書き込ませてもらいました。
それで、用途はですね。
たとえば、たとえばDB上の様々なテーブルを表す、クラスA,B,C・・・とたくさんあって、DB上での取り扱いを処々定めた抽象クラスを実装しているわけです。
で、クラスA,B,C・・・のテーブルの生成、削除等はstaticメソッドにしたかったのですが、それは抽象クラスからは、abstractな抽象メソッドがないためだめだったというわけです。
もちろん、テーブルの生成、削除をstaticメソッドにしなければいいだけのことなのですが、なんとなくあるクラスというかBeanのテーブルの生成、削除等はstaticメソッドにする方がすっきりしているように思えたわけです。

179 :
まだ理解できないのか。javerはバカだね

180 :
>>178
C++でも出来ないけどねこれ。
寧ろそういうやり方出来る言語ってなんだろう

181 :
デザインパターンを勉強した方がいいよね

182 :
>>178
> で、クラスA,B,C・・・のテーブルの生成、削除等はstaticメソッドにしたかったのですが
ここがそもそもの発端なわけですね

183 :
static にしてもすっきりしないと思う。
どういうのが”すっきり”かも人それぞれだけどなw

184 :
abstractクラス.staticメソッドとやれば
それぞれを実装しているサブクラスのstaticメソッドが実行されるって
ことができれば便利だとおもうんだけどなあ・・・

185 :
>>184
それ明示的にクラス名書いて呼ぶの?動的じゃなくて?

186 :
簡単に数値に変換できるかどうか判定したいんですが・・・

187 :
>>186
javaの質問スレって認識したうえでのろうぜきかや
IntegerとかLongとかDoubleとかBigDecimalとかつかってparseできるか試すのがいいんでね?

188 :
abstractクラス.staticメソッド
こんなんでどうやってどのサブクラスのstaticメソッド呼ぶか確定できるんだよ。javerってこんなことも理解できないの?

189 :
>>187
いや、質問ではなくて そういう機能くらいデフォルトであればいいかな?的な 発言
Parseで失敗したらとかやってるとExceptionとかでしか判断できないからスマートではないのかな?
とか思ったりしたんで。
紛らわしくてごめん

190 :
>>185
すみません書き方が悪かったす。
オレがイメージしていたのは、
abstractクラスのAで、
abstract static void createTable();
となっていて
Aを実装するクラスBのインスタンスbで
b.createTable()とやれば
クラスBで実装したstaticメソッドcreateTable()が呼ばれるといいなと。
しかしまあ、Bのインスタンスをつかわなければならん時点で、
abstract static voidが可能だとしてもあまりスマートな結果は得られませんね。
皆様失礼しました。


191 :
たぶんこんな使い方をしたいんだろうと予想
abstract class Foo {
public static abstract void method();
}
class Bar extends Foo {
public static void method(){ ... }
}
Class<? extends Foo> absclass = Bar.class;
absclass.method();

192 :
普通に使えそうじゃん

193 :
Javaは
public void delete(List<クラスA> _list) throws ModelException;

public void delete(List<クラスB> _list) throws ModelException;
が同じシグニチャだと思ってるようだな。
困るなあ。
しょせんジェネリックなんて付け焼き刃ってことか。

194 :
ええはい
言語上の型安全性の保障だけでマシン的には何も変わっていませんので・・・

195 :
while (1)が使えないとかうぜー
しかもwhile ((boolean)1)もダメとか
俺は1が使いたいんだよおおおおおお

196 :
>>195
全角でどうかな?
boolean 1 = true

197 :
>>195
Cとかjavaとかが1/2が0になるのウゼ
どう考えても0.5だろwwwwバカじゃないの?
みたいな

198 :
>>195
for(;;)

199 :
>>195
trueかfalseを書けって仕様なんだから仕方がない。

200 :
JAVAって多少間違ってても動いちゃうよな。

201 :
多少間違いがあるとコンパイル通らないがな。
もしかしてDIを意識して動いちゃうとか言ってる?

202 :
どんな言語だって仕様どおりに組んでなくたって動くことは動く

203 :
途中で return false; って中断したいのが出来ない。
デバッグ中によくやらないか?

204 :
それって警告レベル帰るとなんとかならない?

205 :
VB.NETで言うDirectCastを実装して欲しかった(^_^;)

206 :
if(true) return false;

207 :
>>195
while((1))とかやるとどうなるの

208 :
コンパイルエラー:互換性のない型

209 :
>>205

210 :
#define

211 :
#define とかは C とかの必要悪でしかないと思ってるぜ。
VM上で #define が必要になるとか設計がうまく出来てないか要件をうまくまとめれてないかじゃねぇ?

212 :
1.4とそれ以降のコードを混在させて書こうとしたときとか、
プリプロセッサ使わないでどうやって書いてるの?

213 :
#define たたけば偉くなったと思う勘違い君なんだから、
スルーしてくれないかな。

214 :
>>211
cppにjavaソースぶち込める環境なら#defineとかcpp言語つかえるぞ

215 :
>>212
混在させない。

216 :
>>215
ふーむ、やっぱダメなのか
ターゲットプラットフォームによって使えるコード、使えないコードがあるから
プリプロセッサで条件コンパイルみたいなことできないかと思ってるんだけど
javaだとプラットフォームごとにソースを用意して管理してるのかな?
eclipseでそういうplug-inとかないんかなぁ

217 :
APIラップしていわゆるAdapterパターンって奴にするんじゃね?
うちは某フレームワークを利用するとき、直接利用しないで
一枚かぶせて使っていたぜ。どんだけ意味あるかわからんけどな!

218 :
>>216
拡張forやオートボクシングなら、わざわざ切り替えるまでもないし、Genericsもコメントで書いておけばいい。
ライブラリに関しては後方互換があるから、古い書き方を使うほうがいい。

219 :
デバイスドライバを書く。

220 :
>>216
駄目って言うか解決に向かう思考法が全然違う。
どちらかというとプラットフォームに依存しないインタフェイスを作成し、
それぞれに対してそれぞれのプラットフォーム向けに実装する。
Interface
├ImplForA
└ImplForB
そんで、起動時に自分が実行されているプラットフォームを
判断して利用する実装を差し替えるのがJava流だと思う。
プラットフォームごとにバイナリ分けてビルドするのは手間だしね。

221 :
>>220
プラットフォーム依存部分を別JARにまとめた方が良いような。

222 :
>>221
そこは別jarにまとめるってのは確かにそのとおりだと思う。
1つのプロジェクト内で複数のプラットフォームの実装を作ってもテスト同時に流せないしね。
どちらにせよ↓みたいな構成になるんじゃないかなぁ。
Interface.jar
├ImplForWin.jar
├ImplForMac.jar
└ImplForLinux.jar

223 :
octave,r,rubyから来た俺の驚きは、
標準ライブラリの貧弱さ。
ていうか初心者だから未だ俺が分かってないだけかもしれないけど、
配列のboxcarとか、それどころか相加平均さえ無いって嘘だよね?

224 :
その手のことに関しては、ライブラリもないが言語構文も悲惨なのがJavaだ。
そんなことに驚いているようではJavaなんて使っていられない。

225 :
>>223
自分がどれだけ標準から離れているのか判っていない。
それで標準ライブラリを笑うのだから片腹痛いわ。

226 :
>>223
Rubyで標準ライブラリでウィンドウ表示してみろ。
マルチスレッド系もJavaは強い。
というか、Javaの「標準」ライブラリはすごいぞ。「標準」でMP3も3Dも扱える。
行列演算はJava3Dに含まれてるしな。
統計処理がやりたければ「Java Data Mining」という仕様もある。サポートベクターマシンにも対応してる。
あと、Rubyはわかるが、数学用環境であるRやOctaveと比べるのは間違ってる。

227 :
javaの標準ライブラリってjava.*とjavax.*全部だっけ?

228 :
皆ありがとう。やっぱないのか。
笑った訳ではなく、驚いただけなのよ。
言語によって向き不向きがあるってだけのことなんだろうけど。
>>226 Java Data Mining
調べてみます。

229 :
何をそんな当たり前のことで驚いているのか
こっちが驚くわ

230 :
>>228
Java Data Miningは実装が有料のものしかないので、困り者

231 :
むしろそういう特定用途にしか使わないような標準は多量に含めてほしくないな。
そういうのは最小にして、仕様の標準化と参照実装を用意してくれるだけでいい。
しかし String や Date や List の仕様の貧弱さについてはもう少し何とかして欲しい。

232 :
仕様の貧弱さってなんだろう
機能が足りないってのなら拡張すれば良いわけだから、
言語仕様的になんか欠陥があるってこと?

233 :
>>232
StringやDateやListは拡張できんだろ。

234 :
例えばどんな機能が足りてないんだ?
C++ の string みたいに無駄に関数が増えるのは気持ち悪くてやだ。
Date には期待しない。Joda Time 使う。

235 :
>>148
オヤスミ…
  <⌒/ヽ-、___
/<_/____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄

236 :
>>233
なんで拡張できないのん?教えて偉い人

237 :
>>236
finalだから

238 :
>>236
Javaではクラスやオブジェクトにあとからメソッドやフィールドを追加できないから。

239 :
>>238
そんな機能必要ないだろ。何されるか分からん。
拡張できない理由は >>237

240 :
なぜ、できない理由として書いてあるのに、「そんな機能必要ない」という反応になるのか。

241 :
>>101
     幽体離脱
    ∧∧ ∩
    (`・ω・)/
   ⊂  ノ
    (つノ
     (ノ
  <⌒/ヽ-、___
/<_/____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄

242 :
USB API を早く実用レベルにしろ。

243 :
USB API(for Windows)初めて知った
そしてドキュメントにJNIコード大量でわらた
これってwindowsのカーネルモードとお話できたり,スキャンデータを改変したりできるのかな
無理だろうな

244 :
>>231,233,236
憶測で言うとString型はオブジェクトだけど
プリミティブ的な側面があったりimmutableだったりするので、
たぶんその辺をいじってほしくなかったんじゃないかと思う。
まあ継承継承言うよりCompositeぐらいつかおうや。

245 :
>>243
HD みたいなカーネル絡みはどうでも良いんだけど、特定業界用のデバイスや計測機器、
あと携帯や GPS なんかで気軽に遊べるとうれしいんだよね。以前 Garmin 用に JNI
組んだけど、かったるい上にプラットフォーム固定というのがひどく無駄な作業に思えた。

246 :
そうかなあ

247 :
>>241
   ?
  ∧∧
  (´・ω)
 _|⊃/(___
/ ヽ_(____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄

248 :
>>244
Rubyのmix-inのイメージなのかなと、思ったりも
特定クラスのイテレータの実装って、そう変わらん気がする・・・
>>231
はたぶんjava6の仕様見たことがなんだろうね
#collection の仕様 見た?

249 :
>>247
  !
  ∧∧
 (・ω・ )
 _| ⊃/(__
/ ヽ-(___/
 ̄ ̄ ̄ ̄ ̄ ̄

250 :
sun買収されてどーなる?

251 :
OracleDB&サポート付きのjavaが世に出てJavaは二極化

252 :
javaやそのまわりのツールの類ってタダのままってわけにはいかねぇかな?

253 :
OpenJDKはGPLだから、ただのままなんじゃない?


254 :
>>249-253
     オハヨー!!
    ∧∧ ∩
    (`・ω・)/
   ⊂  ノ
    (つノ
     (ノ
 ___/(___
/  (___/
 ̄ ̄ ̄ ̄ ̄ ̄

255 :
>>253
どうでもいいけど、 GPLは別に無料でご奉仕しか許さん!!って訳じゃないぞ。
GPLのコードを使った製品を公開(販売も含む)する時は、
それらのコード全部を無料または送料分程度で手に入れられるようにしろ!!
と言う怨念の類であって。
(まぁGPLは感染力が半端ないから、今更完全有料型に移行できるかどうか?は別問題だろうけど)

256 :
>>1


257 :
Javaはデリゲートをサポートしてない駄作

258 :
J2SEで
NetworkInterface.getNetworkInterfaces();
の実行を禁止することってできませんか?
ここで表示される情報の組み合わせで、実行端末を特定できてしまいますよね
セキュリティ的に問題なのでこれを禁止したいのですが、設定がありません

259 :
>>258
とある実装ではセキュリティは全く考慮されてません
たぶん要件外なのでムリゲ
ちなみにネットワークインタフェースを列挙することの具体的なセキュリティ的な問題はどういうの?

260 :
String unko = null;
if (unko.isEmpty())
hogehohe...;
ってやったら、ぬるぽ出たお。
isEmpty() で null が判定できないなんて、クソだお!

261 :
nullオブジェクトを作れ

262 :
こいつは初歩を理解して無い
nullに対して参照してる時点でアフォ
たぶん平気でゼロ割とかしてバグを出すタイプ

263 :
じゃぁ初歩を理解してれば、isEmpty()でnullを判別できるのかよ。
「こんなこともできないの?」という事例を投げかけてるだけだ。
ちゃんとスレタイ読め

264 :
>>260
>isEmpty() で null が判定できないなんて、クソだお!
逆にこれでぬるぽが出ないほうが困ると思うんだが・・・

265 :
>>260
nullが入ってるんだからメッソドが動くはずがないのに

266 :
言語仕様的にはLLの場合ならnullオブジェクトがあって
デフォルトで初期値がnullオブジェクトになってるケースが多いな
合理的だと思う

267 :
関数型言語によくあるMaybeやOption型が一番合理的だと思う

268 :
じゃぁみんな、nullチェックは、いったいどうしてるの?
if (unko == null || unko.isEmpty()) { ... }
if (unko != null && ! unko.isEmpty()) { ... }
みたいに?
アホくさ

269 :
nullチェックとisEmpty()は全くの別物だと思うんだが。

270 :
>>268 はPHPer

271 :
空文字列とnullと0が区別できないPHPは使いにくくてしょうがない。

272 :

JAVAer が PHPer を差別してますね。
こーゆーのを、「メクソ、ハナクソ」って言うんですね。

273 :
そうか
レスがもらえてうれしかったのはわかるぞ

274 :
まぁまぁ、ケンカすんなって。
インタプリタ言語同士、仲良くしろよ。

275 :
スクリプト言語は型指定できない奴が多くて困るよ
そのうち改善されてくんだろうけど、それまで待てない(>_<)エーン

276 :
>そのうち改善されてくんだろうけど
それはない

277 :
スクリプト言語は型の扱いがいい加減な言語が使いやすいと思っちゃってる人のための言語。
Javaはスクリプト言語よりはずっと使いやすい。けどC#には負ける。

278 :
釣りであることは明白だが初心者が混乱するとかわいそうなのでフォロー
スクリプト言語に型がないとかいい加減だとか誤解している人がたまにいるが大間違い
コンパイル時に型が決定しないだけで型そのものは存在する

279 :
JavaにはGENERICSがあるだろ

280 :
しっー!
Javaは1.4で止まってる人が多いんだから刺激しちゃダメ
ジェネリックとか言ったら頭がパンクしちゃうよ?

281 :
>>278
型がないってのは間違いだが、いい加減なのは間違いじゃない。
文字列型から数値型へ暗黙の型変換がなされたりするし、
引数の型チェックができるケースなんてある方が珍しい。
void*使い回しと大して変わらん。

282 :
JavaScriptあたりはそうだが、Pythonなどは違うよ
>>> 1 + "1"
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'int' and 'str'
動的型言語の変数が似てるのはvoid*じゃなくてタグ付unionだろ
データを見りゃ型が分かるようになってる(自己記述的)なんだから
プログラマのくせにロクに知りもせずに何でも糞みそ一緒にするなと
引数の型チェックっつうけどJavaも何でもnull突っ込めるよな
参照型の場合は

283 :
変数の型の強さは多分こんな感じ
静的型関数型言語 (Haskell, OCaml等) >>> 静的型手続き型言語 (Java, C# > C, C++) >
動的型言語 (Python, Ruby > Perl, JavaScript, PHP)
動的型の関数型言語は知らん

284 :
Map の putメソッドの戻り値が、1こ古い値なのはクソだな。
putの戻り値って何か使い道あるの?
実際にアプリで使用したことあるひといる?
やぱりjavaはRだな。

285 :
音楽CDの再生

286 :
>>284
激しく同意!
thisを返してくれたほうがまだマシだね
Map chnco = new HashMap().put("便器","R").put("たんつぼ","ゲロ").put("ポリバケツ","生ゴミ");
みたいに初期化が楽になる

287 :
>>284
Javaを触り始めて10年以上ですが
使い方ね、使い方、と

初めて知った\(^o^)/

288 :
>>280
ドキ

289 :
mainの戻り値がSystem.exitでしか指定できないってことは、
異なるプログラムでJVMを使い回して高速化、なんてことは一生できないね。
.NET Frameworkはそのためにアプリケーションドメインがある

290 :
まぁまぁ、javaが無かったら.NETも生まれなかったわけだし。

291 :
アプリケーションドメイン使っても、コンソール、標準入出力、カレントディレクトリ
みたいにOSがプロセス単位に割り付ける資源は当然のように共有されてしまうので
1プロセス/VM上で異なるプログラムを実行するつっても
どのみち限界あると思ってたんだけど俺の勘違いか?
Javaの場合、System.exit()だけが問題ならSecurity Managerで無効化するんだと思う
ま、JVMでも.NETでもなくて、Unix環境なら
単にfork()でも使うところだろうな

292 :
ああ、やっと意味がわかった。
Cなら int main(.....) なのに
javaは void main(...) なんだよな。
これに限らず、やたらとvoid関数が多い。
voidなんて廃止してもらいたいくらいだ。

293 :
>>291
アプリケーションドメインはもともとWebサーバーのためのものだろうね。
でもMSが本気だしたら標準出力なんてお得意の高速プロセス間通信でなんとかできるだろ。
起動したプロセスは標準入出力を唯一の共通プロセスにパイプで渡して処理を委譲。
カレントディレクトリはクラスライブラリでごまかせそうだし。

294 :
デフォルトコンストラクタでインスタンス生成しまくるJavaには
voidがお似合い。
意味的にパラメータが必要とか値を戻すべきとか考えない。

295 :
なんでjavaって連続の割り算掛け算できないの?
hoge = aaa/3600000/24;
これで普通いけるよね
こう書き直さないと駄目だった
hoge = aaa/3600000;
hoge2 = hoge/24;

296 :
>>295
普通にいけるだろ

297 :
>>296
書いたのはandroidアプリでだからandroidが悪いのか?
とにかくエミュレーター動かして出した結果、正しくでなかった

298 :
>>295
hoge = aaa/3600000.0/24;

299 :
rar書庫を解凍せずに画像読み出し

300 :
どんな環境だろうと解凍しなきゃ圧縮アーカイブ内のデータは読み出せないだろ
オンメモリで、という意味ならJUnRar使えば出来んじゃね?

301 :
ZIPならZipentryでできるじゃん
Junrar?あれそんなんできたっけ?

302 :
パス付きのrarとか実質WinRAR使わないと無理なんじゃなの

303 :
そもそもJunRar自体がもう存在してない件w

304 :
JunRarはストリーム使えないだろ

305 :
WinXP、Java1.6です。
javaでkbhit+getchみたいなのは無理でしょうか。
以下のようなやり方だと、入力した内容が表示され、
改行入力も必要になってしまいます。
Scanner.nextInt()
System.in.read()
FileInputStream.read() (FileDescriptor.in)

306 :
>>295
JAVAって割り算すら計算間違いする言語なんだな・・・・・・・・・・・・・

307 :
 

308 :
>>295
結果がどのように間違っているのかが書いていないので
なんとも言えない

309 :
strictfp使わずに誤差が出たとか騒いでるんじゃね

310 :
クラスごとにファイル分けないといけないとかRすぎる
おまえはFF14かと

311 :
はぁ?w
クラスごとにファイル分けって
そんな設計してるからゴミ化するんだろ
バカか、お前

クラスごとにファイル分けとかwwwwwwww
バカかwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
それは整理されたソースコードじゃなくて、たとえばマンションがあったとして、
ひとつの部屋に、10人住んでいる所もあれば、ひとつの部屋にねこ1匹しか住んでいないとか、
そんなレベルの話
クラスにもそれぞれの大きさがある・・・
ほんとにJAVAERはレベルひっくいなぁ・・・ クラス(笑)毎日毎日かいてんだからそのくらい覚えろよ
クラスを基本かかない奴にすら劣る知識って  冗談はやめてくれ

312 :
>>310
jarでファイルまとめろよ

313 :
1クラスが1ファイルになるのは別にいい。jarにすれば良いだけ。
問題なのはJava使いにC#をやらせると名前空間ごとにDLLを作り初めて
膨大な数のDLLができあがること。

314 :
それでJava使いはC#が駄目だとか言うのか。なるほど。

315 :
Javaは標準ライブラリでまともにXMLが扱えない。

316 :
>>313
それは初耳だな。。。
c#使いでも少数派だと思われ

317 :
最近javaの勉強をしている。
噂には聞いていたけど、やっぱおっせ〜わ。
ノートPC(ぺんM1.4)で使うなよハゲっていう、強い意思表示を感じたぜ。

318 :
Pentium Mはいいけど、ノートPCのハードディスクはネックだな。
SSDかRAMディスクにしてみろ

319 :
Ceylonに期待

320 :
Javaは4GB以上のbyte配列が確保できない

321 :
実は2GB以上なんですけどね……

322 :
ぷ。

323 :
256 byte バイトストリームから
符号無し 4 byte 整数の要素数 64 の配列への
お手軽一発変換

324 :
boolean とか・・・
bool って書かせろよ

325 :
だよね、それはある。
整数が integer でなく int なら
boolean は bool であるべき。
統一性がないな

326 :
それよりもintがbooleanにキャスト出来ないのがムカつく。

327 :
>>326
その発想は無かった

328 :
bool b = (bool)0;ができるC/C++の方が異常。

329 :
>>328
自分もそう思うし、必要ならメソッド書けば良いし
//自然数はture. 0と負の整数はfalse
if(n>0) return true
else return false

330 :
if(x==0) を if(x=0) なんていう書き間違いを防ぐためと、
その書き間違いを防ぐためにif(0==x)なんていう
直感的に分かりにくいコードを書くバカが現れることを防ぐために、
キャストできない方がいい。
>>329 え?

331 :
>>330
あによ?
ifもforも命令一個なら{}省略出来るだろうがよ
自分もキャストは出来ない方が良いと思うぞ?
必要なら関数なりメソッドなりですれば良い

332 :
C だと非 0 が真

333 :
intだとif(x)とかif(!x)が出来ないのが面倒。ついでにオブジェクトにも出来ないのもダメ。いちいちx==nullとかx!=nullとか面倒。

334 :
あえて記述が面倒なのを受け入れて間違いを防ぐのがJavaのいいところだと思うのだが

335 :
一からjavaで書く分にはそれでいいかもしれないけどc++からの移植とかする場合いちいち手直ししてあげないといけないのは超面倒

336 :
>>335
え、それは・・・
普通、リファクタリングしない?

337 :
間違いを防ぐんではなく、真偽の論理値が必要な場所に
数値が現れるのが意味的におかしいんだよ

338 :
符号つきなのにbyte型なんて名前なのが腹立つ。

339 :
符号付の方が都合がいいだろ。
2バイト文字判定がフラグだけ見て判断できるんだから。

340 :
符号無し整数型の充実を求む

341 :
>>340
C#使え

342 :
>>341
まわりのね、えらいひとたちがね、
じゃばをつかえって、いじわるするの

343 :
>>342
引きこもって飢え死にしろ

344 :
結論 JAVA はゴミ

345 :
>>340
確かにそれは思う時はある。
だけど、そういうちょっとした便利さとかを求めて言語仕様変えようとすると
Java7,8みたいにグダグダになってしまうんだと思うんだ。

346 :
ヒアドキュメント

347 :
>>345
単に不便っていうよりは、言語設計上のミス (或いは、
必要性を認識出来なかった) だと思ってる
配列の型変換にしても、ポインタを使える様にしろとは言わないけど、
代わりにビュー的な仕掛け (byte 型配列を int 型配列として参照する等) とかなら
処理系の実装次第でどうとでもなりそうだし

348 :
int sjisCode = (b1 & 0xFF) << 8 | (b2 & 0xFF);
符号付きは不便だな。

349 :
油断して (b >> 4) とかやると、とんでもない数になったり
(b >> 4) & 0x0f の & 0x0f がまんどくせ
>>329
return n>0;

350 :
byte b = (byte)((bOrg & 0xFF) >> 4);
糞としか言いようがない

351 :
これまでの人生で、符号付き8ビット整数を使うような場面に一度も遭遇したことがないけど
実際、具体的にどのような事に使用されてるのでしょうか
たとえ話じゃなくて、具体的なアプリケーション名とか、規格とか、そんなので何かありますか?
たとえば音楽のMIDI規格では、左右のチャンネルの振り分けデータは
  左〜中央〜右
  0 〜 64 〜 127
のように真ん中が64になるようゲタを履かして、負の数を扱わずに済むようにしてあります。
8ビット符号付整数って、ものすご〜〜〜〜〜く扱いづらいんですよ。

352 :
そうだな。例えばGIF画像を処理するプログラムで使ったな。
数あるバイナリーフォーマットの中でMIDIだけは符号付き整数を基本とする
異例のフォーマット。
そんなマイナーな例を持ち出してJavaを擁護するのは恣意的だぞ

353 :
??

354 :
俺も符号付き嫌
慣れないうちはバグの温床になりやすくて嫌いだわ
javaはバイナリを扱うのには向いてないって思う

355 :
Java にしても .NET 系にしてもバイナリファイルの扱いを事実上放棄してるよなぁ

356 :
>>355
え、.netはちゃんと符号なしは有るぞ?

357 :
>>356
確かに符号無し整数型はあるけど、次の様なことを C#、VB 等で行おうとすると、結構メンドくありませんか?
1) C の構造体の様な任意のサイズ・構造のブロック単位での入出力
--> バイナリファイルを扱う時に必要
2) バイト配列の任意の位置・サイズを別の型の配列として切り出す
--> メモリマップしたファイル、バイナリデータを用いるプロトコルスタック等で必要
無い物ねだりしても仕方ないんですけど…

358 :
C#ではそういうやり方でやるなって事だろ
ゆっくりもたもたしたコードで処理を行う
コードの短縮を行う為のポインタ演算は、レベル4くらいの能力者じゃないと読めないし
レベル5の技術者じゃないとかけない
C#は土方用言語ゆえ、難しいことはやらない

359 :
>>358
rubyも土方用だからバイナリ扱うのには向いてないよね

360 :
どっちかっていうとC#よりCの方が土方用って感じがする。
ユーザ寄りじゃない部分を書くわけだし。

361 :
>>360
えー。。。。?
自分はC#でアプリしか作れない人よりも、Cでデバイスドライバ書ける人の方が尊敬するけどなぁ。。。


362 :
C#の初心者とCの中級者を比べてもしゃーない

363 :
c#はちょっとしたアプリ作ったり、ツール用がほとんどじゃね?

364 :
>>363
とか言う奴に限って、C#使わせてもJavaみたいなコードしか書けないというw

365 :
>>361
デバイスドライバとかなにが楽しいの?
そういうのは他人に任せてればいい汚れ作業
まさに土方

366 :
Javaって、Javaスレで話題の中心になることもできないの?

367 :
>>365
デバイスドライバがなきゃ、その上のソフトが動かないわけだが
ドライバの出来が悪けりゃその上のソフトがいくら頑張ってもよくならないし
土方のとらえかただな
俺なんか土方の仕事っていったら与えられた言語で与えられた仕様書通りにソースを書く仕事って捉えてるが

368 :
>>365
楽しいから書くとか、仕事舐めてんの?

369 :
ビットローテートも一発でできないなんて

370 :
>>365
ハード叩くって面白いよ

371 :
>>369
java.lang.Integer#rotateLeft(int, int)

372 :
まだハード寄りの方が偉いって勘違いしてる奴がいるのか

373 :
できない事への憧れって奴なんじゃね?
実際には>>367の土方仕事だったりするけどな。

374 :
デバイスドライバー開発はまちがいなくドカタ。
SEから見れば>>367もドカタ。

375 :
>>374
それを言ったら、プログラマは全員土方だな
世界では違うらしいけど、日本じゃあながち間違ってないってのも悲しいが

376 :
わざわざこんなスレ立てるとか、javaにコンプレックスでもあるのか?

377 :
4年前の事に文句を言われても…

378 :
コンプレックスじゃなくて、出来の悪い言語に頭きてるだけだろ。
でもプロセスがOSに対してステータスを返すのは通常のメソッド呼び出しとは
異なる特別なことなんだから、mainの戻り値がプロセスの戻り値になるCの方が異常

379 :
mainが自動的に呼ばれるのも異常ってことだな

380 :
なんでそうなるよ。エントリーポイントはメソッドしか実現不可能じゃん。
プロセスが終了ステータス返すってことは、全スレッドを止めてJava VMの
シャットダウンが必要なんだから、System.exit()の方が自然。
mainが0を返したあとで他スレッドが生きててエラーになったのに
プロセスとしては0が返るとかキモ杉だろ

381 :
main 終了後の cleanup で terminate する様に実装するとかじゃダメ?
で、スレッド複数上げてる場合、プログラマが責任持って join または purge することを義務付けるとか…

382 :
まともなデストラクタ書かせろよ

383 :
JavaはCと違って、メインが終了してもサブスレッドがすべて終了するまでプロセスが終わらない。
Thread.setDaemon()である程度制御はできるし、Cと同じにしたければ
mainの最後でSystem.exit()すりゃいいだけ。
そういう言語設計思想なんだからメイン終了時にjoinしろという指摘は不適切。
ちなみにこの仕様はJavaだけでなく.NET Frameworkにも受け継がれている

384 :
>>383
いやいや、前段で書いてる通り、main 終了後に
問答無用で terminate することを前提に、
それが嫌なら join しろと言ってるだけ
全ては仮定の話です

385 :
>>380
なんでそんな糞プログラム書いてるの?

386 :
process terminate signal みたいなのを拾えたらいいのにね

387 :
仮想マシンとアプリの間の OS 相当部分をもっと厚くしないと、こういったことって難しいんだろうな

388 :
JavaはIPv6で非同期TCP通信できない

389 :
java.nio って IPv6 未対応なの?

390 :
Java 7なら・・・

391 :
JAVAじゃデバイスドライバなんてかけないから、こんなスレで話題振らないほうがwwwwwwwwwwwwwwwwwwwwww

392 :
割り込み禁止もできないなんて

393 :

お前らってどうみてもゴミだよな?
ゴミグラマって気持ち悪いんだな

394 :
いえいえ、お天使様にはかないませんよ

395 :
参照渡し
それとまともなジェネリック
(値型のジェネリックを使うとボックス化&非ボックス化が
暗黙のうちに発生して速度が遅い件)
参照渡しもできない癖に「ぬるぽ」が発生する矛盾
(そもそもポインタがないことを自慢してたのは、どの言語だ?)

396 :
>>395
ガッ

397 :
>>396
俺、>>395だが、
このこと(参照渡しもでそもそもポインタがないことを自慢してた)
には触れてはいけなかったかな?
それとも、2chのお決まりに従って「ガッ 」してくれたのかな?
でも、俺と同じように疑問に思う人はいないのかな?

398 :
>>397
普通に考えりゃ脊椎反射だw

399 :
>>397
名前欄嫁

400 :
>>398
>>399
>>397です。不注意でしら。すみません。
でも、俺、普段から思ってるんだけど、JAVAってポインタに類するものは
危険だからって、参照渡しまで禁止しておいて、NullPointerExceptionが
発生するような言語のどこが、主義に一貫性があって、言語に整合性が
取れてて美しい言語なのか・・・・理解できない。
それに、値型でも参照型でもいいけど、引数の参照渡しが危険で、
参照型の値渡しが安全っていうのも理解できない。
(引数渡しの中で一番危険なのが、参照型の値渡しだと思うが・・・。)
誰か、JAVAのどこに一貫性があって、整合性が取れてて、美しい言語なのか
説明してください。
結論は、JAVAでできないこと=JAVA(言語)の設計思想の一貫性について
納得のいくような説明をすること。
長文ですみません。

401 :
JAVAでできないこと。
ボタンなどのイベントハンドラを柔軟に簡潔に記述すること。
(匿名インナークラスでべた書きなどは論外)

402 :
>>400
「(C++の)ポインタを使った配列アクセス」が危険だから廃止
 →これは実際に効果あったんじゃない。パフォーマンスの若干の低下と引き換えにバッファオーバランはなくなった
「参照渡しと値渡しと値のポインタ渡し」が低能にはわかりにくいから一つに統一
 →参照渡しはなくてもよかったが値渡しとポインタ渡しは選べるようにしてほしかった
 →実際プリミティブ型とそれ以外では動作が違うわけだから、この点に関しては一貫性はないな
刃物みたいなC++を安全カミソリにしようとしたのがJavaであって、それは成功したといえると思う

403 :
そしてjavaで「これ、削り過ぎで不便」って所を入れてC#になる訳ね

404 :
>>402
あなたが言わんとしていることはなんとなくわかるが、でもJAVAの設計思想
はやっぱりおかしいと思う。
たとえば、あえてVB.NETを例に出すけど、参照渡し、値渡しはサポートし、
ポインタを使った配列アクセスは禁止してる。
で、(あくまでこの部分だけを取り上げると)JAVAとVB.NETを比べたとき、
どちらが(プログラム的に)安全で将来性があるかと考えると、
安全性ではほぼイコールで、将来性では、VB.NETに軍配があがると思う。
(たとえば、JAVAのGENERICとVB.NETのGENERICの実装を比較するとよくわかる
と思う。)
こんな不利があるのを承知の上でセールストークのためだけに引数の参照渡し
を禁止しておいて、NullPointerExceptionなんてエラーが発生する矛盾を作っ
てる言語の設計思想が理解できないわけで・・・。
ちなみに、VB.NETよりもやっぱりC丼のほうが言語仕様的には優れてると思う。
(参照渡しの場合、呼び出す側にも呼び出される側にも参照渡しを示すキーワード
が必要だというのは、いいと思う。)
まあ、ヘジとゴスの器の差というところだと思うけど。
後、自分の恥をさらすけど、
参照渡しと値のポインタ渡しの違いが理解できないんで、教えてもらえると
ありがたい。
個人的には、引数の種類と渡し方の違いで、
・値の値渡し
・値の参照渡し
・参照の値渡し
・参照の参照渡し
の4種類があると思ってるんだけど。
で、一番危険なのは、参照の値渡しだと思ってる。(動きが中途半端だから)
このなかでJAVAのように(安全な言語仕様にするために)2つ禁止するなら、
1.参照の値渡し
2.値の参照渡し
の順だと思うけど。

405 :
>>404です。
いまさらながら、長文すみません。

406 :
どちらかというと、危険なのは>>404だな。

407 :
>>404
>1.参照の値渡し
これを禁止されたらかなり痛いな。機能的には参照の参照渡しだけで問題ないが

408 :
痛いのは>>404だな。

409 :
>>406
すみません。以後、長文気をつけます。
>>407
俺、>>404だけど、禁止するべきとは思ってないです。
どうしても2つ禁止するならってことで・・・。
でも、参照の値渡しって、呼び出し先での参照の属性の変更は
呼び出し元に反映されて、参照そのものに対する変更は
呼び出し元に反映されないってのは中途半端な気はしませんか?

410 :
なんでメソッド一般に手持ちの変数を書き換える権利を与える必要があるんだよ
性悪説のPGが発狂しちゃうぞ

411 :
>>404
VB.NETやC#とJavaを比べたらだめでしょ。JavaはC++の時代に設計されたんだから
>参照渡しと値のポインタ渡しの違い
ポインタ渡しというはポインタの「値」渡しなので言語仕様的には値渡しになる
>・参照の参照渡し
値渡しと参照渡しは呼び出し時の引数をコピーするかしないかを意味しているのであって
変数が値型か参照型かというのはとは関係ない
参照型を参照渡ししたら呼び出し元のインスタンス
を変更できることになるが、
通常はインスタンスの中身を変更してもらいたいだけだろう

412 :
>>411
設計した時期が確かに5年ぐらいJavaが先だからC#とかはまねできる分有利
だね。でも、それが参照渡しを廃止してしまった言い訳には・・・。
>ポインタ渡しというはポインタの「値」渡しなので言語仕様的には値渡しになる
勉強になりました。ありがとう。

413 :
>それが参照渡しを廃止してしまった言い訳には・・・。
いや、値渡しと参照渡しが混在していたC++からきっぱりと値渡しだけにしたのは
安全カミソリ化として正当だと思う
でも使っているうちに「やっぱりout引数欲しいよね」ってことでC#では復活した
わけで、Javaは今となっては使えない言語だというのは同意するが、Javaの設計に
無理があったとは思わない

414 :
>>413
>Javaの設計に無理があったとは思わない
なるほど。そういう考え方もできるんだね。
俺は、1996年にJavaの本を読んでその仕様を知ったときから、セールス
トークのためだけの(間違った)言語設計だと思ってたので、
そういう考え方はできなかった。頭が固いのかもしれん。

415 :
参照の値渡しを禁止されたら、
実引数にnewが書けないね

416 :
>>415
なんで?
できると思うけど

417 :
>>415
>>416です。ごめん。よく考えたらできないね。

418 :
Javaにできないこと。
Windowsで動作する、大半の人が違和感を感じない
普通のWindowsアプリケーションを開発すること

419 :
見た目の問題ならSWT使えばいいんじゃね?

420 :
>>413
.NET上で動くVB後継製品出してC#と連携させようとすると必然的に参照渡し必要にならん?

421 :
>>419
見た目の問題ならC#使えば良い。敢えて劣ったJRAを使う必要は無い。
クラスプラットフォームの要件があるところだけJRAががんばれば良い。

422 :
Winというプラットフォームの存在を考えれば圧倒的にC#の方が優位そうにみえるが
実際に書かれたアプリの数はどんぐりの背比べ程度という

423 :
>>418
それC#.NETでもできないよね

424 :
C# .NETはもうサポート切れてるだろ

425 :
え?C#のマイクロソフト独自拡張をC#.NETっていうんじゃないの?

426 :
Microsoft Visual C# .NET
Microsoft Visual C# .NET 2003
Microsoft Visual C# 2005
Microsoft Visual C# 2008
Microsoft Visual C# 2010

427 :
.NET(Mono含む)以外で動くC#ってあったっけか?

428 :
>>426
え?それIDEの話でしょ?

429 :
>>428
>>426に言ってどうする。>>423に言え。

430 :
>>1
返せます。
int main() { return 1; }

431 :
さむっ

432 :
35歳、Rです。
JAVAで若い女の子とRできますか?
右手だけは自信あります

433 :
>>432
すっかりjavaしか出来ない人は低脳と言う空気が出来上がってるし、母体もOracleになってjavaの勢い無くなってるので、無理

434 :
>>432
Javaで彼女を作れ。

435 :
>>433
先月もOracleが7をだしたとおもうのですが、
やっぱりJAVAは将来が危ういのかな・・・

436 :
>>435
しょっぱなループまわりにエラーがあるって話は聞いてる
ただでさえ、機能でC#に追い越されてるのに、基本的な所も安定して無いってどうよ
過去の資産のために古いバージョンで運用しつつ、新規は別の言語に移るだろうな
じゃあ、何処に移るっていう決定打も無いんだが。。。。
今はjavaは様子見した方が良い

437 :
Javaはサーバから出てこないでほしい。
携帯電話とかクライアントPCで使いたくない。

438 :
>>436
基本が安定していないのはOracleならでは。
普通にテーブル作って読み書きするだけのDB基本が11gになってもバグだらけ。

439 :
ダブクリで「確実に起動できる」一本ファイルのインストーラを作れない。

440 :
Javaは、他のプログラム言語に比べていろいろできる筈。
VB,VCは、Windows限定だがJavaは、できる。
Javaは、唯一全てのハードで使用できるプログラム言語の筈

441 :
いつからJavaはC言語になったんだ?

442 :
>>441
Javaは、いろいろできるぞ
Linuxでも動くし携帯ゲームも作成できるし
電子レンジみたいな家電も作られたって聞いている
C言語を元にOAKを作られているから大丈夫
(OAK+インターネット技術=JAVA)

443 :
>>440
普通に考えたら「いろいろできる」のはVCだろ。
Javaはプラットフォーム非依存のメリットと引き替えに
機能性・ユーザーエクスペリエンスを捨てた

444 :
>>443
突っ込むのがめんどくさいから、
馬鹿じゃね?とだけ言っておく

445 :
>>443
ばーか
>>444
ばーか、ばーか

446 :
(´・ω・`)

447 :
VCってどんな言語?

448 :
ビタミンCの事だよ

449 :
バーチャルコンソール

450 :
バーチャルコール

451 :
塩化ビニルのことだと

452 :
ヴァカ

453 :
ヴァギナこーまんのry

454 :
 

455 :
オートボクシングうぜぇ〜〜
for (Integer i = 1000; i < 2000; i++)
{
array[i] = "R"+ i;
}
こんなクソなコードを平気で書くやつがいる。
なぜダメなのか、説明するのに一苦労する。

456 :
Integer i = Integer.parseInt(string);
if (i != null)
{
hoge(i);
}
とか

457 :
型変数と型変数クラスの違いが分かってないから、オートボクシングによる型キャストのコストがあるってこと?
Integer i=0;
i++; ←ここがいかんのけ?

458 :
Integer i = 1;
synchronized (i)
{
++i;
}
とか

459 :
あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛
あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛
あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛
あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛
あ゛あ゛あ゛あ゛あ゛
あ゛あ゛あ゛あ゛あ゛あ゛あ゛
あ゛あ゛あ゛あ゛
あ゛〜〜〜〜もうイライラする!
なんで byte が符号つきなんだよ!
いちいち & 255 せにゃいかん。
プログラムが & 255 だらけだょ〜〜〜
うっとおしぃ〜〜〜〜〜

460 :
まさか手動インライン展開してる奴がいるとは思わなくて・・

461 :
jar hell

462 :
結局一長一短だろ

463 :
VC#から越してきたが、デリゲートとイベント機能が欲しい
イチイチIf実装するの面倒

464 :
ついでにインデクサがほしい。

465 :
SunはOracleに食われたのでもはやJavaに未来はありません
OracleよりはMSのほうがなんぼかマシですし、monoプロジェクトのおかげで
.NETはいまや立派なクロスプラットフォームです
JavaからC#への移行はもはや必然でしょう

466 :


467 :
linux で.NET 使えたりするの?
そしたらもうjava いらないかも


468 :
>>467
.NET互換のMonoが使えるよ
AndroidをC#で作ったら超速かったってニュースがこの前あった。
XobotOS: Javaの代わりにC#で構築されたAndroid
http://www.infoq.com/jp/news/2012/05/XobotOS

469 :
>>274
インタプリタといってもとっくの昔にJIT実装しているんですけど

470 :
>>277
そのかたの扱いがいい加減な言語にはC#も若干入らないでもない
ほんのちょっとだけいい加減な扱いができるからな

471 :
>>283
Smalltalkは?

472 :
>>471
どこまでを処理系とみるかにもよるけれど、個人的な印象としてはかなりの弱型。
通常のコール。(以下、Squeak Smalltalk の場合)
1 isInteger "Integer>>#isInteger がコールされて、=> true "
1.0 isInteger "Object>>#isInteger がコールされて、=> false "
同じメソッドを静的にコールしてももちろんそれぞれの返値は同じ。
Integer >> #isInteger valueWithReceiver: 1 arguments: #() "=> true "
Object >> #isInteger valueWithReceiver: 1.0 arguments: #() "=> false "
ところが、整数以外で Integer>>#isInteger を呼ぶと…というか普通に呼べちゃうので弱型
Integer >> #isInteger valueWithReceiver: 1.0 arguments: #() " => true "
Integer >> #isInteger valueWithReceiver: 'str' arguments: #() "=> true "
Integer >> #isInteger valueWithReceiver: #(1 2 3) arguments: #() "=> true "
Integer >> #isInteger valueWithReceiver: Object new arguments: #() "=> true "

473 :2012/10/28
こんな糞スレがいまだに存在することがしんじられないのだが 
TOP カテ一覧 スレ一覧 2ch元 削除依頼
雑談スレ 4 (777)
Cygwin + MinGW + GCC 相談室 Part 6 (945)
MVVMについて語ろう (384)
Ruby>>>>>Java (640)
雑談スレ 4 (777)
Borland C++ Compiler オ ワ タ (313)
--log9.info------------------
実家住まいのフィギュア事情 2軒目 (452)
【るろうに剣心】 フィギュア・グッズ総合スレ 肆 (365)
魔法少女まどか☆マギカのおもちゃ総合 26 (484)
D-Arts(ディーアーツ) No.25 (676)
【魂の】CCPマスキュラーコレクション14【激ヤバ】 (323)
【マイナー】ミニモータートレイン【鉄ガチャ】 (843)
トミカをディープに語るスレ 2B (930)
メディコムトイ・タイムハウスRAH関連専門63 (292)
S.H.フィギュアーツVol.376 (981)
◆HOTTOYSフィギュア総合スレ90◆【ホットトイズ】 (214)
牙狼<GARO>の玩具Vol.19 (233)
S.I.C.極魂スレッドVol.23 (383)
仮面ライダーウィザードのおもちゃ リング16個目 (681)
【池袋】池袋ポストホビーPART47【池ポ】 (906)
神羅万象チョコinおもちゃ板 10箱目 (995)
11回転目ベイブレード【大会】スレ (725)
--log55.com------------------
【SUBARU】3代目(GH/GE)インプレッサ 64【IMPREZA】
【SUBARU】スバル フォレスター 77【初代SF/2代SG】
ルノースポール《》ph24《》RS
【SUBARU】4代目(BP/BL)レガシィ200【LEGACY】
【LEXUS】 LS460 LS460L LS600h LS600hL Part.1
【VW】トゥーランPart26 アウトバーン育ちの7人乗り
プリウス PHV Prius PHV Part.27
【日産】初代ノート Part73【E11 NOTE】