Archive

Archive for the ‘Java’ Category

JavaのString……のつづき

8月 19th, 2009

ソースコード:

import java.io.*;
/*
java の StringBuilder の挙動を確認するテスト.
StringBuilderで幸せになれる!
(data.txtの中身がhogeなら)全部 hoge が返るモノとばかり思っていたよ!!!
 */

public class fileio2{
    public static final String CLASSNAME = "fileio";

    public static void build(StringBuilder str)
    {
	str.append("hoge");
    }
    public void build2(StringBuilder str)
    {
	str.append("hoge");
    }
    public static void InputStringBuilder(StringBuilder str, String filename){
	String HEADER = CLASSNAME + "::InputString ";
	try{
	    BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(filename)));
	    String line;
	    while((line = in.readLine())!=null)str.append(line);
	    in.close();
	} catch(Exception e){
	    System.err.println(HEADER + e);
	}
    }



    public static void main(String []args)
    {
	String HEADER = CLASSNAME + "::main ";
	String str = "";
	String filename = "data.txt";

	StringBuilder sb = new StringBuilder();
	build(sb);
	str = sb.toString();
	System.out.println("build 1");
	System.out.println("    : "+sb);
	System.out.println("    : "+str);

	StringBuilder sb2 = new StringBuilder();
	fileio2 f3 = new fileio2();
	f3.build2(sb2);
	str = sb2.toString();
	System.out.println("build 2");
	System.out.println("    : "+sb2);
	System.out.println("    : "+str);

    	StringBuilder sb3 = new StringBuilder();
	InputStringBuilder(sb3, filename);
	str = sb3.toString();
	System.out.println("build 3");
	System.out.println("    : "+sb3);
	System.out.println("    : "+str);
    }
}

実行結果:

build 1
    : hoge
    : hoge
build 2
    : hoge
    : hoge
build 3
    : hoge
    : hoge


StringBuilderで幸せになった.なるほーど.

tgbt Java

このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加


JavaのStringを勘違いしたまま使っていた件について

8月 19th, 2009

ソースコード:

import java.io.*;
/*
java の String の挙動を確認するテスト.
(data.txtの中身がhogeなら)全部 hoge が返るモノとばかり思っていたよ!!!
 */

public class fileio{
    public static final String CLASSNAME = "fileio";

    public static void test(String str)
    {
	str = "hoge";
    }

    public void test2(String str)
    {
	str = "hoge";
    }

    public static void InputString(String str, String filename){
	String HEADER = CLASSNAME + "::InputString ";
	try{
	    BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(filename)));
	    String line;
	    while((line = in.readLine())!=null)str+=line;
	    in.close();
	} catch(Exception e){
	    System.err.println(HEADER + e);
	}
    }

    public void InputString2(String str, String filename){
	String HEADER = CLASSNAME + "::InputString ";
	try{
	    BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(filename)));
	    String line;
	    while((line = in.readLine())!=null)str+=line;
	    in.close();
	} catch(Exception e){
	    System.err.println(HEADER + e);
	}
    }

    public static void main(String []args)
    {
	String HEADER = CLASSNAME + "::main ";
	String str = "";
	String filename = "data.txt";

	try{
	    BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(filename)));
	    String line;
	    while((line = in.readLine())!=null)str+=line;
	    in.close();
	} catch(Exception e){
	    System.err.println(HEADER + e);
	}
	System.out.println("べた書き");
	System.out.println("    : "+str);

	str = "";
	InputString(str, filename);
	System.out.println("static 関数");
	System.out.println("    : "+str);

	str = "";
	fileio f = new fileio();
	f.InputString2(str, filename);
	System.out.println("class メンバ関数");
	System.out.println("    : "+str);

	str = "";
	test(str);
	System.out.println("test 1");
	System.out.println("    : "+str);

	str = "";
	fileio f2 = new fileio();
	f2.test2(str);
	System.out.println("test 2");
	System.out.println("    : "+str);

    }
}

実行結果:

べた書き
    : hoge
static 関数
    : 
class メンバ関数
    : 
test 1
    : 
test 2
    : 


あれ……?

tgbt Java

このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加


プレゼンテーション配信?ソフトウェア(未完成)

12月 28th, 2007

だいぶ前に基本形だけ作って熟成していたんだけど、まともに完成させる時間的余裕がない&&気が付いたら某所で名指しされていたので思想と概要だけ晒しておく。不満があるのでやるならまともに再実装したいんで。

Read more…

tgbt Java, つくったもの

このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加


Javaのメモ

7月 15th, 2007

躓いたところを適当に書いておく。

スクリーンショットを撮る

Robotに撮ってもらう。createScreenCaptureを使えば一発。Windowsじゃなくてもいけそう。

Toolkit.getDefaultToolkit().getScreenSize()を使えば画面サイズも撮れる。

デュアルディスプレイ関係は未調査。手元のデュアル環境ではメインウィンドウだけ取得された。

タイトルバーのないJFrameウィンドウを作成する

setUndecoratedで色々と消せる。ただし、これを使えるのはウィンドウが表示される(表示可能になる?)前のみ。

JFrameをextendsしたクラスで試したときは、コンストラクタの頭で実行したらOKだった。

VBやVCやC#みたいに単純な座標設定でSwingのGUIを調整する

setLayout(new BorderLayout());

getContentPane().setLayout(null);

で。


Java暦がだいたい20日くらいになりました。

Javaは便利だけどなかなか手に馴染みません。

たぶん、クラス階層がうまく脳内に展開されてくれなくて使いたい機能が探し出せないのが悪いんだろうけどさ。

tgbt Java

このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加


Javaがまだまだ手に馴染んでこないので逃避してみるテスト。

7月 15th, 2007

クラスが色々あって色々やってくれるから色々できそうな気分になるけど、いざ組もうとすると使い方がわからなくて何もできないのがJava。

クラスとか何も無くて色々やろうとすると大変だけど、メモリが見えているのでどうにでもなるのがC。


とりあえず直感的に書けるから論理の組み立てをコード化するのは楽だけど、モジュールを知っていないとちっとも生産効率が上がらないのがPythonか?

結局Pythonはほとんど触ってないけど。



とりあえず、Javaカテゴリ作って備忘録を作ろうか。

tgbt Java

このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加