おつ
google driverみたいなのを作りたいんですが、サーバにはjavaを使おうと考えています。 java + tomcatとかで作れば簡単にできるんですかね? それとも1からぜーんぶjavaで書いたほうがいいんですか
Google Driveの難しさはプログラミングでなく 設計にあると思うのだが。 Tomcatありなしで悩む奴には難しいだろう。
6 :
4 :2012/06/30(土) 09:35:25.46
>>5 クライントにあるやつをサーバへアップするプログラムを作って遊びたいだけだよ
それを説明するために、google dirveといっただけで
普段は.netで業務アプリを作っているので、javaなんて使ってないないわけで
>Tomcatありなしで悩む奴には難しいだろう。
そんなこといわれてもなー
>>6 TCPサーバーを自作しようとしてた?
とりあえずTomcat入れてHTTPオンリーで考えとけ
apache commons の FileUploadっての使ってみたい
>>6 それも業務アプリののりで普通にVB.NETで作れば?w
>>10 普段はPL/SQL・VB.NET・AS3(Flex@MXML)の3つの言語を使っているので、VBだけ使っているというわけではないんだけどね
画面はC#で作ってみようかなーって思ってるよ。
ASP.NET + IISじゃ面白くないなーって思ったので、久しぶりにjavaで遊んでみようかと思っただけで
今面白そうだなーって考えている構成は(できるかどうかは別として
サーバ:rpm系Linux(Virtual Boxで稼動) + apache + tomcat + java + mysql
クライアント:C#
遊ぶだけなので、apache + tomcat以外はどうにかできるかなと思っている
VB.NET(笑)
C++.NET
>>13 javaで遊んでみなくていいので、何も考えずそのまま ASP.NET + IIS でやってください。
virtual boxとかmysqlとか関係ないことは いちいち書かなくていい。 ここはお前のオナニースレじゃない
馬鹿には無理
スルー能力って大切だよね
はいお姉さま
ここで質問していいのかよく分かりませんが、javaの設定で質問です 最近気が付いたのですが、 インターネット一時ファイル(キャッシュ)のディスク領域サイズが32768MBになっています ドライブのサイズをオーバーしていますが、このままでいいのでしょうか? (現時点のキャッシュサイズは使用した分だけで小さい) 確か前は1000MBがデフォルトだった記憶が・・・
23 :
デフォルトの名無しさん :2012/07/01(日) 13:37:56.17
javaでアプリを作る際、アプリ独自例外を作るケースはどのようなものがありますか。 例えばstrutsでExceptionHandlerを書き換える場合など、 例外の処理方式を独自仕様としたい場合以外は標準のままでもよいのでしょうか。
ぬひ
Javaの資格なんてプログラムかけるという同僚がいるのですがその人のコード自分の持ってる知識でしか書かないから読みにくくて困ってます。 たとえばコレクションの特性考えないでなんでもかんでもArrayList使ったり、オブジェクトの比較でComparatorを使わずに自分で独自の比較メソッド作って比較したりします。 特にひどいのが、警告されてるにもかかわらず未だに型安全なプログラムをかかず、Object型からキャストするようなプログラムを書きます。 読みにくい上、バグが発生しやすいです。 こういう人に勉強させるにはどうしたらいいでしょうか。
日本語でおk
すいませんJavaの資格なくてもプログラムかけるという同僚がいて、その同僚は自分の知ってる知識だけでプログラムを書くので読みにくくて困っているということです あとそれ以外は訂正はありません
>>28 勘違いしてるようですけど、◯◯の勉強が必要なのはあなたの方じゃないですか?
日本語でおk
>>26 は果たしてそのなんだかの資格をとったのだろうか?
だとすると、その資格ってのは下らないな。
>>26 参考程度に自分の意見を書き込んでみます
>コレクションの特性考えないでなんでもかんでもArrayList使ったり、
どの程度のプログラムを書いているかわからないけど、この程度の気にしなくていい(キモイというのは認める)
業務アプリケーションならば性能のいいサーバでアプリが動いているので、こんなの無視できる範囲だと思う
>読みにくい上
みんな給料をもらうためだけにプログラムを書いているから、コードの可読性を無視している所はあると思うよ
何年もやってるとプログラムは汚くてもいいから、早いところ家に帰りたくなるんだよ
ある程度業務がわからないとどんなコードも汚く見える気がするなー
ほとんどの人はプログラムの可読性よりも、定時で家に帰りたいと思っている
これが真理なはず
日本IT土方のくせにとやかく言うなw
>>33 まぁ、俺みたいなIT土方さんはたくさんいるわけで
>>29 なんの勉強が必要なのでしょうか
私の書いたところから明確に指摘していただけますか
それではただ感情論で批判してるようにしか見えません
>>31 JavaのOracle Databaseはシルバーまで、それからSE、webコンポーネントの資格もってます.
国家資格だと、基本、応用、データベーススペシャリスト、セキュリティスペシャリストの資格持ってます。
今ITの会社ならどこでも推奨する資格です。Oracleに限ってはjava限定ですが。。。
どういう点でくだらないのでしょうか。あなたの意見も感情的に批判してるようにしか見えません。
>>32 「コレクションの特性を考えずに」のところ批判されるのははっきり言ってないです。
リソースの管理として特性は絶対に考えます。
毎秒の何千、何万件というトランザクションを処理するプログラムですし個人じゃなく会社で管理するような規模のでかいものです。
3会社ほど転職しましたがどこでもかならず気にされていましたし、まずリソース上の問題として上がった時のチェックリストには必ずどの会社も入ってました。
もし、個人という単位で書いてくれていたなら申し訳ありません。
「読みにくい上」というのは分かりました。その点は納得しました。
板違い
ITマニュアル君には何言っても無駄w
>>26 馬を水辺に連れていけても、水を飲ませることはできない
消えていくだろう
日本語不自由なん? ちょいちょいおかしい
安全なキャストといっても 使用するフレームワークによっては未だにJava 1.4互換で 書かれてたりするのでいかんともしがたいところもある。 使用するフレームワークが糞なのはわかってるが、 歴史的経緯で無理なのだ。
ArrayListはコピーが発生するから遅いってことはありませんよ。かなりなJVMやライブラリの内部のことを知らないと理解できないでしょうけど。 しかもオラクルjdkではたしかjdk1.6からはObject[]で管理してるので、結局非推奨キャストしてます。 パフォーマンスを気にして他人のフリースタイルにいちゃもんつけるなら、例えばそのArrayList実装の部分をちゃんとプロファイリングしてそれがホットスポットであり非常に重要であかどうかを検証しないといけません。 もちろんマニュアルどおりにやることも大事ですけど、マニュアルどおりであれば合理的であるすなわち何事にも常に最善であり効率的であるとは言えません。
>>39 中国人か朝鮮人が日本にIT留学(IT出稼ぎ)しに来てるんでしょう。
インド人も人件費では安いですけど日本は一応極東アジア圏ですから。
>>35 うーんよくわからないんだけど、suicaでさえ1日に3000万トランザクションだよ
> Suicaは1日当たり最大3000万件であるのに対し
>毎秒の何千、何万件というトランザクションを処理する
そもそも、そんなにトランザクションが走っているプログラムを、ころころと修正しない気がするんだけど
リソースがって言っているけど、面倒なのでハードウェアを追加・リプレースすればいいじゃん
例えどんなに性能のいいプログラムでも、ある程度まではハードウェアスペックも必要なのではないかと
javaのdbについて初歩的な質問があります 一般的なjavaアプリはdbに接続するたびに、DriverManager.getConnection()を行っているのですか? 自分のイメージだとDriverManeger.getConnection(DbControler.getConnectionString());みたいなことをやっているのかなーと思いました。 それとも、フレームワークにコネクション管理を丸投げするのが一般的ですか?
まっとうなプログラムでgetConnectionは使いません。 Cでいうscanf並に使ってはいけないメソッド。
TomcatじゃなくてもWebコンテナ/J2EEサーバアプリじゃなくても、 コネクションプールを使うためにDBCPを使う。
>>38 馬と言うのは走るのが好きだし、
岩塩やら角砂糖やら、喉の渇くものも大好き。
伯楽は無しと言う
シングルスレッドのバッチ処理なら 最初に接続1本作るだけだな。
no problem
サーバーアプリでもないのにコネクションプーリングって必要かね?
>>54 必要になる前にバックグラウンドで接続しといて、レスポンスよくするとか。複数箇所でいちいち接続しないで再利用するとか。使用を検討するには十分だと思うけど。
サーバアプリでも無いのにレスポンスって、 JavaのGUIアプリからdb直結するつもりか?
>>28 基本的にお前は間違ってないと、俺は思うよ。
読みやすいか読みにくいかは、人によって感じ方が違うかもしれないけど、
少なくとも特性を考えながら書いているお前と、理由もなく毎回ArrayListを使う人ならば、
少なくともお前のほうが良いコードを書く意識を持っていると推測する。
ただ、そいつに勉強させる手段は無い。なぜなら本当にそれで良いと思っているから。
自分で失敗して痛い目見ないとわからない。たぶん失敗しても気にしないタイプだろうけど。
要するに残念だがあきらめろ…。
>>26 JDKに入ってるsrc.zip内のソース読ませてみたら?
Collectionの特性というのは、 ArrayList以外にはLinkedListとかを使い分けようってこと? それとも、同僚がBlockingQueueを使わないで 全部ArrayListでsynchronizedしようとしてるとかいう話なのかな
どっちも同じだろ アルゴリズムに対するデータ構造の向き不向き 計算コスト理解してなくてArrayList#containsとか使ってんじゃね
>>56 クライアントアプリの方がレスポンスはダイレクトに影響する。必要ならするだろ。というか、サーバーアプリでもないのに必要かという質問の答えだぞ?
int [可変][固定]って感じの2次元配列を作りたいんですが、どうすればできますか? List <int []> L = new ArrayList<int[]>(); int [] a={1,2,3}; while(1){ a[0]++; L.add(a); } ってやって上手く動くじゃんと思ったら、aのアドレスを何個もって中身は覚えてないし、 そのせいで全部同じ値だしでどうすりゃいいの?
ぶっちゃけメモリ効率も速度も、多くの場合でArrayListは優秀。 例えば末尾要素だけを激しく追加・削除するならLinkedListが、 集合として扱うならSetが「教科書的に正しい」んだろうが。 LinkedListは、ArrayListに対してほとんど常に非効率。 HashSetの場合、ArrayList#containsはforループで走査するからいかにも遅そうだが、 HashSet#containsも実際には、要素の#hashCodeでフィールドの全走査、 さらに衝突したハッシュ値のLinkedList全走査するから、爆速ってわけじゃない。 要素が100万個ある、とかなら明らかにHashSetの方が速いだろうが、 メモリ効率は依然としてArrayListの方が良い。 なので、何も考えずにArrayList一択、というのは意外とうまくいく。
>>63 > L.add(a);
L.add(a.clone());
66 :
973 :2012/07/02(月) 11:23:23.35
Java初心者です。 String配列をString型に変換したいです。また、String型に変換した物をdouble型に変換したいと考えております。 ※現在、電卓アプリを作成しています。。。 String strBuf[] = new String[10]; String result = ""; 例えばstrBuf[]の中身は下記のようになります。 strBuf[0] = "1"、strBuf[1] = "2"〜中略〜strBuf[8] = "9"、strBuf[9] = "0" このような状態を一続きにしたいと考えております。 ※下記のようにしたいです。 result = "1234567890" この後、resultをdoubleに変換。 よろしくお願いします。
>result = "1234567890" for (String s : strBuf) result+=s[k]; >この後、resultをdoubleに変換。 Double.parseDouble(result); まずはジャバの初心者用教本を一通り終えて常識的な使い方を覚えてみてはどうですか?
for (String s : strBuf) result += s;
入力されたURLが存在するか確かめる良い方法はないのでしょうか? MalformedURLExceptionはただの文法チェックのようですし、javaにはURLが間違ってる場合その旨を伝える例外などはないんですか
ないよ
>>69 HttpURLConnectionで接続してエラーが返ってきたらないだろう
if(((HttpURLConnection)(new URL("
http://www.2ch.net ").openConnection())).getResponseCode() != 200)
{
System.out.println("ある");
}else{
System.out.println("ない");
}
>>69 が信ずるところの「URLが存在する」の定義に沿って確認するしかないと思う。
確かめようとした瞬間にそのURLからリソースが得られる場合を存在するというのなら、
単にURLConnectionを開いて実際にデータが拾えるかどうかを確認すればいい。
ただ、この定義だと自身や通信経路やサーバの状態に依存するだろうから、
もし質問を重ねたいなら
>>69 はもう少し問題を明確にしたほうがいいだろう。
JAVAで正確な10mmを印刷するには何ピクセル必要ですか? JAVAで印刷部分を実装中なのですが、Printableをimplementsして実装しています。 印刷内容は public int print(Graphics graphics, PageFormat pageFormat, int pageIndex) のGraphicsに投げると印刷されるので Graphics2D g2 = (Graphics2D)graphics; と2Dにキャストして、その後RectangleやLineなどで描写しています。 RectangleやLineは座標や幅を指定して長さや大きさを決めますが、印刷時に正確なミリ単位のラインなどを引きたい場合と考えています。 JAVA印刷における、LineやRectangleでミリ単位の指定方法がありましたら、教えていただきたいです。
jdbc driverをロードする際にclass.fornameでロードしますが、なぜわざわざリフレクションを使うんですか? インスタンス化せずにstaticイニシャライザを実行したいからってことですかね
ついでにもうひとつ質問をさせていただきます。 Java@ResultSet == C#DataTableという認識であっていますか?
引数がすっげえ多いクラスがあって、どうにかならないかと思ったら @テレスコーピング・コンストラクタ コンストラクタをオーバーライドしまくっておく AJave Beans とりあえず Object obj = new Object()で生成して あとのメンバ変数はsetMemberで設定する という方法があるのは分かりましたが、3つ目の方法としてBuilderパターンがあると知りました。 ですがBuilderパターンのメリットがよく分かりません。 結局は、void main (Strings[] args)側で、コンストラクタメソッドを呼び出して引数渡すんですよね?
78 :
77 :2012/07/02(月) 21:51:24.53
なお、今作ろうとしているプロジェクトは、 ・データ登録用の基本クラス ・基本クラスから独自メンバーを持つ継承クラス1 ・基本クラスから独自メンバーを持つ継承クラス2 ・基本クラスから独自メンバーを持つ継承クラス3 がございます。
>>77 Builderパターンって初期化の面倒なクラスを、Builderクラスで初期化するだけじゃないの?
そもそも、数回しか使わないのにデザインパターンって使う必要あるのかなと思った
Builderはオブジェクト生成のインタフェースと実装を分離したいときに使うものだよ。 DBアクセスとか帳票出力とかデバイスドライバみたいな、 同じ手順で異なるオブジェクトを作りたくて、それを利用する側にオブジェクトの作り方の違いを意識させたくない時に使う。 それが77の用途にあってるのなら使うといいよ。
>>74 PageFormat#getImageableHeight() あたりから計算するしか。
OSGiて使える?有望?
いえいえ
85 :
74 :2012/07/02(月) 23:38:04.79
>>81 ありがとうございます。
ただ、getImageableは環境によってまちまちになるのと、あくまで描写エリアという考え方なので違うかなと。
1/72インチを単位として〜という部分から、72ppiと仮定して実装してみたものの、印刷時に数ミリずれたりなど違うようです。
そもそも、RectangleのWidthやLine座標の1の違いが、1ピクセルなのかすら判断できず困っています。
難しいです。。
>>77 ビルダーがぴったりと思われ
Effective Java 2nd ed. の Item 2
英語でいいなら書籍でググれば出てくる
デザインパターンというよりは、
名前付き引数やその省略時のデフォルトの値を付けられないJavaのイデオムとして使われる
欠点は、コード量が多くなること。それが許容できないなら、そのままで
88 :
87 :2012/07/03(火) 00:14:21.84
すまんが >英語でいいなら書籍でググれば出てくる と言ったが、大事な2ページが飛ばされてるなw 名著だから買っとけ
Jenkinsその他、Java系サーバがことごとくうるう秒で狂った話、 技術上の詳細まだ上がってないみたいだけど誰か知らない? 前スレでJavaにうるう秒は関係ないって言ってた奴出てこいよー。
91 :
74 :2012/07/03(火) 01:04:00.25
>>86 JAVA単体では実現できないってことですか…
他の言語を覚えるのはともかく、いまからネイティブでのアクセスの仕方を学んだりするのは、かなりハードル高いですね。
Eclipse で以下のコードがコンパイルできないのですが、何が間違っているのでしょうか? import java.util.ArrayList; public class Hoge { public static void main(String[] args) { ArrayList<Integer> arrayList = new ArrayList<Integer>(); arrayList.add(42); arrayList.add(123456); int[] as = (int[])arrayList.toArray(new int[0]); // ここでビルドエラー System.out.println(as[0]); System.out.println(as[1]); } }
>>93 エラーメッセージぐらい書きなさいよ
ArrayListはObject型しか使えない
ArrayList<Integer>で変数宣言してるのに
なぜプリミティブ型のintに戻すのかよくわからない
intって書いてるとこをIntegerにすれば動くが
このプログラムでArrayListを使う意味もよくわからないな
>>87 >>88 ありがとうございます。
ただ、自分が作りたいものはデータ登録用のクラスなんですけれど、
全てのメンバーが、入力必須項目で空白(null)は弾くようにしているか、自動的に他のメンバーから計算される類のもので
よく考えれば、コンストラクタ呼び出し方に複数のバリエーションはありえないかもしれません・・
97 :
デフォルトの名無しさん :2012/07/03(火) 12:11:21.71
初めまして.
とあるプログラムを作っています.
出力が
1.0
1.0
1.0
0.5
0.2
0.14
0.07
0.049
0.035
1.0
1.0
1.0
0.5
0.2
0.12
0.12
0.036
0.048
となるようにプログラムを作ったはずなのですが,
最後4行が,
0.12000000000000001
0.12000000000000001
0.036000000000000004
0.04800000000000001
となってしまいます.
何度見直しても原因がわかりません.eclipseでもideoneでも結果は同じです.
教えていただけませんか.
http://ideone.com/8aCbd
計算機イプシロンでぐぐれ
ググって計算機イプシロンの意味はなんとなくわかりました。 しかし、0.12000000000000001において 0.00000000000000001が計算機イプシロンだとおもうのですが、何故それが計算されて、足されたのか分かりません。 また、プログラムをどのように修正すれば 得たい結果が得られるでしょうか。
0.12を2進数に変換してみようか
十進数ならキリの良い小数でも、二進数だと循環小数だったりするから。 java.math.BigDecimalなら十進数で計算できて、有効桁数や丸めルールも 好きに設定できるから、使うといいよ。
Javaのdoubleは 0.11999999999999999555910790149937383830547332763671875 と 0.12000000000000000943689570931383059360086917877197265625 の間の数が用意されていない。 ソースに「0.12」と書くとJavaコンパイラは勝手に前者に書き換えてしまう。 そして後者が君の答えに一番近かったと判断されたのだろうね。 どうしても100等分した12にきっちりこだわるのなら、 double使ったプログラムごと捨てて作り直した方がいい。
>>102 double使って金がらみの計算するなんて自殺行為だよね。
何でdoubleなんかつかうんだろ。
金がらみの計算なんて何処にも書いてないが
これはひどいw
何が分からないのかによる 日本語が分からないのかJavaが分からないのか、 分かるところから書いてけ
TomcatでWebアプリを作っている場合で セッション情報の一覧みたいなものは取得できるものでしょうか? セッション情報のログイン情報を見てログインユーザー一覧などの 取得を想定しています。
>>109 自分のAPのサーブレットが入り口なのだからメモリかDBにでも必要な情報を書き込めば
>>110 やはり自分で管理するしかないですか・・・
あーあ…
入力された文字列を一字ずつ拾っていくループを書きたいんですが、 ↓のように書くとforの第二引数に問題があるようでStringIndexOutOfBoundsExceptionが発生します 入力の終わりを見つけたいのですが、この場合第二引数は何と比較すれば良いでしょうか? String line = reader.readLine(); char chr; for(int i = 0; (chr = line.charAt(i)) != '\0'; i++ ){ (中略) }
i < line.length()
>>114 charAt()だと入力の終わりは検出できないんでしょうか?
>>115 Cと違って長さを保持してるから終端文字を持つ必要ないし。
文字列の終端を表すのに文字の一つを使う なんてクレイジーな発想を捨てることだ
必要ないというよりString自体には終端文字という概念がない。
Stringの要素を一つずつ取り出して何がしたかったのか。 サロゲートペアとか結合とか合成とか知らぬ訳ではあるまい
CharacterIteratorその他、java.textがU+FFFFを C言語の\0みたいに終端文字として特別扱いするのがすんげー嫌。
文字と文字でないものを一つのchar型に入れよう という発想がKUSO C++のイテレーターを真似したけど 不完全な劣化版仕様になりました的に酷い
有識者に質問がございます。 サーバー側のjavaでFileInputStream(File file)をnew宣言すると、一回目はcheckRead でひっかからないのですが、二回目のFileInputStream(File file)のnew宣言でcheckReadでひっかかります。 SecurityManagerって同じクラスの権限(ここではread)って時間置かないと復活しないのでしょうか? 一回目は読み取れているのでread権限があると思われるのですが・・・。二回目が何故かだめです。
ここのサイトを見ると
ttp://d.hatena.ne.jp/seraphy/20070106 引用:
クラスがすでにロードされている場合、そのプロテクションドメインは不変である。もはやパーミッションを変更することはできない。
と書かれているので、パーミッション(ここでのread権限?)の変更、追加が出来ないので、別クラスに分けてFileInputStream(File file)のnew宣言しようかと検討しています・・・。
JDKがダウンロードできません ミラーとかありませんか
よく探せよ
グーグルの検索結果をhtmlで直接受け取って利用しようとしてるんですが 接続成功してeadlineで読み込む段階でReader.redey()の値がいつまでたってもfalaseの状態で先に進みません 他のサイトは同じ方法で普通に動作しているんですが googleはAPIからじゃないと検索結果のデータ使えないとかあるんですか?
読む気のない奴に送るデータはねぇ!ということかな。相手Googleだし。 ready()なんざ無視してがんがんreadLine()で意思表示すればよろしい。
>>127 そんなことはないが、
少なくともバカには読めない
Java SE Development Kit with JavaFX (JDK 6u25 / FX 1.3.1) をダウンロードしようとしているのですがリンク切れしています。 これはJDKではないんでしょうか
英語が読めねーのか、そりゃ大変
ぐぐったら普通にDLできた件
初歩的な質問で恐縮ですが以下の質問についてご教授頂ければ幸いです。
このソースの80行目のところでラベルのクリックイベントを拾って背景色を取得してパネルに設定したいのですが、
どのようにすれば良いでしょうか?
http://ideone.com/XGmbU e.getSource()を使ってどうにかできないかと思ったのですが良くわからず・・・・。
恐れ入りますが宜しくお願い致します。
JRE6u33でサクサク動くのに、JRE7だと えらい重たいアプリが有ります。 BeansBindingを使っています。 ヒープチューニングを試しましたが 改善しないのです どこから手をつければよいでしょうか?
>>134 まずチューニングしたヒープを元に戻す。
次にどのクラス、どのメソッドで時間がかかっているのかを絞り込む。
処理のかたまり単位で時間取れば所要時間がわかる。
原因となったクラスがサードパーティ製品なら開発元に問い合わせる。
Java本体が原因だったら実装晒せば誰か答えてくれるかもな。
>>134 > JRE6u33でサクサク動くのに、JRE7
データをまずとれよ
切り分けせずにいきなりヒープチューニングしたの? 理解できない
自己解決しました
お前誰や
140 :
デフォルトの名無しさん :2012/07/07(土) 01:14:10.29
現状が6なのに7にするってちょっと気が早いな 5を6にするってんならまだわかるけど。 せっかく対応できたなら何が問題で遅くなったのか教えてくれよ
java6のアップデートやセキュリティ・サポートは今年中で終了になるんでしょ?
142 :
133 :2012/07/07(土) 10:38:54.94
別のところで質問してみようと思いますのでスルーして頂いてかまいません。 マルチになるので念のため、すみません。
こんなアホスレで質問して時間を無駄にしてはいけません
スルーしろ 雑魚www
Java自体がオワコンですからね
雑魚www涙目wwwwwwwwwwwwwwwwwwwwwwwww
もうJavaなんて使ってるの雑魚だけですからね
>>143 このスレにかきこして無駄な資源と時間を使ってはいけません
バカにはムリw
Javaプログラミングスキルをアピールして求職活動する場合、成果物としつ何をしめすのが有効なのでしょう? 答えが幅広くなりすぎるとは思いますが、現在実務について居られる皆様がそれぞれ思いついた、提示されたら少しは考慮にいれてやるかも、程度のものを上げていただけると嬉しいですm(_ _)m
金くれんの?
「この人気のアンドロイドアプリ俺の作です」とかどう まぁアプリの人気はスキルより企画力のような気がするけど
仕様書見せてくれといいたいな。 エラー、多重度、使い勝手、・・・どう考えて、どこまで詰めて設計してるか見たい。
>>151 そんなことどうでもいいから金くれよ。な?
>>151 Checkstyleでコーディングチェックし、JUnitでテストし、
Coberturaでカバレッジテストを行い、Mavenでビルドされ、
GitHubリポジトリに納められ、Jenkinsで継続管理してる
オープンソースプロジェクトをはてなダイアリーで披露すればいい。
>>151 100万ステップをがーとレビューできます
一日で一万ステップコーディングできます
Javaハウスで高木先生に論戦を挑み、 国会議員も巻き込んで一方的に勝利宣言するのが 手っ取り早く技術力をアッピールする方法だな。
馬鹿には無理w
>>159 > Javaハウス
しんでんのとちゃうの
> 高木先生
悪名高き政府機関の人か
実態は不正アクセス禁止法違反のソフトを堂々と作って公開してる人だっけ? 著作権保護とかwinny撲滅とか称してるようだけど、法令違反ソフト作成公開とそういう詭弁が日本でどこまで通用するんだか見ものだわ
164 :
151 :2012/07/08(日) 15:47:25.37
皆さん色んなご意見ありがとうございましたm(_ _)m マ板と迷いましたが、こっちで質問して良かったですw
>>164 請求書
金 給与一ヶ月分
振込日 翌月末日
64bitのwindowsでJAVAプログラミングをしているのですが、Tomcatを使用する為に(x86)の方のjavaのPATHを設定してからアプレット等の他のJAVAプログラムがプラグインで見れなくなりました 最適の設定を教えてほしいです
167 :
166 :2012/07/08(日) 16:52:32.28
コマンドプロンプトでjavacが使用できなくなりました 64ビット版Windowsでjavaのpathを「(x86)」にしてjavaSEを使用することは出来ないんですか?
168 :
167 :2012/07/08(日) 17:01:57.85
すいません自己解決しました
169 :
167 :2012/07/08(日) 17:04:04.49
あれ
170 :
167 :2012/07/08(日) 17:11:07.09
PATHを変えたらTomcatが起動できなくなるんですけど
何がしたい
ヒント ここは君の雑記帳ではない
prepareStatementを使うと、JDBCドライバは同じSQL文かどうかを判断し、 同じならキャッシュを利用します。 そのとき、SQL文は大文字、小文字が意識されるのでしょうか?
javaの勉強始めようかと思います おすすめの本おしえてください 一応、Cは初歩的なことだけできるレベルです
独習って練習問題とかありますか? あとみんながお世話になったサイトとかあったらそれも教えてほしいです
ありがとうございます 余裕ができたら買に行ってみます
その程度か
182 :
デフォルトの名無しさん :2012/07/09(月) 00:04:19.66
ごめんなさい明日買に行きます
いいよ別に無理せんでも
無理しろ
独習Javaを勧めたのは冗談だよな
俺はそれで学習したけど よかったよ
ただ今になって思うのはスレッドを生成するのに継承のほう重視してんのはあんまりよくないサンプルだよな
>>188 基礎からのJavaはおすすめしない
てもとにないけど「やさしいJava」よりも悪かった
麻奈ちゃんlove
>>189 丁度いま手元にやさしいJavaがあるんです
やっぱりこれあんまりよくないやつだったんですね
基礎も独習もやさしいもあんまりかわらないんですかぁ
とりあえずいつも行ってる店においてあるjavaの本ぜんぶさらっと見てみます
>>190 自分が勧める本を叩かれるのが嫌でやってるから仕方がない。
そういうやつだと思って諦めるべし。
叩くだけなら誰でもできるからね。
>>178 よく見るサイトは今も昔もJavadocかな
っていうのは期待してないと思うので、自分がJava始めたときを思い返してみます
//書籍限定できてないです
オブジェクト指向が始めてだったら継承やスコープの説明・例題が充実してるもの。Java言語仕様としてはプリミティブ型やコレクション(とジェネリック)の説明を軽んじてないやつも信頼できるかな。
サーバーサイドアプリが始めてだったらHTTP、Socketとかネットワークプログラミングの基礎が記載されている書籍を選ぶとその後のプログラミングが楽になると思います。
自分は「プログラミング言語Java」一択だけど、始めたころは独習Javaみたいなやつ読んでたこともあったよ。まぁ俺が始めたのがJava 1.4の頃だから今と環境が違いすぎて正直何がオススメかよくわからないです。
http://www.amazon.co.jp/プログラミング言語Java-The-Java-Series-ケン ・アーノルド/dp/4894717166/ref=sr_1_3?s=books&ie=UTF8&qid=1341806985&sr=1-3
// 英語ですまそ
http://docs.oracle.com/javase/tutorial/index.html
>>193 Tomcatの起動に環境変数なんていらないだろ。
service.batでのサービス登録時のみ
一時的にJAVA_HOMEが設定されていればいいはず。
しょうもねーつっこみ
JNIで二次元配列の要素を操作するにはどうすればいいでしょうか。 byte[][] arr = new byte[2][3]; があったとき、ネイティブ側でbyte[1][2]などにアクセスする方法を教えてください。 よろしくお願いします。
JavaのVMのベンダーがどこか調べる方法ってありますか? CentOSなんだけど、以下のVMがどこ製なのか知りたいです。 ---- # java -version java version "1.6.0_25" Java(TM) SE Runtime Environment (build 1.6.0_25-b06) Java HotSpot(TM) 64-Bit Server VM (build 20.0-b11, mixed mode)
>>203 ありがとう。6が日本語で最新なのね
ブックマークしました
調べなくてもORACLEかOpenJDKなんじゃないの
>>189 でなぜ悪かったと感じたのかその理由は?
>>188 は主観的ではあっても理由を書いてますよね。
入れたてJava(初版)から入ったわしは…。 (いつの話だw)
>>205 たしかにそうですね。
System.getProperties()で取得したことあったなぁって懐かしくて書き込んでみましたけど
LinuxにSun JDK入れるのってよくあるので消去法でOpenJDKってことかもしれませんね
JRocketが入っていたらうれしいけど
JRockitの発音がわかりません
じろきと
じぇいろきっっと!ってかっこ良く発音してます「っ」のためがポイントかと
クラスAとBがあり、AとBには共通のメンバ変数や実装させたいインターフェイスがあるので、 抽象クラスCを作って、そこにメンバ変数とそのアクセサメソッド、インターフェイス実装を書き、 CをAとBに継承させているんですが、これは抽象クラスにする意義はあるのでしょうか? 例えばCは普通のクラスでもいいのでしょうか? この疑問点を更に掘り下げると「普通の親クラスではなくて、抽象クラスを使って継承させる意義はなんですか?」に収斂するかもしれません。
214 :
213 :2012/07/10(火) 01:11:55.73
自分で調べてみた結果、抽象クラスには抽象メソッドを1つでも書かなくてもいいんだということは分かりました ただその場合は、やはり抽象クラスを使う意義がなくなるのでは? それこそコンパイラがエラー出すべきでは?と思いました
abstractには実装しないんよ abstractはテンプレートとして使う その例の場合abstractのC、スーパークラスのXでメソッド実装、Xを継承したA、Bって感じかな 自己流、俺の場合ですまそ
>>213 抽象クラスを継承すると、抽象メソッドの実装し忘れはコンパイルエラーで教えてくれるよ
>>215-216 ありがとうございます
あと抽象クラスだとインスタンス作れないからその意味でも効果あるようです
>AとBには共通のメンバ変数 この時点で考え方が間違っている。 共通のメンバ変数()の有無でなく概念が 継承を使うべきかで考えなきゃ。 AとBがCの一種でかつスペシャル版という関係を 定義するのにCのメソッドの有無なんか関係ない。
そんなこと言ってたらandroidのapiは使えません><
>>219 どういうことですか?
Andoroid全然詳しくなくて聞くのも失礼ですけど、もしよかったら教えてください。知識の一つとして知っていたいです。
当方Andoridアプリの基本フレームワークは大体理解しているくらいの知識です。
221 :
デフォルトの名無しさん :2012/07/11(水) 14:37:50.20
質問させて下さい。 public String toString() { String s; s="{"; Cell p = this; while(p != null) { s = s+","+p.e; p = p.next;} s=s+"}"; return s;} の実行結果が{,[1,1,1]...となってしまいます。最初のカンマを消すにはどうすればいいのでしょうか?
223 :
デフォルトの名無しさん :2012/07/11(水) 16:10:40.14
>>222 ありがとうございます、参考にさせていただきます
224 :
デフォルトの名無しさん :2012/07/11(水) 16:50:42.64
共通のメンバ変数がある場合は、ほとんどの場合、 そのメンバ変数を別のクラスにしてそのインスタンスをメンバ変数に持っとくのが適切 継承いらん
>>224 見つけ出してその人に何をするつもりですか?(恐る恐る、、、)
227 :
デフォルトの名無しさん :2012/07/11(水) 17:31:01.59
インタフェースとその実装クラスが1:1でしかあり得ない場合、インタフェースを定義する理由は何でしょうか? 例えば業務に特化したServiceで同じインタフェースを持つ別の実装クラスが絶対存在しない場合などです テストするときに実装クラスをダミーにできるという利点はあると思っていますが それだけの理由では利点とコストがつりあっていない気がします
それだけの理由だよ 面倒なのに加えて変更にも弱くなるというおまけつき
229 :
デフォルトの名無しさん :2012/07/11(水) 17:46:42.62
プリミティブ型をメソッドに参照渡ししたいと思い、ラッパーに包んで渡すのですが、自動的に値渡しに変換されてしまいます どうすればいいですか ex) void method(int i) ←これだと値渡しになる void method(Integer i)←勝手にi.intValue()になって値渡しになる
すいません呼び出し側でラッピングした値のintValueが呼び出されるということです 一番下間違いです
Javaに参照渡しはない Integerで渡したところで値を書き換えられないので意味がない どうしても必要なら要素1つだけのint[]を使うか、自分でintをメンバに持つクラスを作る
>>232 参照渡しはない・・・?素人には意見求めてないです
Javaには参照渡しはない。 と釣りにマジレスしてみるてすと
マジレスするなら引数にオブジェクト渡したら参照渡しだろ プリミティブ型は値渡し
>>230 autoBoxing機能でラッパークラス使っても値渡しになってしまうのがどうすればいいってことだろ?
オートボクシング機能オフにするか、Javaのオートボクシングないバージョン使うか、引数で受け取って代入しかないぞ
オートボクシングは便利だけどこういうところで不便なんだよな
238 :
230 :2012/07/11(水) 19:57:12.87
もういいです ここには馬鹿しかいないとわかったので自分で調べます
int → Integer → → → AtomicInteger 標準APIだけで、IntegerとAtomicIntegerの間の参照渡し基本型がほしいなあ。 欲を言えば、オートボクシング/アンボクシングもサポートしてくれたりするとうれしい。 void swap(int& a, int& b) { int tmp = a; // オートアンボクシング。 a = b; a = tmp; // オートボクシング。 } みたいなやつ。
馬鹿に馬鹿と言われても
厳密にこだわらず意味上の参照渡しということにすれば
>>237 が的を得た答えになってんじゃねーの
いやIntegerで参照渡し(参照の値渡し)したところで Integerオブジェクトが表す値は変更できないから参照渡しの意味ないと思うけど
うん、一度ラップしたら値は変更できんよ
Javaを知ったかぶってるC使いがC→Javaに書き換えようとすると大体
>>230 みたいな下痢を生成し始める
オブジェクト指向の意味ねー
オブジェクト指向はあんまし関係ないような。
的を得た()回答ってんなら
>>232 で十分。
AndroidのAPIだと要素一つの配列で参照渡しをシミュレートしてる 糞メソッドは普通にあるけどな
参照渡しがない以上、他に良い方法もないから仕方ない。
すみません。 JavaにPHPのcurl_multi関数のような、複数のHTMLページを同時に読み込ませる事ができるメソッドなどはありますか? openStreamメソッドを使って、文字列で渡したURLのページのHTMLソースを取得しようとしたのですが、 1件読み込みが完了するまで次のページの読み込みが行われないので、 読み込ませるページ数が多くなれ多くなるほど時間が掛かってしまいます。 Javaのスレッド機能についてはあまり理解できていない初心者なのですが、 複数のHTMLページから並列処理で同時にHTMLのソースを取得していこうとした場合、 スレッド機能を使って独自に作るしか無いのでしょうか? もし、JavaにもPHPのcurl_multi関数のようなメソッドがあれば教えてください。
DDOSでもする気か
>>228 もっと色々理由があるのかと思っていました。
ありがとうございました。
>>251 呼び出し元に対して必要最低限の情報のみ
公開できることは大きなメリットだろ。
コンパイル可能なスタブをバイナリで提供できるし、
実装の修正の影響を受けない。
いえいえ
>>249 なんで同時に読み込ませると時間がかからなくなるんだろう?
>>249 GAEとかマルチスレッド使えない環境では
非同期URL-Fetchなどの独自APIを提供してるよ。
マルチスレッド使えるんなら使わない理由はないな。
SelectorとSocketChannnel使って、単一スレッドでのHTTPマルチセッション管理とか面倒すぎ。
258 :
デフォルトの名無しさん :2012/07/12(木) 19:46:01.87
ポリモーフィズムを使えばswitchやif文は必要なくなる とか割とよく読むんですが 確かにメソッド内部でのswitchやifはなくなりますが、どのインスタンスを渡すかの選択で 結局はswitch文を使ったりしないのでしょうか
ポリモフィズムを1行で簡潔に説明すると print(ここにいろいろ入る)
>>258 プログラムからswitchやifはなくなったようにみえる。
たとえば、ループの中でswitchやifがなくなったようにみえたら、みやすくなるでしょ
>>258 ポリモーフィズムをちゃんと実装したのなら、
結局switch使ってインスタンスを渡すなんていう事態は起きない
それでもswitch使うのは、まだ考え方が追いついていないからじゃね
Factoryのサンプルはif-elsifとかswitchばっかだね
263 :
258 :2012/07/12(木) 20:44:35.96
>>259 で、私の疑問は
int i = 0;
double d = 1f;
boolean b = false;
String s = "ぬるぽ"
print(ここにiとdとbとsのどれを入れる?)
ということなんです・・・
>>260 プログラムにもよると思いますが、ループ内のifやswitchをポリモーフィズムに置き換える場合、
ループの前でswitch文を書いたり、ループ内でインスタンスを生成することになることはないのでしょうか?
>>261-262 どうやるんでしょうか?
世間で紹介されているポリモーフィズムのサンプルだと、
オーバーライドされているメソッドの呼び出し部分は書かれているのですが、
肝心のそこにどのインスタンスを入れてるか、というのは書かれてないんです・・・。
リフレクション以外で、インスタンスを選ぶswitchやifを無くすことは難しそうに見えたので、ここで質問させて頂きました。
オブジェクト指向言語だからといって、何が何でもオブジェクト指向で書く必要はない switchが簡単ならswitchで書けばいいし、 げちょげちょになってきてポリモーフィズムがよさげになってきたらポリモーフィズムで書き直せばよい ポリモーフィズムの利点は多々あるが それは、コードの記述量と引き換えとなるし、 ある切り口で変更に柔軟にすれば、別の切り口で柔軟性を失うのが世の常
switch(flag) { case 0: print(i); break; case 1: print(d); break; case 2: print(b); break; case 3: print(s); break; ... } なんてので、intのflagを使うのは決定!とかだと、 ポリモーフィズムを使うにしてもインスタンスを選択するのにswitch文は必要だろう しかし、flagとして何を使うのかを後付けで決めていいなら、 そもそも、flagとしてポリモーフィズムのインスタンスそのものを使えば flag.print(); とか、 print(flag.toString()) とかで済む。
Javaみたいな中途半端な言語では 123.toString()とか無理
そのためのenumじゃあないっすかー
めんどくさいから print("" + i);
なんで教条主義になるのかねー 続けてどうぞ
教条主義結構。 だがJAVA()で本格オブジェクト思考を語り 出すようなバカはどうしようもない。
RTTI付けて多重ディスパッチ採用すればいい
一番性質が悪いのはダブルディスパッチ(Visitor)でswitchを置き換えて喜ぶ奴な 拡張性で言えばswitchと変わらない上に特殊な状況を除いては可読性最悪
少なくとも純粋なオブジェクト思考から ほど遠い言語なのは間違いない
>>274 > 純粋なオブジェクト思考
なんていう言語
指向のtypoだろ細かい
277 :
デフォルトの名無しさん :2012/07/13(金) 00:27:26.40
別にオブジェクト指向が目的じゃないよな! C++を改良して、実用的にしたのだ
だがプリミティブ型にtoString()できなかったり 配列の扱いが変だったり コレクションにプリミティブを突っ込めない罪は重い
toString()はラッパーでいいしコレクションはauto boxingでいいし配列の扱いが変なのは別の話だろ
Java5が残念仕様になった原因は当時Sunに金が無かったことだからな もうちょっと早く潰れてればもうちょっとマシになってたのにね
>>280 余計なものや余計な概念が必要になるのは
大きなデメリットだろ。
ゴリゴリ書けば機能的に同じことができるからいいなんて
考える奴はオブジェクト指向に剥いてない。
>>282 プリミティブ型はいらない、ということですかね?
プリミティブ型がなければ確かにその分余計な概念がなくなるでしょうね。
順序が逆のような気もしますが。
valueOfはどっちがどっちだったかすぐ忘れてしまう
パフォーマンスを度外視するならRubyみたいなのもアリだけど、そうでなければ.NETの値型みたいにするしかないから それはそれで大きな新しい概念を持ち込むことになるぞ Javaの残念ジェネリクスみたいに、概念は簡単だけどそのせいで変な制限だらけになって余計に複雑になった例もあるけどな
javaはオワコン。今すぐC#を勉強しましょう。
ジャバラーさん達の中で双方向リンクトリストのデータ構造を自分で一から実装できる人って実はあまりいない
なかなか良い職場にお勤めですね
>>281 アホいうな
TigerはJavaの躍進そのものだろ
290 :
デフォルトの名無しさん :2012/07/13(金) 05:56:45.49
うん
291 :
274 :2012/07/13(金) 08:25:21.82
結局、MS厨とRuby厨か
292 :
275 :2012/07/13(金) 08:26:10.50
そういやSE7のswitch文でString使えるようになったみたいだね
>>287 空リストをどう表現するつもりか解説してもらうだけでも
設計スキルの底が見えてきそうだな。
馬鹿には無理
クラスやパッケージの名前の付け方にいつも悩んでしまうのですが 例えば何かを記録するためにルールを定めたい 「記録ルール」を表すクラスには具体的にどんな名前をつけたらよいのでしょうか? 翻訳サイトではThe rules for recordingと出るのですがクラス名にはふさわしくない気がします…… みなさんはどのように名前をつけてるのか参考までに教えてくださいませんか
そのルール自体ならformatとか? ルールに沿って〜〜するものとかになると話は別だけど。
「記録ルール」とやらが何らかのルールの可否を判定する振る舞いを持つのなら 「RecStrategy」でいいよ。
○○Filter
>>297 王道だと思うけどOMT風で、シナリオ書いて名詞抽出してクラス名にしてる。クラスは分類なのだからそれ単体で命名できず、他との違いで決まる。それがあまり登場しない名詞ならRecordクラスの中のメソッドisNeed程度にしかならないとか。
>>298-301 なるほど参考になります。みなさんありがとうございます。
名詞又は名詞句で簡潔に書かないといけないと解っていても難しいものですね
動詞だったりして
使われ方によって動詞だったり名詞だったり。WorldRecord extend Recordと書けば名詞に見えるだろう。 ドメインごとに意味も違ってくるのだし、正解もひとつではないと思う。けど、同じpackageでも観点がころころ変わるのはわかりにくい。
OMTからその後のJava、C++の攻勢を考えられなかった
306 :
デフォルトの名無しさん :2012/07/13(金) 22:54:42.18
JAVAとJAVA scriptってどれくらい違うものなんですか? スマホのアプリつくるにはどっちを勉強したらいいんでしょうか?
全くの別物 このスレでいうJavaとAndroidのJavaもどきもまた別物
スレッドって一つのcpuだとどういうふうに動くんですか?
時々時間を止められ、レジスタ群をスタックに待避されられる。 しばらくすると元に戻る。 ただしスレッドは自分が止まっていたことを知る術はなく、 スレッドはcpuもレジスタも自分が占有しているように見える。
あほジャバーの言うことだから聞き流しとけばいいんです
あほMS厨の言うことだから聞き流しとけばいいんです
オウムなみの知恵しかないw
仮想スタックマシンにレジスタなど存在しない!
ウインドーズ・ホンなんかはマイクロソフトが大金出して大々的に宣伝してるし、やっぱりなにかが凄いんですよね? どこに行っても「ジャバはオワコン」ってよく聞くんですけど、ジャバなんかよりもシーシャープやっといた方がやっぱり将来性あるし安心なんですよね?!
組み込み系に関しては今や.NET系の方が遥かにオープンになっちゃったからな
オープンソースだなんだといっても、金もってないならただの戯言でしかないw
323 :
デフォルトの名無しさん :2012/07/14(土) 12:48:22.06
例外クラスは真面目に定義していくと数がめちゃくちゃ増えませんか? DuplicatedMailAddressException DuplicatedAccountNameException InvalidMailAddressException InvalidAccountNameException ・・・ 1つの例外クラスにまとめてしまうのはだめですか? throw new AccountCreationException("メールアドレスが重複しています"); throw new AccountCreationException("アカウント名が重複しています"); throw new AccountCreationException("不正なメールアドレスです"); throw new AccountCreationException("不正なアカウント名です"); ・・・
>>323 別々にしとかないと例外ごとに処理変えたくなったとき大変だから分けといたほうがいい
俺だったらその例はMaleException一個にして 原因種別をenumで持たせるな。
>>323 とりあえず、あとで区別しなきゃダメそうな内容を、文字列で表現するのはダメだろ
>>325 に同意
厳密に区別したいなら例外の型に頼るよりもその方がいいと思う
適当にエラーメッセージ出すだけならまとめといていいし
変えたくなる時に何が大変って途中のthrows書き換えるのが大変なわけだから、MailExceptionを継承して細分化するなら影響少ないよね。 日曜PGだとAppException extends RuntimeExceptionで手抜きとかあるけど。
手抜きじゃないよ throwsは失敗で結論出てるだろ
RuntimeException継承したらコードチェックでエラー出ないから修正箇所検索してなおすとか大変そうw
それって実装修正したら利用者に影響が出る、つまりカプセル化を壊してるって意味だぞ そうならないように設計するのは非常に難しいから失敗だった、というのが今は主流
そして try { }catch(Exception ex){ ex.printStackTrace(); } といううんこコードが量産されていく
質問です。 呼び出された関数を時系列で出力するデバッグ用のツールのようなものは無いでしょうか。 Eclipseで開発しています。
ここで質問するようなことじゃないんだけど、 家以外でプログラミングの勉強できるところないかなぁ、家あついから俺の頭とPCがぶっ壊れそう・・・ 図書館みたいな所しりませんか?
家の風呂で水に浸かる まぁPCは水に浸けられないが、頭くらいなら
俺は大学の図書館で まあ大学生だからだけど
僕は112万で勝ったvaioZ使ってるから排熱少ないよ
稚内北星学園大学の開発者向けサマースクールってもうないのか…
さすがに飲食店で何時間も勉強してるのは悪い気がします 図書館も静かだからキーボードカチカチしにくい どこかいい場所ないかなー
もうちょっと神経図太くなれ 俺なんてコーヒーいっぱい弁当トイレで食ってで一日居座ることだってある
いや日本人ならマナーを守ろうよ そういう太さの神経はいらない。
346 :
デフォルトの名無しさん :2012/07/14(土) 21:01:36.67
Javaで動的に変数を生成(リフレクションを使ったり)する場合も、 宣言した変数しか生成できないのでしょうか?
スレチの話題と知っててやってる時点で十分神経太いと思うがな。
>>323 チェーン例外の原因としてまとめればキャッチする方はひとつじゃね?
エスパーお呼びだ
日本語でおk
>>351 レスポンスを
@Override
public String handleResponse(HttpResponse response) throws IOException {
//レスポンスデータを文字列として取得
HttpEntity entity = response.getEntity();
StringBuilder builder = new StringBuilder();
try (BufferedReader br = new BufferedReader(
new InputStreamReader(entity.getContent(), charset))) {
String html;
while( (html = br.readLine()) != null ) {
builder.append(html);
}
}
return builder.toString();
}
みたいな感じで読んで、内容を確認するために出力してみると日本語の部分が全て?になっています。
文字化けなら?以外の文字も出力されると思うので、これがどういう現象かよく分からないです。。
いきなり Reader で読み込まずに InputStream から byte[] で読み込みヘックスダンプとってから文字列に変換、 とかしてみれば?
>>354 間が悪くてすいません。
System.out.println("lang : あいう");
とした場合でも
lang : ???
と表示されたので、HttpClientの問題ではないみたいです。早合点申し訳ないです。
とはいえ、何で日本語が全く表示されないのか。。
linux側の設定の問題だろうからlinux板へgo
>>355 エスパー三級ではわからない
ところで環境は?
>>357 さくらVPSでCentOS 6・64bitです。JavaはJava7をOracleのサイトから落としてきました。
>>359 localeコマンドの出力結果です。
LANG=C
LC_CTYPE="C"
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE="C"
LC_MONETARY="C"
LC_MESSAGES="C"
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=
もしかして、ja_JPなどと表示されてないとおかしいですか…?
/etc/sysconfig/i18n LANG="ja_JP.UTF-8" うーん、まだ化けたままです。。ちょっとLinux板の方に行ってみます。 何となく原因は分かってきました。ありがとうございました。m(_ _)m
バイトコード書き換えて依存性注入みたいなことするデバッグツールなら見たことあるけど
>>348 String Foo = "ぬるぽ";
このString FooもXMLにもとづいて自動的にやってもらいたいつーことです
宣言したところで使えないだろ どうせ動的にやるんだったらHashMapみたいなので十分
プログラムで、そのソースコードのパッケージ名を得る方法はありますか? package hoge; public class MyClass { public static void main(String[] args) { String p = /* 何か現在のパッケージ名を取得するコード */ System.out.println(p); // #=> hoge となって欲しい } }
staticメソッドでなければ、 this.getClass().getPackage().getName() で可能
>>333 JVMTI準拠のデバッガなら、あらゆるメソッドへの突入を
イベントコールバックで監視できそうだが。
なければJVMTIエージェントをC言語で自作するしかない。
>>369 素晴らしい回答どうもありがとうございました。助かります。
>>345 日本人ならどんなことがあってもマナーを守らなければなりません。日本人なら当然ですね。
初心者です。 本によって書き方が違うのですが public static void main(String[] args) と public static void main(String args[]) はどちらが正しいのでしょうか。 どちらも簡単なサンプルグラムなら エラーメッセージを出さずに実行できるようですが。 どちらでもいいのであれば、 それぞれどのような意味でしょうか。
>>373 まず後者の書き方の本をマドから捨てます。
>>373 どっちでもmainメソッドとして認識されます
ただ前者のほうがおすすめです
<mainメソッドとして正しい記述> public static void main(String[] args){} 一般的 public static void main(String args[]){} もうひとつの一般的な記述 違いはない public static void main(String a[]){} 引数は別に名前変えてもいいが引数argumentの省略argの複数形でargsが一般的 public static void main(String... args){} 可変長の引数リストでも可能 <mainメソッドとして誤りな記述> static void main(String args[]){} publicがないため、JVMからアクセスできないので実行時エラー public void main(String args[]){} staticがないため、ただのクラスメソッド public static main(String args[]){} 戻り型がないのでコンパイルできないエラーメソッド public static void main(String args){} 引数の型が違うためJVMはメインメソッドとして認識しない。従ってただのスタティックメソッド public static void Main(String args[]){} mainメソッドと違いMaiなので、これをメインメソッドに見立てて記述することはできない。メソッドの小文字からはじめるという規則に従わないため、命名としてもよくない
mainにthrowsは書けないのですね。 勉強になりまする
mainメソッドでも例外が処理できない場合エラー吐いて終わりだから当たり前 throw書いてどうすんんだよ
mainなんかprivateでもいけるようにすればいいのにな JVMがアクセスできないわけないんだしw
論理的にできるかじゃなくて意味的におかしいだろ。 C丼信者は頭に宇治が、わいたらしい。
他のメソッドやパッケージから呼び出されることがないのに publicなのもおかしいといえばおかしいだろ そういうこと言い出したらfinalizeはなんでVMが外部から呼ぶのにprotectedなのかとか いろいろおかしいところはあると思うけど?
383 :
373 :2012/07/15(日) 14:27:12.39
勉強になりました。 ありがとうございました。
>>382 main は他のメソッド/パッケージから呼ばれる存在なのでは?
プログラムのエントリーをRunnable#run()に一本化すべきだったと常々思う。 main()のシグネチャは初心者がスルーすべき呪文が多すぎてかなわん。 特にstatic。
static は本家C/C++でも難解ですからねえ。
>>377 ,378
残念ながら throws は普通に書けるのであった。
そもそも他のクラスの main を呼んだりする場合は
「エラー吐いて終わり」ということにもならないし。
おまいら、main()のクラスに実行時エラー起こしかねない static{}イニシャライザ書くのやめれ
>>378 馬鹿はしゃしゃりでてこないでくださいね^^
あほジャバーの言うことだから聞き流しとけばいいんです
自演乙
エスパー三級カモーン
#{...}の式が解釈できないんだと思う
javaの質問なんですが、例えば配列number[100]の中にdouble型の数字が一つずつ入っているとして、 それをソートして順序を昇順や降順にしたときに、出力した数値がソート前は何番目の配列に 格納されていたかを確認したい場合、どのような方法が考えられますか? 初心者です。よろしくお願いします
>>397 の補足です
for(int i = 0;i < 100;i++){
number[i] = double型の別々の数値;
}
Arrays.sort(number[i]);
for(int j = 0;j < 5;j++){
System.out.printf("%f\n",number[j]);
}
このように、上位5個を出力したいのですが、出力された数値がもともと何番目の
配列だったのか確認したいです
よろしくおねがいします
ソート前の配列をコピーしておいて、そこから何番目だったか改めて探すとか
その例ではもとの情報が無いんだから不可。 Javaと関係なく、自分で何かのロジックを考える。
できませんか・・・。わかりました。
>>399 さんの言う通り、元の配列をコピーして地道に探すことにします
ありがとうございました
>>398 添字の配列を持っておいて、そっちをソートするのが楽なんじゃね?
楽とか以前にそうやってトレーサビリティを 確保しないと同じ値が有ったときに区別がつかなくなる、
DBからのデータをCursorで取得しているんだけど 全部で500k以下ぐらいのの文字列を保管する bufferとしてCharSequence[] とString[] または list ArrayList どれがいいのだろうか? CharSequenceって読み取りだけならStringより軽量らしいから これを使うのが良い気がするどうしたものだろうか? 環境はAndroidだったりします
スレ違い
他人に渡すためでないなら CharSequenceはないだろう。 最初に件数がわかっていない限り配列はないだろう。
件数はわかる状態で複数の文字列を読み取るため だけにbufferする時にベストな方法は何かな? と疑問に思ったしだいです。 普通に String[] = new String[count]; がいいのかな?
ちなみに受け先も渡し先もString
スレ違い
DBと書いてデービーと読む。 そんな奴は退場。
読み方じゃなくてロジックで見てほしいね
>>405 自分で判断付けられないのなら、
Cursorと連動するIteratorを実装して受け側に提供するのが正しい姿勢
判断できない事は極力判断しないのが真のプログラマだっ (キリっ
JavaのIteratorは利用側で閉じられないから糞 接続開きっぱなしになるぞ
じゃあCursor渡そう
DB=ドラゴンボールだろ
416 名前: デフォルトの名無しさん [sage] 投稿日: 2012/07/16(月) 13:04:41.34 DB=ドラゴンボールだろ
417 名前:デフォルトの名無しさん[sage] 投稿日:2012/07/16(月) 14:05:54.39 416 名前: デフォルトの名無しさん [sage] 投稿日: 2012/07/16(月) 13:04:41.34 DB=ドラゴンボールだろ
あいかわらずアホなスレですな
javaってコンポーネントを名前指定で取得するメソッドとかは自作しないとないですか?
>>413 ロシアでは受け側がリスナを用意しCursorに渡す!
>>414 >>413 はIteratorとCloseableの両方を実装した
クラスを作れって意味だろ
だったら独自のインターフェイスでいい どうせ一般のIteratorと同じように扱えないなら無意味だろ
元Java設計チームメンバーが、Javaには長期的なビジョンが欠けていると批判してたけど ほんとにそう思う
JavaでCUIのアプリを作ってる. Linuxのtopみたいに, 複数の行を更新するには, どうすればいいの? \rは改行すると駄目みたい.
いろいろとすごい質問だこと
>>393 タグが評価されないときにログに何かエラーやワーニングが出ているとか、いないとか、そういう情報があればみんなもわかりやすいかもしれないですね
Tomcat6の場合ですいません。TomcatとJSF相性悪かった思い出があります
たしかel.jar等をプロジェクトではなくてサーバレベルで読み込ませて動かしたような(server.xml, common lib)、、、Eclipseの場合はプロジェクトの設定でbootstrapとしてライブラリを設定できたような、、、
432 :
427 :2012/07/17(火) 13:10:11.77
>>428 舌っ足らずですみません
>>429 検索しても,うまく当たらなかったので,
詳しくお願いします.
>>430 どのエスケープシーケンスですか?
>>432 基本的にあれはコンソール画面をクリアして更新します。
やっかいなことにコンソール画面のクリアは環境依存です。
UNIX系ならばそのままエスケープシーケンス
System.out.println("\u001b[2J\u001b[1;1H");
などと書けばいいのですが、Windows系はこうも行きません。
なので、基本的にはネイティブメソッドを使ってコンソールをクリアします。
public void native consoleClear();
まずこのようなメソッドの入ったクラスを生成します
そしたら、このクラスを指定して、CやC++用のヘッダファイルを生成します
javah -classpath <クラスのあるディレクトリ>
とします。
そして、このヘッダファイルに沿ってc/c++でコンソールのクリアを書いていきます。
(ここらへんはぐぐってください。説明が長くなります)
そして、実際のjavaのプログラムから先ほどのconsoleClearメソッドを呼び出せばいいだけです。
ただしネイティブメソッドなのでdllなどとのリンクは忘れないようにしてください
436 :
427 :2012/07/17(火) 18:03:26.78
>>433 Javaなのに環境依存のコードを混ぜないといけないのですね・・・
驚きました
>>434 さっそく試してみます.
やっぱりOSが変わるごとにmakeしないといけないようですね
>>435 Windows XP sp3 と Ubuntu12.04上で動かします.
どちらもJava7です.
>>427 CUIというのは標準出力とかに出力するだけで、表示してるのはxtermなどVT100互換とかのterminal(-emulator)というGUIアプリだ。
改行や復改など制御(エスケープ)シーケンスの標準に従ってたりするが、MSは標準壊し好きだから。
aptitude show $(dpkg -S $(which top)|awk 'BEGIN{FS=":"}{print $1}')
とかで出てくる依存: libncursesのjava版使えばということだな。
こういったlibがどこまで差異を吸収してくれるかは知らないが。
何でも標準って単語使えばかっこいいと思ってるバカ?
>>438 MSが糞だということはなっとくできるが
コンソールの制御に標準もクソもあるか
でも427は分かっていないと思うけど
ANSIのはあるが中途半端。 制御だけでなく状態取得や画面サイズ変更イベント 取得など、包括的な画面インタラクション機能が有るべき。 ウンコなANSIを捨てたMSはよくやった。
>>437 はエスケープシーケンスを
「"\r"の様にエスケープする制御文字」
のことだと勘違いしている
>>443 PS1とか弄ぶ時に使うあれじゃないの?
ラッパークラスって大事なんですか。 今読んでるんですがよくわからないので重要じゃないならとばしたいです。 型変換に便利とか書いてるんですがキャスト(?)すればことたりるんじゃないかと思ってます
なぜIntegerがあるのか考えろ
型変換に便利とか初心者が変なこと覚えなくていいよ intなどのプリミティブ型をObjectにしたいときに使うとだけ頭に入れて後回しでおk
個人でiphoneアプリ、Windowsアプリをマーケットに売って生き残れ
格安iPhoneEラーニング(学習動画多数あり)
http://tinyurl. com/7wj77om
コワーキング帳
http://tinyurl. com/brzs486
コワーキングスペースJP
http://tinyurl. com/76vdrny
WEBサーバーIIS Win2008ServerVPS SqlServer Oracle MySql 言語はマーケットで売れるメーカー製のみやる
ASP.net(C#)+管理EXEアプリ(C#)+iPhone C#のソースを出さなければWEBアプリの著作権も守れる
C#マーケット Windows8 Metroアプリ WindowsPhone Surface PS Vita Xbox360 iphone(mono使用)
iPhoneマーケット iPhone iPad 予定 iTv iCar i (家電製品)
地方に安い土地を買いコンテナ型の格安高性能オフィスを建て(300万〜500万)
レンタル自習室&シェアオフィス・コワーキングで収入を得ながらそこでアプリを開発する
http://tinyurl. com/7pb2yaa
http://bit. ly/iLIpJa
key_releaseのイベントやkey_clickのイベントが正常に発生しない場合があるのですがなんででしょうか
ボタン押したりマウスクリックしても正常にイベントが発生しない場合があるって意味ですすいません
まず何のフレームワーク・クラスの 話なのかを説明します
java awt appletです パネルをクリックしたときイベント発生させるようにしてるのですが反応が悪いというかイベント発生するときと発生しない時があります
何よりも先に動作環境を書け
動作環境の違いをJavaが吸収するべきなんだから まず動作環境というのは違うだろう。 Javaの不具合と断定した上でなら可。
もっと力を入れてクリックしてください
core i7 640M 8GB fullHD GT330M です
win7 Professional入れてます
グラはエルザです。
マウスはiバッファローの青色LEDで、無線の奴です。 マウスの電池は東芝のアルカリ単4×2です。 マウスパッドは無しです。 本体はNECのノートで、cはSSDです。
vaioZですよ13.1フルHDです
Windowsですか? マイクロソフトの有料サポートに電話してきいてください。
ここまでJavaのバージョンの説明無し
>>427 はwinのコマンドプロンプトでUTF-8のバグで日本語に躓くんだろうな。
初心者です。現在GUIアプリの勉強中です。 JTableの質問させて下さい。 DefaultTableModel で4×0 のテーブル(列名 A / B / C / D) を作成したとします。 チェックボックスが4つありこのチェックボックス=TRUE/FALSEで テーブルにそれぞれ E / F / G / H の列を追加/削除 するものを作りたいのですが、どうすればいいでしょうか。
DefaultTableModel自体には、ABCDEFGH全ての列を作っておく そしてJTableのgetColumnModel()でColumnModelを取得 ColumnModelのgetColumn(), addColumn(), removeColumn(), moveColumn()あたりを使う 大本のTableModelには変更を加えずにGUI上だけでcolumnの追加・削除をする
main関数がクラスの中で書かれていてそのクラスをインスタンスにするとmain関数が無限に増殖されてしまわないのでしょうか
staticメソッドとインスタンスメソッドの違いを調べればいいよ
質問の答えになってないです ちゃんと答えてください
インスタンス生成とmainの呼び出しは別なので コンストラクタの中でmainを呼ぶような変なプログラムじゃなければ大丈夫。
>>466 さっそくの回答ありがとうございます。
やはりDefaultTableModel自体には、全ての列を作っておくのですね。
ここをどうしたらいいのか迷ったので参考になりました。
あとはヒントの中でなんとかやってみます。
どうしても分からなかったらもういっかいだけ来ます。
ありがとうございました。
>>470 ありがとうございます!よくわかりました
入力された8桁の文字列が日付として正しいかを検証したいのですが SimpleDateFormatクラスの使い方が良くないのか正しく検証できません 良い検証方法を教えてください // java 1.7u3 import java.text.SimpleDateFormat; SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd"); sdf.setLenient(false); sdf.parse("20120719"); // ok sdf.parse("20129987"); // exception sdf.parse("20120700000000009"); // なぜかok sdf.parse("2012073@@@@@@@"); // なぜかok
>>469 放漫なやつだな
ところで
1本で完結するバッチとかのちょっとしたプログラム書くときって
class hoge {
public static void main {
new hoge().run;
}
public void run {
sub1();
sub2();
}
sub1{}
sub2{}
}
みたいにmainの中で自分をnewして以下インスタンスメソッドで処理するのと
全部staticにするのってどっちが一般的かな
>>474 質問。どうしてnewするクラスとmainのクラスを
同じにしようと考えた?
>>476 ソースファイル1本にしたかったのかと思われるが
参加プロジェクト内に混在してるからどっちかに統一しようかと
>>477 >ソースファイル1本にしたかった
そんなに短いプログラムなのか?
>>478 バッチ処理ですね。
JDBC ResultSetを回してなんかするとか
テキストファイル処理とか
作った人によって
public static main {
sub1();
sub2();
}
public sub1 {};
public sub2 {};
って書いたらコンパイラに怒られたからこうした、の対処が違った感じ
>>473 parseは解釈できそうなら解釈してしまうという実装方針のようなので
一緒にmatches("[0-9]{8}")とでもやるしかないんじゃないかな。
>>479 全部staticにするとインナークラスが使えないのでインスタンス化すべき。
staticメソッドはMathクラスのメンバのように副作用や状態を持たない機能にしか
使っちゃダメ。
>>474 ならインターフェイスインジェクションは?
>>474 普通は知らないけど、インスタンス化するのが好み。
>>479 >って書いたらコンパイラに怒られたからこうした、の対処が違った感じ
それはかなり初心者限定だろ。ほんとにsub2とかいう名前にしてそうで怖いわ。
インナークラスが使えないのでインスタンス化すべき。 ってすごい理由だなw
メンバクラスにして普通にnew MemberClass()でいい
>>480 ありがとうございました.
文字種別の判定も加えてみます
>>485 staticでは出来ないことの一例を挙げたつもりだったけどやっぱり変だったか。
できるできないでなくて、意味のが大事だと思うぞ。高級言語はあえて制限かけてたりするのだから。なんでもできる低級言語サイコーになってしまう。
質問させて下さい。 現在SAStrutsにてWEBアプリケーションを作成しています。 ある程度作成を終えたので本番環境を試そうと思い、 HOT DeployからCool Deployに切り替えた所、トップページにて404エラーが発生するようになりました。 他のページもURLを手打ちしてみましたが同様でした。 ローカル環境に限った事かと思い、VPSにあげてみても同様の挙動を示しました。 デプロイをHOTにすると正常に戻るという挙動をしています。 解決方法が見つからず終いなので助言を頂けませんでしょうか。 問題:env.txtをproductにすると404エラーになる。 環境:SAStruts Tomcat7.0.29 よろしくお願い致します。
製品の説明通りに設定して動かないんなら 不具合なんだから作者に文句言えば? 日本でしょ。 製品の説明通りに設定して動かないのに サポートが受けられないなら 使用すべきでない。ミドル選定の誤り。
>>491 hotで見えるものがcoolで404ならそもそもアプリがtomcatにデプロイされてないんだろ
どんな環境なのかしらないがtomcat再起動とアプリのデプロイちゃんと毎回やってるか?
>404ならそもそもアプリがtomcatにデプロイされてないんだろ hotの設定出来る奴がcoolで間違えるわきゃねーだろ >tomcat再起動とアプリのデプロイちゃんと毎回やってるか? 他の鯖で試したって書いてあるんだからんなはずなし env.txt()が爆弾付きで実行時エラーでも 起こしてるんじゃないの?
うん
再帰構文練習中のjava初心者です。 数独解放のプログラムを書いているのですが、アルゴリズムは 埋めたい空欄のマスの縦、横、小ブロックに入っている数字を探索して、入りうる 数字をArrayListに入れる。 ArrayListからランダムに場所を指定してその数字を空欄にいれる。 それをfor文で繰り返していき、入りうる数字が無くなったら初期化(埋めた数字を空欄に戻す) して最初から。 という感じなのですが at.再帰するメソッド名(java.再帰するメソッド名がある行数) というエラーが無数に出てしまいます。 これは再帰が無限ループにハマっているという事なのでしょうか? それともそもそもこのアルゴリズムでは解けないのでしょうか
>>496 そんだけ長文書くならエラーの内容くらいコピペしろよ
エラーなく動かなければアルゴリズムが合ってるかどうかわからんだろ
今日は土曜日だから、ソース貼ればみんな相手してくれるよ(^ω^)
ランダムっつか、効率の悪い総当り方式みたいなもんだから、 意図通りにプログラムできてりゃそのうち解けるんじゃね? 現実的な時間で解けるかは知らんが。
数独は問題としては小さい部類
皆さんお相手して頂けますかね エラーは出すぎて表示しきれない状況です at class名.再帰メソッド名(クラス名.java:553) が無数に出ています。
>>496 数独 解法 でググってアルゴリズム考え直せ
>>503 アルゴリズムはバックトラックをよく見かけますがバックトラックがうまく書けません
>>502 デバッガでステップ実行して
何が悪いのか自分で確認しろ。クズ。
それともアルゴリズム写して書いたけど
自分で内容を理解してないので終えないのか?
>>505 自分でもコンピュータと同じように一行一行実行してるわボケ
それでもエラーが出るんじゃボケ
ああそうだよ どっかで見落とししてるあんたの言うとおりクズだよボケ
クズで悪いかボケ
こっちだって自力で直そうとやってんだよ
まあ、ぶっちゃけ、 アルゴリズムがどうとかいうまえに、 エラーが読めるくらいにならないと無理だろw
丸投げするような奴と一緒にされとうないわ もてる力をもってしても無理だったんだから質問くらいしたっていいだろうが
>>507 そのエラーが出すぎて一番上が読めないんだよ
>>509 バカすぎて、なにもかもあきらめるべきレベルだろw
>>510 うるさい
イライラするから喧嘩腰やめろ
どうでもいいからエラーの一番上を見る方法を教えろ(下さい)
馬鹿には無理
>>511 読み書きから手取り足取り教えるようなもんだ。
それこそサリヴァン先生でもなけりゃムリだろw
お前らは俺にとってもサリヴァン先生だろ? こちらは教えてもらう立場だから強く出れないことをいいことに好き勝手いいやがって けっ・・・ 教えろ(下さい)
開発環境はなんだよ ターミナルでもIDEでもエラーが見られないなんてないぞ。 まさかスクロールも知らないのか
どうせ一番上は java.lang.StackOverflowError だよ
>>516 なるほど やはり無限ループに陥っているのですか
どこで無限ループに陥っているか見ていただくことは可能ですか?
再帰の脱出条件がおかしいからそこを確認しろ
脱出条件のどこがおかしいのでしょうか? data[n*9+m]==0を満たさなくなるまで呼び出しているのですが
ゆとり(笑)
>>518 ・変数名が意味不明。何の変数なのかパッと見て分からない。
・1つのメソッドが長すぎ。
それ以前に、解くだけのクラスとデータを扱うだけのクラスに分けたほうがいい。
・数値決め打ちが多すぎる。
0か1ならよくあることだけど、それ以外は理由をコメントで書くか定数にするのが普通。
・コメントも意味不明。数値や場所の何をチェックするの?
・コンストラクタで解かせようとするな。
resolveをstaticにして他のメソッドから呼び出せばいいのでは?
再帰の練習ならクイックソートとか階乗とかフィボナッチ数列とか、難しくてもエイトクイーン程度にしておこうよ いきなり数独とかやるべきじゃない。
数独のセルが1つでも解決すれば、 resolve呼び出して仕切り直してるみたいだけど data[n*9+m]=0って代入して、解決しないまま再びresolve呼び出してるとこがある 呼び出されたresolveも、そのセルで解決できないまままresolve呼び出してる そしてまた同じ行で同じ呼び出ししてStackOverFlow Wikipediaにあったサンプルの数独は問題なく解いてくれるね
答えてくださった皆さんありがとうございます。
初心者故見づらい、冗長などの指摘は予想していましたが酷すぎたようで申し訳ない
>>524 なるほどありがとうございます
まずはその行を探したいと思います。
うーんもう一度見てみたのですが、data[n*9+m]=0と代入しているのは、空欄にランダムに数値を 入れていった場合途中で行き詰る(入りうる数字がなくなる)事がありますよね そうした場合に初期化の意味合いでdata[n*9+m]=0にしています。 初期化したら、もう一度ランダムに数字を入れていけーーーって意味でresolveしているのですが おかしいでしょうか?
スレ違い
すみませんが、それはこのスレッドで進めるべき話題ではありません。 スレの目的と自分の質問の目的が合致しているかご確認ください。 スレの目的と自分の質問の目的が合致していると思えるうちは、 その問題を解くことは難しいと思います。 概要を捉える能力をもう少し伸ばし、 再帰による階乗の概要を理解してから再チャレンジしてみてください。
馬鹿には無理
>>528 ご丁寧にどうも申し訳ない
了解いたしました
531 :
499 :2012/07/21(土) 22:18:30.92
>>530 俺様のレスは丁寧じゃなかったのでスルーですかそうですか
丁寧がいいなら有料サポートへ。
533 :
デフォルトの名無しさん :2012/07/22(日) 05:04:38.78
はらへった
.NETって色々なことが簡単に出来ちゃうのね.. javaが助長だって言われるのも納得できちゃうくらいに
C、C++、Basic、Pascalだっていろんなことが簡単にできるぞ
質問お願いします。 Color.blackのblackとはColorクラスのメンバ変数(クラス変数)ですか? このあたりがよくわからないですが、例えばよく見かけるhoge.draw()のhogeは、drawメソッドが書かれているクラスのオブジェクトと言う解釈で良いですか?
はい よいです
スペックです
長寿と繁栄を
>>538 20代会社員。一人暮らし童貞。
ピザでアニヲタしてます。
C++はISO14882読破しました。
>>536 hoge.draw()でどこのソースコードのdraw()が呼ばれるかは
実行寸前になるまで解らないから、こんなとこで質問してもしょうがないよ。
その文を3回実行して3回とも違うソースのdraw()が呼ばれるかもしれない。
>>542 >hoge.draw()のhogeは、drawメソッドが書かれているクラスのオブジェクト
って言ってるんだから、どのクラスのメソッドかは関係なくね。
drawがどのクラスのメソッドであれ、hogeが指してるオブジェクトはdrawが所属するオブジェクトなんだから。
>>491 の質問をした者です。
Hotで動いていたものがCoolになると404になるという挙動について、
少しだけ進展したので追記させて下さい。
resourceフォルダ内にあるconvention.diconにて、フォルダ名ではなく、
ドメインをそのまま記述すると
<components>
<component class="org.seasar.framework.convention.impl.NamingConventionImpl">
<initMethod name="addRootPackageName">
<arg>"example_test.net"</arg>
</initMethod>
</component>
<component class="org.seasar.framework.convention.impl.PersistenceConventionImpl"/>
</components>
新たに以下のエラーが発生する事が分かりました。
ComponentNotFoundRuntimeException:
[ESSR0046]Component(class ○○_○○.net.form.IndexForm) not found
winSCPにて、example_test.net.form.IndexFormにはclassファイルが存在しています。
(実際にはexample_test/net/form/IndexForm.class)
>>545 の○○_○○.netはexample_test.netに置き換えて下さい。
修正し忘れましたすみません…。
上記の現象で一つ懸念点が思い浮かびました。
実際のサーバー上ではtomcatのwebappsはexample_testディレクトリで動く事を想定しているのですが、
プロジェクト名をexample-testとして作成していました。
この事から、どこかの設定ファイルが
/example_test/ではなく/example-test/という名前のディレクトリを
向いているのではないかと思いdiconファイルを中心に調べています。
SAStrutsはdiconファイルを設定した事が無いのでポイントとなる箇所等だけでも
教えて頂けると幸いです。
再度ご助言等ございましたらよろしくお願い致します。連投ですみません。
荒らすな
548 :
デフォルトの名無しさん :2012/07/23(月) 18:20:20.83
参照の入った変数への参照は作ることが出来ますか?
できない どんな場面で使おうとしてるの
>>548 それらしいものなら
class DoubleHandle
{
public Handle handle;
}
DoubleHandle doubleHandle = new DoubleHandle();
object.handleTo( doubleHandle ); // DoubleHandle.handleに値を突っ込む
doubleHandle,handle.call(); // 取得したhandleのメンバー呼び出し
まともにOOしてれば蛇足でしかないが。
関数から複数の結果を返したいときとか有効な場合はあるだろ OOとか関係ない ましてJavaには値型もタプルも無いんだから
そういや、もっと簡易的にやる方法があるじゃないか Handle[] doubleHandle = new Handle[1]; object.handleTo( doubleHandle ); // handle[0]に値を突っ込む doubleHandle[0].call(); // 取得したhandleのメンバー呼び出し
DoubleHandleなんて意味不明な名前が悪いだけであって
結果的に
>>551 のようになることは普通にあるだろ
まともなOOって何?w
>>554 構造体や配列を使うんじゃなくメソッド経由で値を返す
>>554 結果的に同じことがあるのが普通だと思ってたらマズイだろ・・・
810 名無しさん@13周年 2012/07/23(月) 13:02:24.32 ID:yICWNJee0
一応、最後に読み上げられたスポンサーを順にあげておきます
キャプ環境が無いから画像はありません
花王、コカコーラ、P&G、アサヒ化成、味の素、
アース製薬、ドコモ、サントリー、セブン&アイ、ダイワハウス
日産、日清食品、明治、ライオン、ロート製薬
グリコ、大塚製薬、KDDI、小林製薬、ソフトバンク
第一三共ヘルスケア、東芝、トヨタ、日本生命、任天堂、
スバル、ヤマト運輸、森永製菓、ヤマザキナビスコ
以上29社
949 名無しさん@13周年 2012/07/23(月) 17:20:01.29 ID:PfgTlrkF0
>>810 大事なのは、27時間と言うお祭の番組にも関わらず
29社しかフジテレビ派企業が集まらなかったこと。
花王、ドコモ、サントリー、セブン&アイ、ダイワハウス、ロート製薬 、ソフトバンク
ここら辺は反日の常習犯ではないか?
991 名無しさん@13周年 2012/07/23(月) 19:33:11.25 ID:sHJuyziK0
>>810 え、たった29社?!
いやつまりクラスの中のオブジェクト型のフィールドを通じて参照をやりとりしてるだけでしょ カプセル化されてるかどうかは別にして、構造としてはあるだろ普通にw
>まともなOOって何?w お前が聞いたのは明らかに構造の事じゃないだろ
>>551 が普通にあるって設計がお通夜なだけだろ
普通ねーよ
ごめん。そもそもそのコードが何をしたいのか分からん。
>>548 あるローカル変数はその呼び出し元からも呼び出し先からもあらゆるスレッドからもずぇったい操作不可
と、エスパー回答してみる。
タプルかユーザー定義値型か参照かどれか一つあれば大分使いやすくなるのに
C#やってからだとjavaは使いにくいな 継承はjavaがいいけど
>>562 配列がある意味参照の参照だろ
*aとa[0]が同じという理屈で
参照の参照ってそういうことね Javaとして参照渡しの仕組み?だからなあ Cと違うんたからインスタンス参照 でよくない?
「Javaのオブジェクトは参照渡し」なんていう不正確極まりない言葉を広めたJavaの罪は重い
MSに比べたらかわいいものよ
そういえばJavaってオブジェクト参照のことをポインタと呼ぶ場合があるくせに なんで参照とか参照渡しとか紛らわしい言葉使うの? ポインタって言葉残すんだったらポインタ、ポインタ渡しに統一すればよかったのに
ポインタだけど 変数を書き換えても意味なし
Javaは内部でHandleと呼んでるくせに どこでReferenceになったんだ?
引数に渡されたオブジェクトのメソッドを使って値が変わると変更されるのに代入はダメだから ポインタをコピーして渡してる って言った方が正しい
>>569 ポインターと違ってハンドルだから範囲指定も
移動もできんからな。大手を振ってでポインターとは呼べんわな。
ところでNullPointerException以外でポインター呼ばわりしてるところってどこよ。
参照ってほかのooでも一緒でしょ? C#にはrefとかoutとかあるけど
Java以外の言語でならC#のoutと同等のものを参照と言う そもそもの始まりはFortranだな。
Java で多値を返す方法ってなにがあるのでしょうか?int 3つを返り値とする関数はどうかけばいいのでしょうか?
578 :
デフォルトの名無しさん :2012/07/24(火) 01:25:00.86
配列で戻す. または,インスタンスフィールドにintを3つ持つクラスを作る.
カ、カンマ区切りの文字列に
580 :
デフォルトの名無しさん :2012/07/24(火) 13:45:03.31
クラス内でstatic{ }と囲われた中に記述された処理はどういう状態でよばれるのでしょうか?
>>580 クラスローダがクラスを初期化した段階で呼ばれる。
>>580 実行中に初めてそのクラスを使う時が来たらそのクラスを使う前に実行されると考えていいよ
>>581 ,582
なるほどわかりました。
ありがとうございます
朝鮮猿っていつまで経っても、結局日本の後追い猿真似しか出来ない寄生虫民族なんだよね
属国の歴史しか無くて、ずっと独自文化がゼロなのはなぜなのか本当に良く判るわw
< #`Д´> <うぎゃああああ!!フランス人までネトウヨの嫌韓厨だったニダーーー!!!ネトウヨ!ネトウヨ!ネトウヨ!!
■フランスメディア「KPOPに独自性は感じられない」「日本や米国の模倣」「商業主義」「つまらない」
パリで韓流コンサート「日本文化から韓国を知った」
2011/06/14(火) 09:45
一方、コンサートが終了した現在、当日の模様について報道しているフランスのメディアは
比較的少ない。この状況下、コンサートの模様を報じているのは、フランスのニュースサイト「Rue89」だ。
中でも目立つのが、K−POPは特に独自性が感じられないという意見だ。これまでフランスでファン層を
増やしてきたJ−POP、ひいては米国のポップスを踏襲しており、商業主義的な音作りだという意見や、
演奏がコンピューター管理されているためか野性味に欠けるといった意見が寄せられている。
http://news.searchina.ne.jp/disp.cgi?y=2011&d=0614&f=national_0614_016.shtml
585 :
491 :2012/07/25(水) 14:51:01.79
>>491 の質問をした者です。
長文の質問にてスレ汚しご迷惑をおかけしました。
各Actionにて使用しているAbstractActionに問題がありました。
特に使用するメリットも思いつかない為、メンバ変数で同じ役割を代役させたところ
無事動作しました。
質問取り下げさせて頂きます。
Javaでオンラインゲーム作ろうと思うのですがキャラクターの位置を同期しながら通信するにはどうすればいいですか
プレイヤー一人(またはサーバー)をホストにして、他はホストに移動コマンドを送る ホストが全部集中管理して、他はホストの全状態を受信して常に完全同期する かなり制限のある方法だけどライフワークにする気が無いならそれ以上望むな
588 :
デフォルトの名無しさん :2012/07/25(水) 17:26:39.73
Java初心者です。 Javaの配列の初期化方法を教えて下さい。 Cだとmemset()で0初期化とかあるんですが、Javaそういったものはあるのでしょうか? ググッてみると生成時は自動で初期化できるとは記載がありますが、生成しある程度、配列を使用した後、再使用のために、 使用前に初期化したいと考えています。 そのために初期化の方法を教えて欲しいです。 宜しく願い致します。 ちなみに、配列の宣言は下記となります。 private int[] iXPointArray = new int[XPOINT_ARRAY_MAX]; private int[] iYPointArray = new int[YPOINT_ARRAY_MAX];
memsetはもともと配列初期化が目的じゃありませんよ。
int value = 0; // 初期化の値 Arrays.fill(iXPointArray, value);
591 :
デフォルトの名無しさん :2012/07/25(水) 17:39:19.23
うむ
592 :
デフォルトの名無しさん :2012/07/25(水) 17:51:47.30
Javaで(クラスの)多重継承が禁止されてる理由は何ですか?
なんとなく
>>592 ダイアモンド継承でぐぐるとたぶん答えが見つかる
簡単に言うと同じメソッドがかぶったら曖昧になるからってこと
継承したクラスって暗黙的に親のインスタンスも生成されるだろ?
親が2つだと同じメソッド、同じシグニチャ(引数の数と型)が同じだとどっちの親のメソッドかわからなくなるってこった
596 :
デフォルトの名無しさん :2012/07/25(水) 22:53:48.73
PackageNotFoundExeptionがほしい…
>>596 それはExceptionではなくErrorではないだろうか…と一瞬考えたけどやっぱExceptionでいいな
コンパイルエラーはErrorクラスを継承しているんだろうか…
>>595 エラーに書いてあるじゃないか
getSize()はAppletのメソッドでしょ
599 :
デフォルトの名無しさん :2012/07/25(水) 23:28:15.61
Java1.6、rootとったAndroidで、自前の関数を使ってコピーしたファイルに対し String[] command = new String[]{"chmod","777","hoge.apk"}; Runtime.getRuntime().exec(command); しているのですが、execが戻ってこない時があります。(5回に1回くらいの頻度) 同様にProcessBuilderも使ってみたのですが、 ProcessBuilder b = new ProcessBuilder(command); Process proc = b.start(); startでやはり戻りがない状態になることがあります。 Webを参考に出力のバッファも読み捨てているつもりなのですが。。 他に考えられる原因があれば教えてください。
AndroidはJavaではない スレ違い
602 :
599 :2012/07/26(木) 00:04:50.84
失礼しました、Androidスレで聞いてみます
603 :
デフォルトの名無しさん :2012/07/26(木) 00:18:24.08
>>597 実行時に存在するかしないかわからないパッケージを参照したいんだが、
普通に書くとコンパイルエラーになるからわざわざリフレクションさせられまくる羽目に…
こういうのってどう書くのが定石なんでしょうか?
インターフェイスを使う
>>595 スコープの違い
インナークラスからはアウタークラスやそのスーパークラスのメンバが見える
別のクラスからはインスタンスを通してpublicなメンバが見える
ここではgetSizeにその違いが現れる
インナークラスを外に出すなら
update()が呼ばれる前に元インナークラスに元アウタークラスのインスタンスを渡しておくか
サイズを渡しておくか
update()に引数を作ってサイズを渡せばいい
>>603 リフレクションの手間を省きたいなら、デザインパターンのFacadeを検討するとか
スイスに極右政権が誕生!! 外国人の生保受給者・軽犯罪者を永久追放、祖国強制送還へ
http://engawa.2ch.net/test/read.cgi/poverty/1343227547/ スイス、外国人犯罪者を追放へ 生活保護の不正受給も対象
スイスで28日、特定犯罪をおかした外国人を自動的に
国外追放する法改正の国民投票が行われ、賛成52.9%で承認された。反対は47.1%だった。
特に、スイス人口の大半を占めるドイツ系住民の賛成票が多く、全26州のうち否決はわずか6州だった。
今回の国民投票は極右政党「スイス国民党(SVP)」が主導したもの。現行法では、
有罪となった外国人に対しては判事の個別判断で国外追放処分とすることができたが、
改正新法では、特定の犯罪で有罪判決を受けた外国人は自動的に国外永久追放となる。
対象となる犯罪行為には、強姦、深刻な性犯罪、強盗などの暴力行為、麻薬密輸のほか、
生活保護の不正受給も含まれる。
www.afpbb.com/article/politics/2776977/6517971
質問させてください。 例えば、変数に値をセットする際、 int a=15; とするのを、専用のクラスを用意しておき、 keisan(a,15);で呼び出してセットしたい場合、 void keisan(*** hensu,int atai){ hensu=atai; } のようにして、aに15がセットされるようにしたいのですが、 ***には何と入れればいいのでしょうか?
intとかdoubleとかlongといったプリミティブ型でそれは無理だよ クラス作ってプリミティブ型の変数をラップし、 かつ内部の変数の読み込み・更新が可能なメソッド作らないと そういう意味では、Integerクラスとか、 Doubleといったラッパークラスは内部の値を変更できないから無理 書いてることを実現するとしたら下のようになる AtomicInteger a = new AtomicInteger(15); void keisan(AtomicInteger hensu, int atai) { hensu.set(atai); } これを見ればkeisanというメソッドでやりたいことが無駄だと分かるでしょう
610 :
608 :2012/07/27(金) 01:41:00.49
>609 なるほど、ありがとうございます。 実は、iアプリやAndroidアプリで相互移植を容易にするために、 BitmapおよびImageの読み込みをうまくラッピングできないかと思っているんです。 現在は、iアプリでは、 Image gazo; gazo=getImage("chara1.jpg"); void getImage(String f_name){ MediaImage m=null; try{ m = MediaManager.getImage("resource:///"+f_name); m.use(); } catch(Exception e){ } return m.getImage(); } のようにして実装していて、getImageの内部でプラットフォームごとの 画像読み込み処理を書いています。 Androidではリソースidを使って上記のように実装する事ができました。 ただ、画像読み込み前に、一度リサイクルを行いたいと思い、 上記でいうgazo=の部分もメソッド内にもってこれたら、 メソッド内でgazo.recycle();も呼ばれる度に出来るのではと思った次第です。
>>610 アンドロイドとかの話はスレチだけど、
ただメソッド呼びたいだけなら、引数に古いBitmap入れて
gazo.recycle()の呼び出しすればいけるんじゃない?
戻り値の代入はそのままの形で行なって.
いずれにせよC++みたいな参照渡しは出来ないから
そうじゃない形で済ませるしか無いね
Javaのジェネリクスが、実際に型決定してるんじゃなくてキャストしてるだけってのはドトネタとしてはやっぱりキモい。 バイトコードに互換性持たせたいからって理由は理解できるけどさw
どっちみちライブラリの互換性が無いんだからあんまり意味ないぞ 当時Sunに金が無かったからVMの改造に踏み切れなかっただけ
Oracleになったとたん、どうでもいいことでVM拡張してるし 取り返しの付かない失敗をする前にもっと早く身売りされなかったのが悔やまれる
Oracleってバグだらけだからなぁ
幼女かわいいw あー俺も幼女と結婚したい
ロリコンの誤爆か プログラマってちょっとおかしな人多そうだしな
ロリコンっておかしいの?
>>608 void keisan( int hensu[], int atai ){
hensu[0]=atai;
}
int a[] = new int[1];
Example.keisan( a, 15 );
お前
>>548 でも似たような質問したろ
なんで複雑にプログラムつくろうsとするのか なるべく基本的なことでかけないか考えたほうがいいで
何を持って複雑と言ってるのやら B木とか複雑だと思うならマはやめたほうがいい
複雑というか素直な書き方ってもんがあるからな
COBOLやVB6.0を使えばとても素直に書けるんじゃなかろうか
素直にcだろ
結果が引数に指定した領域に書き込まれるとかばーちゃんには判りづらすぎる ばーちゃん向けにはローカル変数もいらん らくらくホンてきな言語が一番わかり易い
なぜオブジェクト指向設計でないのに、制約の多いjavaで書いて回避策を質問するのか理解できない。
好き好んでJavaやってる奴らだけの時代じゃなくなったからな
>>627 basicで書いてろ。visual()でない方な。
だだしちゃんと設計してないと1000行越えたあたりから、わからなくなると思うぞ。ローカル変数使わないなら、全てのapiと変数名被っちゃダメだからな?for(int iなんて使えないぞ。
BasicかVisual Basicか難しいラインだよなぁ そもそも日本語使えないとジジババは困るし Linusに従うならVisual Basicなんだろうな 日本語さえ使えればSmalltalkの方が老人、女子高生でも とっつきやすそうな気はするけど
すれ違いだボケ
何が人気かで言語選んでも仕方ないだろ。 Pythonも使うし、Perlも使う、最近だとPython代わりにGoも使う。 状況に合わせて自分が使いやすいもの、仕事の要件にあったものを使えばええがな。
馬鹿な営業は言語で仕事とってくるけどな。たまにJavaScriptの仕事をJavaの仕事だと言ってとってくるやつも居る。
JavaScriptの仕事なんてものが存在するのか
JavaScriptってWebデザイナー系なら仕事あるんじゃね あくまで推測だけど flashが縮小していく中HTML5が台頭してきてデザインコンテンツはjavascriptが見直されてきている おまけにFirebugていう優秀なデバッガーあり、開発環境も整ってる
SでもCでもJava6以降なら、JavaScriptならすれ違いというほどでもない
Scalaって言語は将来性あるの? Javaにとって変わる日がくるかな
グーグルのアンドロイドで使われるんじゃないですかね。 ジャバ言語についてはオラクルのサポートもないし、いつまでもハーモニー使ってられないでしょうから。
>>637 グループの技術会社だと、天下ってきたおじーちゃんが人脈で営業したりするからあったりする。毎年変わるので教育もままならず。ちょっと前の話だから最近はさすがにないかもだけど。
>>644 javaの上でなくても動く日が来るかってこと?
Rubyでいいじゃんと思うのはscala使ったことないからかな。
言語としてのJavaの将来はどうでもいいが、 JavaVMが無くなったら困る…。 どこでも動くVMなんて、JavaVM以外じゃファミコンエミュぐらいだろ。
Rubyとか業務で使えるのかよ
>>649 何度か業務で使ったぞ。
有名なとこだとtwitterも以前はrubyだったろ。それがscalaに置き換えられた。
後から俺の業務は特殊なのだからとかなしな。
業務で使えない理由って?
だからtwitterは重いのか
あれでもRubyの頃よりはましになったんだよ
java側で用意した文字列を Windowsメモ帳や、フォーカスされたエクスプローラのテキストエリア等 別アクティブな別プロセスに入力するのに、以下を使おうと思います C# System.Windows.Forms.SendKeys.Send(string) java public native send(String string); 1.dllはどのコンパイラで作る? 2.いや。。実は標準でそんなんできるよ? 3.俺ならこんな感じで実装するけど? 意見待ってます
ゆとりウザい
馬鹿には無理
>>653 java.awt.Robot#keyPress(int) keyRelease(int) 使えば代用できんじゃね?
>>653 レスありがっちょ
パスワード等の入力にはそれを使う予定ですが
IMEを経由しないで文字列として流し込みたいのです
文字列はスマホ側で漢字などに変換されたものを使うので
キーエミュレートのみではちょっと役不足になります
ネイティブをあまり使いたくないので、今回はクリップボード経由で文字列を流し込むことになるかも
キモイ
クリップボード使うならRobotでええやん
Robot.sendString(string); なぜこれが無いのかと疑問に思う
そもそも送り込める保証がないからじゃね?
factoryパターンのメリットって何ですかね? 結局、どこにif文を書くのかって差なだけな気がするんですが
使い回しができる
>>663 interfaceやabstractで利用して実装を隠蔽する。
生成条件や方法を知らなくて良くなるとシンプルになる。
シリアライズって勉強しないとだめですか
>>666 直列化のことかな。ダメじゃない。使わなければいいだけ。
シリアライズはちゃんと扱おうとすると難しいので避けれるなら避けたほうがいい 実際、Javaの標準ライブラリでも、不正なインスタンスが作れるような穴があったのを見かけた
>>668 ま、避けられないこともおおいけどな。
(Web, EJB関連)
670 :
595 :2012/07/29(日) 23:31:53.53
残骸もなにも丸々残ってるやんけ
672 :
670 :2012/07/30(月) 05:39:19.96
コピペグラマ未満だな
674 :
デフォルトの名無しさん :2012/07/30(月) 10:48:31.50
javaの勉強を最近始めたのですが、import 名前 で使うライブラリの使い方が解りません。 java.awt.Rectangleにあるintersectsを使いたいのですが、どうすれば良いのでしょうか? java.awt.Rectangle; // import the library から解りません。
>>674 インスタントを生成してメソッドを用いる。
基礎ならjava.langやjava.utilあたりから始めた方がいいと思うの。
676 :
デフォルトの名無しさん :2012/07/30(月) 13:19:35.75
>>675 ありがとうございます。
どこか解説などをしているオススメ所などあるでしょうか?
Big Java Author: Cay S.Horstmannは少ししかしていないので。すみません。
>>674 APIの説明書みてstaticって修飾しついてるメソッドはクラス名.メソッド名(引数)でそのまま使えるよ
それ以外のは
クラス名 変数名 = new コンストラクタ(引数)でインスタンス生成して、変数名.メソッド名でアクセスして使う
ここで、コンストラクタってのはクラス名と同じ名前のメソッド
ふーん
ふーんじゃねーよカス 初心者はでてけよ
ぶ〜ん
どれくらい英語読めるかわからんけど日本語の方が読めるんなら日本語でサイトさがせよ・・・ 洋書ってのはどうしてもその分野で読みたいとかそういうのじゃなきゃ読むもんでもないだろう
下手な和訳より原文読んだ方がマシって場合もあるけどな。
685 :
デフォルトの名無しさん :2012/07/30(月) 18:08:37.94
>>677 , 681
ありがとうございます。
とりあえず、SE7を平行して読んでいきたいと思います。
イベントキューの仕組みがよくわからないのですがいい日本語サイトありますか ぐぐってもあまりでてきません
むしろ原文を読んだときに吟味しないと分からないもやもやっとした部分は 和訳は鼻血がでるような超訳になってる
コレクションのインスタンスから総称型を含めた型情報を文字列で取得する方法はないですかね… ArrayList<Integer>のオブジェクトを作って、オブジェクト.getClass.getCanonicalNameでクラス名を取得して Class.forName(取得したクラス名).getInstanceしてもArrayList<E>にしかならないし… 総称型の情報は実行時にロストするという話を幾つかのサイトで見たのですが、 代入しようとすると当たり前のようにClassCastExceptionだし… 何か別の方法があります?
そういう難しいことは日本語のサイトより英語のサイトを中心に調べるしかないですね。
>>689 中身取得して、そのクラス名取得して文字列結合
>>691 ありがとうございます
…という事はサイズ0のリストだったりすると厳しいのかな…
>>689 ないよ。総称型はコンパイルで完全に消える。
classファイル自体に情報が無いから、どうがんばっても取得できない。
実行時にも型情報を取れるように、「このクラスしか入れちゃダメ」って
指定できるリストがあったような…。標準ライブラリには無かったっけ?
なんか難しそうな話してるね List<自作クラス> これを逆コンパイルしたら、きっと何かが見えるはず
日本人にはもう理解の限界を越えてるので英語のサイトを調べるしかないですね。
javaなんて日本語の文章なんて全部翻訳もしくは後追いだから、 ドキュメント以外は必要としてから数年後にしか日本語訳なんか出ないべ。 ここの荒らしがjava嫌うのもそのせいだよ。
>>697 でRubyマンセーと。
とはいえJava6までは日本語への翻訳早かったんだけどな。
やはりOracleになったせいか。
javafxって結局ちゃんと動くのはms-windowsでしかないですよね。 しかも力を入れているms-windowsですらjavafxは普及することもないし、そもそもopengl,directxやweb,media apiがネイティブ程度の性能で動くかどうかすらも怪しいですよね。 これでもjavaはwrite onceなんちゃらかんちゃらなんですか?
性能や個別プラットフォームでの普及率とWORAは関係ないしなぁ
>>694 標準APIだと Collections#checkedList(List, Class) 以外にあったっけ?
これだと型情報取れないのよね。リフレクション使えば別だけど。
ロケールクラスってなんですか・・・・
>>699 おまえが「なんちゃらかんちゃら」だろう
EJBってよいですか?
>>703 そういうことじゃなくてどういう時に使うかよくわからないのです。
707 :
デフォルトの名無しさん :2012/07/31(火) 13:57:09.07
>>706 自分のプログラムが動くのが日本限定とかなら知らなくていい
へえ
文字数規制で1レスに収まりませんが質問すみません "変数へ違う値を代入すると前の値を破棄して新しい値とすることができる" と本に書いてあったのでためしに以下のプログラムを書いてみたのですがうまくいきません 最初にh = 4として計算した結果を出力し、次にh = 10としたときの結果を表示させたいのです
public class Prog0001b { public static void main(String[] args) { int a, b, h, Ans; a = 2; b = 3; h = 4; Ans = (a + b) * h / 2; System.out.println(Ans); h = 10; System.out.println(Ans); } }
別におかしくないよ。
おかしかった。 h = 10; のあとに Ans = (a + b) * h / 2; をしないといけない。
自分が望むのは一回目の出力では(2+3)*4/2の答えである"10" 二回目は(2+3)*10/2の答えである"25"を出力させたいのですが二回とも10になってしまいます
>>713 ありがとうございました。できました
Ansの値にも新しく代入しないといけないんですね
そうなんです。
Ansは式でなく値と宣言しているな。
JavaBeansの規約に引数のないコンストラクタであること、すべて内部のメンバにはアクセサメソッドをつかうこと、直列化可能であることとあるのですが、どうしても引数持たせたい時は持たせても大丈夫ですか
一応 1.6以降なら @ConstructorProperties あるけど……
>>719 引数なしコンストラクタと両方持たせるってこと?
「引数なしコンストラクタを持つ」だから 引数なしとありのコンストラクタを両方持つならおけ
>>723 そうだったのですか ありがとうございます
引数有りコンストラクタが必要な理由って継承関係かな。
while(true){}には、 try{ Thred.sleep(1); }catch(Exception e){ e.printStackTrace(); } のような休憩みたいなの入れなくて大丈夫なんでしょうか
javaでブラウザ上のflashplayerのウィンドウ取得するにはどうしたらいいんでしょうか
JavaScript質問は、ここでは受け付けていません。
ブラウザのフラッシュプレイヤーありますよね たとえばyoutubeだとプレイヤーと動画の部分です。 あれを取得していろいろjavaから操作したいってことです どうすればいいですか
>>730 あぁ、そのフラッシュプレイヤーの会社の株を取得して、socketとかつけさせてプロセス間通信したいってことか。まずは資金調達だな。
質問の用語がいろいろおかしいが、第六感を発揮してみた。どやっ。
意味不明
自分で作れば良いよ
getElementById
Android のプロジェクトを本やネットに従って作成しても、 hello.javaとかsrcとか、resとか何も作成されません。
>>736 本やネットなど複数のやり方を混ぜてやったら、そりゃうまく行くわけないわな。
最初から混ぜてたワケでもないし。
(※今は混ぜているようです)
で、対策は?
2chには無能と煽りしか居ません。
h264のデコードを自前で書くことになるわけだが 。ねっとだと用意されているのでそっちを使うが吉 クライアントのマルチメディアに関してはjavaには向かない 730は機種依存コードを書くことになるのでC#で書くことを推奨する
混ぜるな危険という注意がなかったのが問題だと言いたいのかな。書いてなくても自己責任でと言うのは当たり前だと思うが。 そしてそこに書いてあるのは君の環境でのやり方ではなく、やり方を理解するための例であったはずだ。知識の習得でなく結果のみが目的なら他にやり方があるはず。 つまり、、、ゆとり乙。
ごめん、単純に言えtえ
すれ違い
>>730 フラッシュの動画再生プレイヤーのコントロールをいじりたいって話でしょ?
動画のデコードをJavaでやりたいと発想を飛躍させている人は何なんだ
それはともかくJavaScriptでやればいいよ
役立たないスレか、了解。
糞スレ(笑)
はい、スレ違いのゆとり様のお役には立てないので、二度と来ないでくださいませ。
本やネットに従ってもうまくできないって一種の才能だよ
>>746 そうだったんですかありがとうございます!
そうするとJava→JavaScript→Flash経由でアクセスすればいいのですね
Javaは関係ないって
>>752 JavaとJavaScriptは、根本的に別物
>>754 Javaで操作したいっていってんだからあってるだろ
よくよめよカス
JPanelなどにボタンなどのコンポーネントを並べた後に、 この操作盤であるJPanel自体を画面に縮小して表示ってできますか? 縮小した後でも、クリック動作などが使えるままだといいんですが
ボタン使えなくていいならやり方はわかる
758 :
756 :2012/08/01(水) 09:56:54.83
>>757 ボタン操作が有効なままでするとしたら難しいですかね?
>>756 setSize()じゃなくsetPreferedSize()使うとできるよ
760 :
756 :2012/08/01(水) 11:45:41.71
>>759 すいません、transformしたように、
ボタンや、ボタンの文字列などもそのまま
縮小して使えないかと考えていました
今のところクリックした座標に同じ座標の変換をして
使えないか考えていましたが、難しそうです
flashだと自動リサイズしてくれるんだけどねーどうなんだろう
WPFで作ればいい
JavaっていってんのにWPFでつくればいいとかおまえあほかよ
てかJMFの話一切でないんだな。
スレッドIDからスレッドのインスタンスを取得する方法はないのかな? Thread t= ThreadManager.getThread(123); とかどこからでも取得したいんだけど。 やっぱりMap<Long, Thread>とかで自分で管理しないとだめ?
本来スレッドはJVMが管理するものであって自分で管理しなきゃいけない設計はおかしい
769 :
767 :2012/08/01(水) 17:45:43.25
>>768 ということは取得する方法はあるんですかね?
自前でやらんとダメだろ。
771 :
767 :2012/08/01(水) 18:21:15.23
お、取り方わかった。 ありがとう。
同期とるために管理するならwait notify使うのが一般的だぞ
773 :
767 :2012/08/01(水) 18:31:01.52
まぁ自力でモニタツールを作りたかっただけです jconsoleとかvisualvmとか知ってるけどね
で?
775 :
767 :2012/08/01(水) 21:18:42.89
おめーらつかえねー
このスレに使えるやつがいると思ってるのか。使えない奴だな
うんことおしっこです
>>765 flashの件か? 最近のjmfはflashを操作できるのか? それともflashは動画再生のみと決めつけてるのか?
try-with-resourcesの()内で↓みたいな書き方をしてもエラーにならないんですが、 全部close()してくれてると思っていいんでしょうか? BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file)))
うん
そもそもcloseし忘れててもエラーにはならない
>>780 try with resourcesで直接close呼ばれるのは、一番外側のBufferedReaderだけ。
BufferedReaderのcloseが、InputStreamReaderのcloseを、
InputStreamReaderのcloseが、FileInputStreamのcloseを、
というように連鎖的にclose呼び出すけど、
これはtry with resourcesでなくても同じ。
デコレートパターン!
デコレータだろ・・・
public static void main(String[] args){}の中が実行されるというっことなのですが、エラーします public class Test{ int a = 1; int b = 2; public int calcSum(int a, int b){ return (a + b); } public static void main(String[] args){ int c = calcSum(a, b); System.out.println(c); } } どこがおかしいでしょうか メソッドやフィールドはすべてチェックしましたがおかしくないと思うのですが・・・
まず一番に日本語がおかしい エラーになるならエラーの内容をそのまま貼れ どうせcalcSim()が非staticだからだろ
// static にすればいいと思うよ public class Test { static int a = 1; static int b = 2; static int calcSum(int a, int b) { return (a + b); } public static void main(String[] args) { int c = calcSum(a, b); System.out.println(c); } }
これが正解 public class Test { int a = 1; int b = 2; int calcSum(int a, int b) { return (a + b); } public static void main(String[] args) { Test t = new Test(); int c = t.calcSum(a, b); System.out.println(c); } }
すいません
>>792 だとインスタンス生成したののなかにまたメインがあって、そのまたなかにメインがあって・・・って無限になってしまいそうなのですが大丈夫なのはなんでですか
mainはコンストラクタじゃないから
795 :
756 :2012/08/02(木) 13:45:58.17
日本語がおかしいのは何でですか?
おかしくねーよゴミクズ
コンパイル無しかとんだ正解が有ったもんだ。
↑池沼
>javac Test.java Test.java:11: static でない 変数 a を static コンテキストから参照することはできません。 int c = t.calcSum(a, b); ^ Test.java:11: static でない 変数 b を static コンテキストから参照することはできません。 int c = t.calcSum(a, b); ^ エラー 2 個
int c = t.calcSum(t.a, t.b); でいいだろもー
メソッドのt.はいらないね 間違いじゃないけど
>>807 要らないなら何のためにインスタンス作った。
calcsumがstaticだったら要らないな。 まともに設計しないと、分けるべきとかstaticであるべきとか、決まらないからやっかいだな。
で、staticつけまくってstaticおじさんいっちょあがりですか
>>808 フィールドを使うためだろ
実際付けなくてもエラーでないし実行できる
ある物を不要とすれば別の物が必要になる それだけの話
質問します。 HOGE = 4570714222; System.out.println("HOGE=" + HOGE + " 0x" + Long.toHexString(HOGE)); HOGE= (HOGE & 0xFFFFFFFF); System.out.println("HOGE=" + Long.toHexString(HOGE)); やりたいことは、HOGEの下位4バイトだけを取り出したいです。 実行すると、HOGE=0x1106f906eとなってしまいます。なぜか余計な1先頭にがくっついてきます。 HOGE = (HOGE & 0xFFFFFFFF)は、HOGE=0x1106f906e & 0xFFFFFFFFを計算しているから HOGEは、0x106f906eにならないとおかしいと思うのですが、なりません。
HOGEがfinalで宣言されてるからだよ
longに対してintで論理積を取ってるからそうなるんだろ 0xFFFFFFFFLにしたらどうだ
失礼します。 out.print("<tr>"); int count = 0;//カウント用 for(int i = 1 ; i < firstDay ; i++){//月が始まるまで空白出力 count++; out.println("<td width=30 heigth=30 align=center>"); } for(int i = 1 ; i <= lastDate ; i++){//月間の日数分ループ count++; if(hyoujiNen == sysYear && hyoujiTuki == sysMonth && i == sysDate){//当日 out.println("<td style=\"border-color:#000000; border-style:dotted; border-width:1px;\"width=30 height=30 align=center bgcolor=#fff00>"); out.println(i); out.println("</td>"); }else if(count % 7 == 0){//土曜 out.println("<td style=\"border-color:#000000; border-style:dotted; border-width:1px;\"width=30 height=30 align=center bgcolor=#0000ff>"); out.println(i); out.println("</td>"); }else if(count % 7 == 1){//日曜 out.println("<td style=\"border-color:#000000; border-style:dotted; border-width:1px;\"width=30 height=30 align=center bgcolor=#ff0000>"); out.println(i); out.println("</td>"); }else{//当日以外の平日 out.println("<td style=\"border-color:#000000; border-style:dotted; border-width:1px;\"width=30 height=30 align=center>"); out.println(i); out.println("</td>"); } //土曜なら次の列へ if(count % 7 == 0){ out.print("</tr> <tr>"); } }
続き 現在JSPでカレンダーを作成済みです。 日曜から始まり土曜になったら次の行へ行く形にしてるんですが、 これをサーブレットとJSPで処理を分けて作る事は可能ですか?
>>816 ありがとうございました!0xFFFFFFFFLにしたら解決しました。
intの0xFFFFFFFFは-1 longとの演算で型が昇格 -1はlongで0xFFFFFFFFFFFFFFFF
821 :
817 :2012/08/03(金) 07:36:23.74
どなたかご回答いただけるとありがたいです。 お願いします。
めんどくせえ
824 :
818 :2012/08/03(金) 08:35:25.79
>>823 可能ですか。何かヒントいただけませんか?
そんなことよりさ、カネくれよカネ
>>824 何がわからないかヒントいただけますか?
ヒント:jspの初心者向けサイト
ヒントなんかいらんわ カネくれよカネ
今日気づいたんだがクリップボードにコピーされるたびにサイトにコピーした内容が送信されるウイルスに観戦感染してた・・
830 :
デフォルトの名無しさん :2012/08/03(金) 09:16:43.47
>>826 えっと…サーブレット側で行ったループ処理をJSP側で受け取る方法。みたいな感じです。
そんな基礎、ぐぐれば1分で解決するからぐぐれって
ループ処理をメソッド化してjspから呼び出せばいい
835 :
818 :2012/08/03(金) 09:32:57.90
ありがとうございました。 もうちょっと調べてみようと思います。
>>829 100MBの動画とかをエディタで開いてCTRLA C連打したらどうなるんだろうな
向こう落ちるんじゃないか?
ウイルスもエディタもイラネー カネくれよカネ 日本人はゴールドざっくざく好きだろ?
>>830 やり方はいくらでもあるので、例。
controler(sevlet)で日インスタンスを持った月インスタンス(model)を作り、view(jsp)に渡し、月に次の日をくれって言うと、次の日がもらえる。
休みとか当日とか週末とかも日に聞けばわかる(ように作る)。
こういうふうにしとけば、viewには単純なループだけでいい。どうしてもループ消したいならカスタムタグにする。
839 :
デフォルトの名無しさん :2012/08/03(金) 12:43:04.18
へえ
>>836 Javaで大量のデータをクリップボードにコピーし続けるプログラム走らせれば面白そう
Javaじゃなくても面白そうだけどね。
うん
こ
ぶりぶり
845 :
デフォルトの名無しさん :2012/08/03(金) 18:59:22.40
>>838 ありがとうございます。
頑張ってみます。
いえいえ
847 :
デフォルトの名無しさん :2012/08/04(土) 16:59:20.76
Big Java 3rd edition, cay horstmann のソースコードが見つからないのですが、あるんでしょうか? 本のCh23/parser/ItemListParserDemo.java のコードを写してもエラーで出来ないので。
849 :
デフォルトの名無しさん :2012/08/04(土) 17:55:59.19
お気に入りサイト管理のフリーソフト。
(2012-07-28: 0.95をリリース)
登録したサイトの全画面のイメージを作成して、
動画サイトでは動画のコマ送り画像も自動生成!
まとめサイトやブログなどを永久保存!
他にも便利な機能がたくさんあります。
詳しくは、下記のサイトから。(または、MyFavorites Collection で検索!)
(基本的な操作の動画も公開中!)
http://nwn-app.appspot.com/mfcfunc.html
>>849 画像のアスペクト比がめちゃくちゃだよ。
851 :
デフォルトの名無しさん :2012/08/04(土) 18:29:11.08
>>848 loading から変化がないのでDL出来ませんでした。
本が手元にあるので頑張って記載されているソースコードを探してみます。
わざわざ手数を患わせてすみません。アップありがとうございました、
log4Jの使い方で聞きたいんだけど、 Hoge1クラスの中で Logger log = Logger.getLogger(Hoge1.class.getName()); log.setLevel(Level.DEBUG); log.info("aiueo"); みたいに使うときに、log.setLevel(Level.DEBUG);の設定の有効範囲ってHoge1クラスの中だけ? 同時に起動しているHoge2クラスで同じように Logger log = Logger.getLogger(Hoge2.class.getName()); log.info("aiueo2"); って書いたらデフォルトのレベルがINFOだとしてDEBUGのメッセージは出力されない?
String file = "sample.log"; PatternLayout layout = new PatternLayout(); try { writer = new FileWriter(file); appender = new WriterAppender(layout, writer); } catch (IOException e) { } System.out.println("スレッドホールド:" + appender.getThreshold()); appender.setThreshold(Priority.DEBUG); System.out.println("スレッドホールド:" + appender.getThreshold()); log.addAppender(appender); これでDEBUGレベルのがログに出力されなくて困った 助けておくれ
まずmainに貼り付ければコンパイルの通るコードを貼ってくれんか?
856 :
855 :2012/08/04(土) 19:59:37.76
レス間違えた無視してくれ
数学のグラフを書くための良い(定番)ライブラリを教えて下さい。 PythonのMatplotlibのようなものを探しています。 よろしくお願いします。
3Dや再構成状態空間アトラクタとかも描画できるチャートライブラリも欲しいよね。
JGRとか使ってRと繋げてRコマンド使う前提でのプロットも有るけど、 あれだと他所への埋め込みが難しくなる。
フィボナッチ関数もかけるやつでお願いします><
>>858 >>860 ありがとうございます!
とりあえずJFreeChartを試してみます。Rも使ってるのでJGRというのも見てみます。
javaappletで複数のdrawLineやdrawOvalで描いた図を一纏めに扱うためにはどうしたら良いでしょうか?
>>864 Image作ってそこにdrawLineやdrawOvalする
appletはそのImageを描画する
ちらつき防止かつImageを拡大や縮小すればひとまとめにして扱える
フィボナッチって数列じゃないすかね
いやつまりね、例えばBufferedImageつくるじゃん BufferdImage img = new BufferedImage(300, 300, BufferedImage.TYPE_4BYTE_ABGR); //イメージ生成 (Graphics2D)g2 = img.createGraphics(); //生成したBufferedImageに書き込むGraphics2Dを生成 g2.drawLine(0, 0, 100, 100); //生成したBufferedImageに線を引く ・・・・ //好きなように円書いたり図形書いたりする 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 アプレット public void paint (Graphis g){ Graphics2D g2 = (Graphics2D) g; g.drawImage(img, 0, 0, this); //imgを描画 } こんな感じやねん
>>865 その事を使って何か簡単なのを書いていただけないでしょうか?
>>867 できんかった・・・
アホすぎる・・・
猿でもわかるぐらいに説明してもらえませんか?
馬鹿には無理
>>861 フィボナッチって前の数字2つを足した数字が次の数字って奴だろ。
その程度の関数もかけないのか?
javaは浮動小数点数を採用していて正確に少数が表記できないからBigDecimalがあると どこかで見たんですが、BigDecimalも小数点以下10桁くらいに設定すると正確に表示されないですよね? javaでは少数の計算をするのは諦めた方がいいのでしょうか?
何を計算したいかによる
javaでなくて、お前には計算機での実数計算は難しい
馬鹿には無理
つまり↑には無理
ここもくっだらねーやりとりしてんなぁ
879 :
873 :2012/08/06(月) 02:28:24.68
色々書き直したらできたw スレ汚しすいませんでした
>>873 BigDecimalはあくまで任意精度での演算を実現するクラス
つまり何桁かまでの精度があることは保証できて、
100桁でも1000桁であってもプログラマが指定すればそのように動く
もちろんあくまで任意であって、精度の限界はあるので
例えば任意の有理数の上で演算したいとか、そういう記号処理的な事がやりたいのであれば
BigDecimalは使えない
881 :
デフォルトの名無しさん :2012/08/06(月) 05:45:07.16
windows8とかこれから画面タッチが主流になってくると思うけど、これってリスナー関係どうなるのかね? 今の流用してマルチタッチとか感知できる?
>>870 あ、間違ったとったわ
(Graphics2D)g2 = img.createGraphics();
→
Graphics2D g2 = img.createGraphics();
これでできるやろ
ぐぐったらJavaFXは2.2でマルチタッチ対応するらしい…… 既存アプリに対してなら、マルチタッチのジェスチャを翻訳して 適当なイベントなげてくれるネイティブアプリをそのうち誰かが作るんじゃねーかと。
884 :
デフォルトの名無しさん :2012/08/06(月) 07:26:30.25
ブログのテンプレートにリンク画像を貼りたいのですが、HTMLの記述が分かりません。 FLASHは使えないので、2.2秒で変わるGIF画像を作りました。その画像のリンクする先を2.2秒感覚で変えたいのですが、詳しい人HTMLを書いて頂けませんか。 画像のリンク先は4つに設定したいです。
この前フィボナッチ螺旋みたいなでっかいウンコが出たんですけど、ウンコってなんであんなに臭っいんですか?
ひまわりの種をフィボナッチ螺旋に沿ってとって食べたから
>>881 HIDなら問題ないだろ。作る方に問題があるかは別にして。
なっちはどうしてあんなになってしまったんでしょうか?
ということは、どういう順番で食べるとウンコは臭っさくならなくなるですか?
スレ汚すなvipでやってろ うんこ野郎ども
vipを汚すなここでやれ うんこ野郎ども
vipなんて元々穢の住処。
プリミティブ型を参照渡しするにはどうしたらいいんですか? わざわざプリミティブ型だけのフィールドのクラス作って渡さなきゃいけないんでしょうか
Javaには参照渡しはないから基本的に無理。 クラス作るの面倒だったら要素1個の配列渡せ。
プリミティブ型を参照渡ししたいってfaqだけど、どういう設計からそういう実装にしようって思うんだろう?想像できない。
897 :
デフォルトの名無しさん :2012/08/06(月) 21:18:03.97
想像できないね
えっ あなたたちC言語でint型のポインタを関数で渡したりするのしたことないわけ
えっ C言語と同じ方式で実装しようとしてるわけ
>>894 >>894 じゃないけど例えばプリミティブ型を参照渡しする設計を思いつかないってそれは経験不足な奴だからだと思うが
再帰関数だとしょっちゅうそういった設計はでてくるぞ
画素の同色判定なんかは典型的だろ
基本情報技術者の過去問にそういやあったねそんなの 同色の色がいくつつながるか調べるやつ ああいうのはJavaでもプリミティブ型の参照わたさんと実装できないね
再帰関数でポインタ使うんですか? その設計だとずいぶん複雑なコードになってしまい本人以外は管理できなくなるでしょうね。
それっぽっち複雑と思ってるとか頭弱いんじゃねーの
リスプとかランムダとか、中学生並のカッコよさに憧れて意味もなく再帰コードにしてませんか?^^ for使えば十分なのに無駄なことに頭使って残業したくないですからね^^
中学生は夏休みだからこんなにたくさんの雑魚が沸いてるのか。 今日は、日本国政府に対してアメリカ軍がサレンダーを要求し、結果として原子爆弾を投下して、日本国民非戦闘員に対して爆弾を破裂させた第一日目じゃなかったか? 中学生は勉強して脳味噌に刻んでおかないといけないことがたくさんあるから大変だなぁ。
グローバル変数を使えばいい
ふう
なんか1週間に一度ぐらい
>>894 と同じ内容貼られてないか。
新手のコピペかなんかか?
もうint a[] = new int[1];でaを渡せばいいよって書くのも飽きてきたわ。
まともに雑魚の相手はするな 道端に落ちてるウンコと同じくスルーしろ
↑うんこにたかる蠅
ウンコって何であんなに臭っさいんですか? やっぱり大腸の中で発酵してウンコは育ってるからですか?
お前のが臭いだけだろ。 俺のはフローラルの香りするもん。
ウンコすれ乙
再帰なら普通にフィールドに加工中の変数を置いとけばいいんでない? むしろ、配列とか用意するよりよっぽど手抜きできる
>>898 >>900 c言語と同じように実装するとか、設計書に書いてあるのか?それは設計じゃないだろう。
設計にあるモデルを実装にするときに、プリミティブ型を渡さなきゃいけない実装を選ぶことがないと言っている。
設計は別人で、設計書に実装方法まで指示してあるなら同情するが。
変数名が一文字とか、動けばいいって人の匂いがする。
自演がひどいな IDでないと
再起なんて糞記述しなくても、クラス中にその処理するメソッド作って for分でN回呼び出すだけでいいんちゃうんかと
お前にはそれでいいんじゃないの
再帰はそれだけで完結できるとこがいいのに、ポインタとか使わなきゃできないとか台無しだな。
ウンコJavaじゃなにやっても無理でしょ。 ここは素直にVB.NETでやるしかない。
>>920 再帰関数のなかに共通して使いたい変数があったらどうするんだよ
>>922 その時点で、なんで再帰で書いてるのか疑った方がいいな。
ツリー構造のデータの検索って再帰以外でできるの?
できなくはないよ 面倒なだけで
末尾再帰はすべて変換できる。
>>924 できるし、再帰でもプリミティブ型のポインタ使わない。
>>927 つまなくて良いスタック積むイメージより簡単だとおもう。
>>927 フラットにして舐めてくか、hashをキーにすりゃいいだけだろう。
データの規模とか環境の速度とか後付け来そうだな。
>>930 全件舐めたら、ツリーにしている意味が…
ポインタ使ったら、再帰にしている意味が…
>>931 再帰使いたいからツリーにしてるだけなんだろ?w
>>934 構造が再帰的かどうかと、再帰呼び出しかどうかは別のことだろw
酒抜いて来いwww
>>930 これが一般的なJava使いのレベルだったら戦慄を覚えるわ
こいつだけだよな
再帰なんて慣れればなんでもないのに避けてるから 苦手意識を持ってしまうだけだろ。
>>938 できるか聞かれたから答えただけだろうが。それにメモリ足りないとかioが遅いとか一度しか読まないだと、xmlならdomでなくてsaxで総なめの方がいいだろう。
2chに張り付いてるフィボナッチウンコさんと違って、こっちは真夏でウンコ熱いしC言語雑魚の相手をするほどヒマじゃないんですよ。
>データの規模とか環境の速度とか後付け来そうだな。 自ら実践
>>942 木構造を再帰呼び出しで処理したときに、ポインタを使うメリットは?
話をそらして逃げただけか。
>>946 ポインタを使うメリットがあるなんて誰も言ってないよ
お馬鹿さん
そんなに議論したいなら、まずはコンパイルできるコードを書いてくれ。 コードで語れないなら、Cや再帰云々以前に勉強不足なだけ。
なんで一気にこんなレス増えてるんだ?
>>941 再帰呼び出しは効率が悪いので、普通は変換する。
末尾再帰はコンパイラの最適化で変換されることもある。
>>945 全体を否定されたときにこういう場合は使えるという例をあげるのと、実はこういう場合限定だったからそれは駄目だと言うのは違うことだろう。それもわからんか。
ツリー構造のデータをフラットなハッシュにするには どうすればいいの?
>>947 今来たところか?
>>900 >例えばプリミティブ型を参照渡しする設計を思いつかないってそれは経験不足な奴だからだと思うが
>再帰関数だとしょっちゅうそういった設計はでてくるぞ
>>948 そうだな。プリミティブ型のポインタを使用した再帰呼び出しのコードが書けたらな。
>>957 フラットなハッシュにしたいのに、なぜツリー構造にした。まずはそこから考えるんだ。
>>959 フラットなハッシュにしたいのはお前だけ
フラットなハッシュにするためにまず再帰するんですね
>>952 構造に意味が無い前提とか、にわかにもほどがあるだろ
>>968 >そうだな。
>>922 はにわか確定だな。
まちがいなくニワカだろ
それがわからないのか?
本当に再帰をならったばっかりの一年生とかなのか?
にわかだから答えない理由はないが。むしろにわか相手だからこそ答えてるとこがある。俺も最初はにわかだったからな。
>>970 口に泡してゴボゴボ言ってる方が、答えようとしてる側だからな…
無能な働き者は殺せ、とはよく言ったものだ。
はなくそがはなくそにレスしてるようなもんだな。
>>972 自分のことはなくそとか言うもんじゃないぞ。
今でも、参照の値渡しを、参照渡しって書いてるテキストがあるんだっけか。
Javaじゃないしどうでもいいw
Javaは参照渡しねーぞw
>>969 てか再帰のアルゴリズムすら知らんようだけど。
>>978 そんなやついるのか?
社内システムでビジネスロジックばかり書いてる俺だって知ってるぞ。
まあ使う必要ないなら、無理に使うこともないか。
無理しなくていいですよウンコさんw
>>980 この人なんか
かなり弱い上にこないだフィボナッチの関数とか聞いてきた人だしね。
スレ進みすぎだろ・・・
誰とは言わないが フィボナッチ関数書かせたらバカだから再帰で書きそう
ahojaverには再帰すら難しいってことはわかった
もしもポインタ参照によるローカル変数の別名(エイリアス)が禁止されていなかったら、 ベリファイアによる実行時検査やJITによる実行時最適化は使い物になんなかったろうな。
フィボナッチって単なる数列でフィボナッチ関数なんて言葉無いよな。
再起って、30万回回るとしたら29万9999回分のリソース量が必要になっちゃうんじゃないの?
>>988 関数のローカル変数はスタックに格納されるからその前にスタックオーバーフローになるよ
スタックは1Mバイト
>>988 ディレクトリとかxmlみたいに木構造になっていると必ずしもそうではない。
>>989 内容によっちゃ末尾最適化でループになるだろ
末尾再帰最適化の無い言語で再帰書くのはアホ 言語に合ったコードを書くか、再帰に合った言語を使うのは普通 自分で末尾再帰最適化を実装した処理系を用意するのはキチ
末尾再帰最適化厨が大量発生
なんでもかんでも否定しないと気がすまないのは心に余裕のない人の特徴
再起はよほど簡単なものでないとメモリ食う よほど簡単なものでも可読性なり考えたら普通に回した方がいい
再起不能
次のウンコすれはどこだ?
>999 乙
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。