Javaに投稿されたコード一覧

Java 夢の中で逢った、ような・・・・・・

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class あああ extends Activity{
	Button あああ;

	public void onCreate(Bundle savedInstanceState){
		super.onCreate(savedInstanceState){
		あああ = new Button(this);
		あああ.setText("あああ");
		setContentView(あああ);
		}
	}
}

Java loadB

// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3)
// Source File Name:   loadB.java

import processing.core.PApplet;

public class loadB extends PApplet
{

    public loadB()
    {
        LINE_NUMBER = 5;
        file = loadStrings("file.csv");
        data = new String[file.length][LINE_NUMBER];
    }

    public void a()
    {
        if(file == null)
        {
            println("File is not found.");
            exit();
        } else
        if(file.length == 0)
        {
            println("File is empty.");
            exit();
        }
        for(int i = 0; i < file.length; i++)
        {
            String as[] = split(file[i], ",");
            for(int l = 0; l < as.length; l++)
                data[i][l] = as[l];

        }

        for(int j = 0; j < file.length; j++)
        {
            for(int k = 0; k < LINE_NUMBER; k++)
                print((new StringBuilder(" ")).append(data[j][k]).toString());

            println();
        }

    }

    public static void main(String args[])
    {
        PApplet.main(new String[] {
            "--bgcolor=#F0F0F0", "loadB"
        });
    }

    int LINE_NUMBER;
    String file[];
    String data[][];
}

Java loadA

// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3)
// Source File Name:   loadA.java

import processing.core.PApplet;

public class loadA extends PApplet
{

    public loadA()
    {
    }

    public void setup()
    {
        byte byte0 = 5;
        String as[] = loadStrings("file.csv");
        String as1[][] = new String[as.length][byte0];
        if(as == null)
        {
            println("File is not found.");
            exit();
        } else
        if(as.length == 0)
        {
            println("File is empty.");
            exit();
        }
        for(int i = 0; i < as.length; i++)
        {
            String as2[] = split(as[i], ",");
            for(int l = 0; l < as2.length; l++)
                as1[i][l] = as2[l];

        }

        for(int j = 0; j < as.length; j++)
        {
            for(int k = 0; k < byte0; k++)
                print((new StringBuilder(" ")).append(as1[j][k]).toString());

            println();
        }

        noLoop();
    }

    public static void main(String args[])
    {
        PApplet.main(new String[] {
            "--bgcolor=#F0F0F0", "loadA"
        });
    }
}

Java 【Java】NTTドコモ FOMA iアプリ版 日蒙簡易辞書

package net.hinekure.ijmdic;

import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;

import javax.microedition.io.Connector;

import com.nttdocomo.ui.Button;
import com.nttdocomo.ui.Component;
import com.nttdocomo.ui.ComponentListener;
import com.nttdocomo.ui.Display;
import com.nttdocomo.ui.IApplication;
import com.nttdocomo.ui.Label;
import com.nttdocomo.ui.Panel;
import com.nttdocomo.ui.TextBox;

public class Launcher extends IApplication {

	public void start() {
		TxtPanel myPanel;
		myPanel = new TxtPanel();
		Display.setCurrent(myPanel);
	}

}

class TxtPanel extends Panel {
	Label lblLabel;
	TextBox txtBox;
	Button btn;
	Label lblLabel2;
	TextBox txtBox2;

	// コンストラクタ
	TxtPanel() {
		lblLabel = new Label("日蒙簡易辞書 Ver 1.00");
		lblLabel.setSize(240, 14);
		// テキストボックスのインスタンス生成
		txtBox = new TextBox("", 100, 1, TextBox.DISPLAY_ANY);
		txtBox2 = new TextBox("", 100, 10, TextBox.DISPLAY_ANY);
		// txtBox2.setEditable(false);
		btn = new Button("検索");
		btn.setSize(240, 20);
		lblLabel2 = new Label("");
		lblLabel2.setSize(240, 12);
		// コンポーネントの貼り付け
		this.add(lblLabel);
		this.add(txtBox);
		this.add(btn);
		this.add(lblLabel2);
		this.add(txtBox2);
		// コンポーネントリスナーの設定
		this.setComponentListener(new ListenerObj(lblLabel2, txtBox, txtBox2,
				btn));
	}
}

class ListenerObj implements ComponentListener {
	private Label myLbl;
	private TextBox myTxt;
	private TextBox myTxt2;
	private Button myBtn;

	public ListenerObj(Label receLbl, TextBox recetxt, TextBox recetxt2,
			Button receBtl) {
		myLbl = receLbl;
		myTxt = recetxt;
		myTxt2 = recetxt2;
		myBtn = receBtl;
	}

	public void componentAction(Component c, int type, int param) {
		if ((c == myBtn) && (type == BUTTON_PRESSED)) {
			Search();
		}
	}

	private void Search() {
		InputStream is = null;
		com.nttdocomo.io.BufferedReader br = null;
		String out = null;
		out = "";
		String str;
		int result_num = 0;
		String keywords;
		keywords = myTxt.getText();
		myLbl.setText("");
		try {
			try {
				is = Connector.openInputStream("resource:///jmdic_sjis.txt");
				br = new com.nttdocomo.io.BufferedReader(new InputStreamReader(
						is));
				str = br.readLine();

				while ((str = br.readLine()) != null) {
					// キーワードに一致 もしくは 空欄の場合
					if ((str.indexOf(keywords) != -1) || (keywords == "")) {
						out += str + "\n";
						result_num++;
						myLbl.setText("" + result_num + "件見つけました!");
					}
				}

			} finally {
				if (br != null)
					br.close();
			}

			if (result_num == 0) {
				out = "検索ヒント:\n別の言い回しで検索すると出る場合があります。\n漢字をひらがなにしたり単漢字で検索しても出る可能性があります。";
			}
		} catch (IOException e) {
			out = "読み込みが失敗しました...";
		}

		myTxt2.setText(out);
	}

}

Java 【Java】Android版 日蒙簡易辞書

package net.hinekure.jmdic;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;

import android.app.Activity;
import android.content.Context;
import android.content.res.Resources;
import android.os.Bundle;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.TextView.OnEditorActionListener;
import android.text.ClipboardManager;
import android.text.SpannableStringBuilder;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.inputmethod.InputMethodManager;

public class JMDictionary extends Activity {
	/** Called when the activity is first created. */

	private Button button_ok;
	private Button button_cls;
	private EditText text;
	private TextView info;
	private ListView list;
	private Button_OK btok;
	private Button_CLS btcls;
	private ArrayAdapter<String> adapter;

	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		// 各種コンポーネント
		button_ok = (Button) this.findViewById(R.id.button1);
		button_cls = (Button) this.findViewById(R.id.button2);
		text = (EditText) this.findViewById(R.id.editText1);
		info = (TextView) this.findViewById(R.id.textView1);
		list = (ListView) this.findViewById(R.id.listView1);

		text.setOnEditorActionListener(new OnEditorActionListener() {
			@Override
			public boolean onEditorAction(TextView v, int actionId,
					KeyEvent event) {
				if (actionId == v.getImeOptions()) {
					// ENTERされたとき消す
					clsIME(v);
				}
				return true;
			}
		});

		// クリック時
		list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
			@Override
			public void onItemClick(AdapterView<?> parent, View view,
					int position, long id) {
				clsIME(view);
			}
		});

		// リストビューのアイテムがクリックされた時に呼び出されるコールバックリスナーを登録します
		list.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
			@Override
			public boolean onItemLongClick(AdapterView<?> parent, View view,
					int position, long id) {
				ListView listView = (ListView) parent;
				// クリックされたアイテムを取得します
				String item = (String) listView.getItemAtPosition(position);
				ClipboardManager cm = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
				// 文字列のコピー
				cm.setText(item);
				return true;
			}
		});

		btok = new Button_OK();
		button_ok.setOnClickListener(btok);
		btcls = new Button_CLS();
		button_cls.setOnClickListener(btcls);

		adapter = new ArrayAdapter<String>(this,
				android.R.layout.simple_list_item_1);
		list.setAdapter(adapter);

		clsList();

	}

	private void clsIME(View v) {
		InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
		imm.hideSoftInputFromWindow(v.getWindowToken(), 0);
	}

	private void clsList() {
		adapter.add("日蒙簡易辞書 Ver 1.00");
		adapter.add("ヒント:項目長押しで文字列をクリップボードにコピーします");
		adapter.add("開発:hinekure_inovia\nhttp://twitter.com/hinekure_inovia/");
		adapter.add("辞書データ参考元:");
		adapter.add("モンゴル語実践会話入門 東京外国語大学 アジア・アフリカ言語文化研究所\nhttp://www.aa.tufs.ac.jp/documents/training/ilc/textbooks/2008mongolian.pdf");
		adapter.add("モンゴル 南ゴビ生活:あいさつ\nhttp://nagano53.ojaru.jp/sonota/aisatsu.htm");
	}

	// OKボタン
	private class Button_OK implements OnClickListener {

		@Override
		public void onClick(View v) {
			// TODO 自動生成されたメソッド・スタブ
			InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
			imm.hideSoftInputFromWindow(v.getWindowToken(), 0);

			adapter.clear();

			// 検索するとこーーー
			SpannableStringBuilder ssb = (SpannableStringBuilder) text
					.getText();
			String keywords;
			keywords = ssb.toString();
			Resources res = v.getResources();
			InputStream is = null;
			BufferedReader br = null;

			int result_num = 0;
			try {
				try {
					is = res.openRawResource(R.raw.jmdic);
					br = new BufferedReader(new InputStreamReader(is));
					String str;

					while ((str = br.readLine()) != null) {
						// キーワードに一致 もしくは 空欄の場合
						if ((str.indexOf(keywords) != -1) || (keywords == "")) {
							adapter.add(str);
							result_num++;
						}
					}
					info.setText("" + result_num + "件見つけました!");
				} finally {
					if (br != null)
						br.close();
				}

				if (result_num == 0) {
					adapter.add("検索ヒント:\n別の言い回しで検索すると出る場合があります。\n漢字をひらがなにしたり単漢字で検索しても出る可能性があります。");
				}
			} catch (IOException e) {
				info.setText("読み込みが失敗しました...");
			}

		}

	}

	// clearボタン
	private class Button_CLS implements OnClickListener {

		@Override
		public void onClick(View v) {
			// TODO 自動生成されたメソッド・スタブ
			adapter.clear();
			clsList();
			text.setText("");
			info.setText("キーワードを入力してください!");

		}

	}

}

Java 部分和問題

/**
 * ある数列の中から、幾つかのの項を選んで所望の合計になるかどうか判定する。
 * @author tatesuke
 */
public class 部分和問題 {

	public static void main(String[] args) {
		int[] 数列 = {1, 4, 3, 2, 5};
		int 合計 = 13;

		System.out.println(new 部分和Solver(数列, 合計).solve());
	}

	private static class 部分和Solver {

		final int[] 数列;
		final int 合計;

		部分和Solver(int[] 数列, int 合計) {
			this.数列 = 数列;
			this.合計 = 合計;
		}

		boolean solve() {
			return solve(0, 0);
		}

		private boolean solve(int i, int sum) {
			if (sum == 合計) {
				return true;
			}
			if (i == 数列.length) {
				return false;
			}
			if (solve(i + 1, sum)) {
				return true;
			}
			return solve(i + 1, sum + 数列[i]);
		}

	}
}

Java Processing で 1次元セルオートマトン?

//1次元セルオートマトン? あってるかどうかはわかりまっせん

int NUM = 100; //細胞数

int [] cell = new int[NUM];//細胞が生きているかどうかのフラグ 0:死 1:生

int Rsize = 5;//四角形のサイズ

int right=0, left=0;//セルの右左の配列の添字を入れる変数

int size = 0;

void setup() {

  size(500, 1000);
  smooth();
  background(255);

  for (int i=0; i<NUM; i++) {//細胞のフラグを初期化する

    //randomの帰り値はfloatなのでキャスト 0 - 2 の乱数を発生させ intにキャストすると 0 か 1 という値が入るので初期化できる
    cell[i] = int(random(0, 2));
  }
}

void draw() {

  drawCells(cell, size);//細胞を描画する

  for (int i=0; i<NUM; i++) {//ここから配列の処理

    //配列の添字関係の処理
    //変数 leftは現在のセルの左の配列 つまり i - 1 変数rightは現在のセルの右の配列 つまり i + 1でアクセスできる
    if (i == 0) {//配列が左端の場合,最後の配列とを参照することで配列が円状になっているようにする
      left = NUM - 1;
      right = i + 1;
    }

    else if (i == 99) {//配列が右端まで来た場合、最初の配列要素を参照する elseをつけないとダメ
      left = i - 1;
      right = 0;
    }

    else {//それ以外の場合 上でelseを付けないと i = 0のとき 0 - 1 で -1の添字ができてしまう
      left = i - 1;
      right = i + 1;
      println("配列添え字"+"["+left+"]");
    }
    //配列の添字処理修了

    //現在のセルが死んでいる場合の処理
    if (cell[i] == 0) {

      deadecell(i);
    }//現在のセルが死んでいる場合の処理修了

    if (cell[i] == 1) {//現在のセルが生きている場合の処理 条件は玲のごとくもっとスマートに書けると思われ

      alivecell(i);
    }

  }
  size = size + 5;//細胞の描画開始位置を 1段下へする
}

void drawCells(int[] cells, int size) {//セルを生死フラグを元に描画する関数 引数は生死フラグが入った配列 sizeは細胞を描画するy軸を決める

  for (int i=0; i<NUM; i++) {//細胞の生死フラグを元に四角形を描画する
    fill(0);//細胞の色 黒

    if (cells[i] == 0) {//死んでいるなら白くする

      fill(255);
    }

    //細胞を描画する
    rect(i*5, size, Rsize, Rsize);
  }
}

void deadecell(int i) {//セルが死んでいる時の判定を行う関数 iはforループ時の変数

  if (cell[left] == 1 && cell[right] == 1) {//両隣とも生きている場合 過密 なのでセルは死んだまま

    cell[i] = 0;
  }
  else if (cell[left] == 1 && cell[right] == 0 || cell[left] == 0 && cell[right] == 1) {//右左どちらかが生きている場合は 誕生する

    cell[i] = 1;
  }

  else if (cell[left] == 0 && cell[right] == 0) {//両隣とも死んでいる場合 過疎 なので セルは死んだまま

    cell[i] = 0;
  }
}

void alivecell(int i) {//セルが生きている場合の判定を行う関数 iはforループ時の変数

  if (cell[left] == 1 && cell[right] == 1) {//両隣のセルが生きていると過密なので セルは死ぬ

    cell[i] = 0;
  }

  else if (cell[left] == 1 && cell[right] == 0 ) {//左のセルが生きている場合 セルは死ぬ

    cell[i] = 0;
  }

  else if (cell[right] == 1 && cell[left] == 0) {//右のセルが生きている場合 セルは生き続ける

    cell[i] = 1;
  }

  else if (cell[left] == 0 && cell[right] == 0) {//両隣のセルが死んでいる場合でも セルは生き続ける

    cell[i] = 1;
  }
}//修了

Java 平方根(Math.sqrtを使わない)

/**
 *
 */
package net.hinekure.test;

import javax.swing.SwingUtilities;
import java.awt.BorderLayout;
import javax.swing.JPanel;
import javax.swing.JFrame;
import java.awt.Dimension;
import javax.swing.JLabel;
import java.awt.Rectangle;
import javax.swing.JButton;
import javax.swing.JTextField;

/**
 * @author ****
 *
 */
public class SampleProj_20120617 extends JFrame {

	private static final long serialVersionUID = 1L;
	private JPanel jContentPane = null;
	private JLabel jLabel_1 = null;
	private JLabel jLabel_2 = null;
	private JLabel jLabel_3 = null;
	private JButton jButton_1 = null;
	private JTextField jTextField_1 = null;
	private JTextField jTextField_2 = null;
	private JTextField jTextField_3 = null;

	/**
	 * This method initializes jButton_1
	 *
	 * @return javax.swing.JButton
	 */
	private JButton getJButton_1() {
		if (jButton_1 == null) {
			jButton_1 = new JButton();
			jButton_1.setBounds(new Rectangle(226, 119, 191, 90));
			jButton_1.setText("計算開始");
			jButton_1.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					double a = Double.parseDouble(jTextField_1.getText());
					double epslion = Double.parseDouble(jTextField_2.getText());
					keisan_sqrt(a, epslion);
				}
			});
		}
		return jButton_1;
	}

	/**
	 * This method initializes jTextField_1
	 *
	 * @return javax.swing.JTextField
	 */
	private JTextField getJTextField_1() {
		if (jTextField_1 == null) {
			jTextField_1 = new JTextField();
			jTextField_1.setBounds(new Rectangle(14, 57, 192, 48));
		}
		return jTextField_1;
	}

	/**
	 * This method initializes jTextField_2
	 *
	 * @return javax.swing.JTextField
	 */
	private JTextField getJTextField_2() {
		if (jTextField_2 == null) {
			jTextField_2 = new JTextField();
			jTextField_2.setBounds(new Rectangle(225, 59, 193, 46));
		}
		return jTextField_2;
	}

	/**
	 * This method initializes jTextField_3
	 *
	 * @return javax.swing.JTextField
	 */
	private JTextField getJTextField_3() {
		if (jTextField_3 == null) {
			jTextField_3 = new JTextField();
			jTextField_3.setBounds(new Rectangle(14, 165, 188, 46));
		}
		return jTextField_3;
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				SampleProj_20120617 thisClass = new SampleProj_20120617();
				thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
				thisClass.setVisible(true);
			}
		});
	}

	/**
	 * This is the default constructor
	 */
	public SampleProj_20120617() {
		super();
		initialize();
	}

	/**
	 * This method initializes this
	 *
	 * @return void
	 */
	private void initialize() {
		this.setSize(460, 282);
		this.setContentPane(getJContentPane());
		this.setTitle("平方根の計算");
	}

	/**
	 * This method initializes jContentPane
	 *
	 * @return javax.swing.JPanel
	 */
	private JPanel getJContentPane() {
		if (jContentPane == null) {
			jLabel_3 = new JLabel();
			jLabel_3.setBounds(new Rectangle(16, 120, 189, 27));
			jLabel_3.setText("score root of a = ");
			jLabel_2 = new JLabel();
			jLabel_2.setBounds(new Rectangle(225, 16, 195, 29));
			jLabel_2.setText("epslion = ");
			jLabel_1 = new JLabel();
			jLabel_1.setBounds(new Rectangle(15, 16, 192, 29));
			jLabel_1.setText("a = ");
			jContentPane = new JPanel();
			jContentPane.setLayout(null);
			jContentPane.add(jLabel_1, null);
			jContentPane.add(jLabel_2, null);
			jContentPane.add(jLabel_3, null);
			jContentPane.add(getJButton_1(), null);
			jContentPane.add(getJTextField_1(), null);
			jContentPane.add(getJTextField_2(), null);
			jContentPane.add(getJTextField_3(), null);
		}
		return jContentPane;
	}
	public double keisan_sqrt(double aa, double eepsilon){
		boolean flg = false;
		double x0 = aa;
		double x1 = (x0+(aa/x0))/2;
		double error = Math.abs((x1-x0)/x0);
		if (aa <= 0){
			if (aa < 0){
				flg = true;
			}else{
				jTextField_3.setText(Double.toString(aa));
			}
		}else{
			while (error >= eepsilon){
				x0 = x1;
				if (Math.abs(x0) <= 0){
					flg = true;
					break;
				}
				x1 = (x0+(aa/x0))/2;
				error = Math.abs((x1-x0)/0);
			}
		}
		if (flg){
			jTextField_3.setText("平方根がありません");
		}else{
			jTextField_3.setText(Double.toString(x0));
		}
		return x0;
	}
}  //  @jve:decl-index=0:visual-constraint="10,10"

Java AndroidのHTTP通信でBasic認証

DefaultHttpClient httpClient = new DefaultHttpClient();

// Basic認証で行かなきゃならない所のリクエスト生成。
StringBuilder uri = new StringBuilder("http://maroyaka.com/auth_dir/hoge.txt");
HttpGet request = new HttpGet(uri.toString());

// 認証するUserとPW
UsernamePasswordCredentials credentials = new UsernamePasswordCredentials("userName","passWord");
AuthScope scope = new AuthScope(request.getURI().getHost(), request.getURI().getPort());
httpClient.getCredentialsProvider().setCredentials(scope, credentials);

HttpResponse httpResponse = null;
try {
    httpResponse = httpClient.execute(request);

    // ステータスコードを取得
    int statusCode = httpResponse.getStatusLine().getStatusCode();
    System.out.println("--------------------------------statusCode = " + statusCode);

    // レスポンスを取得
    HttpEntity entity = httpResponse.getEntity();
    String response = EntityUtils.toString(entity);
    // リソースを解放
    entity.consumeContent();
    // クライアントを終了させる
    httpClient.getConnectionManager().shutdown();
    // 後はステータスコードやレスポンスを煮るなり焼くなり

    System.out.println("--------------------------------response= " + response);

} catch (Exception e) {
	e.printStackTrace();
}

Java プログラマの日常

	// 自分のタスクを生成。
	new MyHandler().post(new Runnable() {
		public void run() {
			// 自身が死亡するまでハンドラは処理を継続します。
			while(!dead) {
				// 曜日別タスク(いずれできる事が増えるかもしれないので念のため分けておきます。)
				switch (week) {
				case MON:
				case TUE:
				case WED:
				case THU:
				case FRI:
					// 月〜金は会社へ行きます。
					// ※祝日なら実行しない処理でしたが仕様変更で祝日は考慮しないようになりました。
					procWork();
					break;
				case SAT:
				case SUN:
					// 状況をチェックし、強制労働のステータスでない場合は彼女とデートができます。
					if (!isForceWork()) {
						procSweetTime();
						continue;
					}					

					// 休日出勤の場合のみ例外が投げられる事がある。
					// ※本来procWork()は土日に呼ばれるべきではないのでここでTry〜chatchしてますが
					//  頻繁に呼ばれるようであればwhile文そのものをTry〜chatchで囲んでください(そのほうが高速)
					try {
						procWork();

					// 彼女との約束を破ってしまった例外
					} catch (PromissBrokenException e) {
						// 謝る。
						gomeNasai();
					} finally {
						// 例外が発生しなくても一応謝っておく。
						// ※例外発生時は2回謝ることになるが念のため。
						gomenNasai();
					}
				}
			}
		}
	});
Total Pages: 3 / 111234510...最後 »

よく投稿されているコード

タグ

最近投稿されたコード