- 追加された行はこの色です。
- 削除された行はこの色です。
#author("2018-08-28T13:49:53+09:00","ldap:pandora"," pandora")
#author("2018-10-29T15:47:27+09:00","ldap:pandora"," pandora")
[[Java]]
* ''Tips'' [#l529113c]
#contents
* 演算子の優先順位と結合規則 [#g53afe7a]
下記の演算子の優先順で同列にあるものは基本的に左から評価する。~
|優先順位|演算子|結合規則|h
|高い|[ ] . (パラメータのリスト) x++ x--|左|
||++x --x +x ~ !|右|
|↓|new (型)x|右|
|↓|* / %|左|
|↓|+ -|左|
|↓|<< >> >>>|左|
|↓|< > <= >= instanceof|左|
|↓|== !=|左|
|↓|&|左|
|↓|^|左|
|↓|||左|
|↓|&&|左|
|↓||||左|
||? :|右|
|低い|= += -= *= /= %= &= ^= |= <<= >>= >>>=|右|
* コレクション [#e26b5a6b]
- ArrayList
Listクラス(配列のようなもの)リスト処理に必要な様々なメソッドを提供する。
https://docs.oracle.com/javase/jp/7/api/java/util/ArrayList.html
https://docs.oracle.com/javase/jp/7/api/java/util/ArrayList.html
#highlighter(java,number){{
// ライブラリ
import java.util.ArrayList;
import java.util.List;
class TestClass{
public TestClass(){
}
public void mainTest() {
// String型(ジェネリクス)のリストクラスを生成
List<String> list = new ArrayList<String>();
list.add("aa"); // 要素aaを追加
}
}
}}
- HashMap
ハッシュクラス(連想配列のようなもの)リストの中身を一意に取得する場合に使用する。
https://docs.oracle.com/javase/jp/8/docs/api/java/util/HashMap.html
https://docs.oracle.com/javase/jp/8/docs/api/java/util/HashMap.html
#highlighter(java,number){{
// ライブラリ
import java.util.HashMap;
class TestClass{
public TestClass(){
}
public void mainTest() {
// String型キーでString型の値を持つのリストクラスを生成
HashMap<String, String> hashmap = new HashMap<String, String>();
hashmap.put("1page","java"); // キー"1page"に"java"という値を設定
hashmap.get("1page");// "java"という値を取得
}
}
}}
* ファイル操作 [#k81010b1]
- ファイル入力
ファイル場所を指定し、ファイルの読み込み種類事に処理を分けて記載する。
#highlighter(java,number){{
// ライブラリ読み込み
import java.io.File;
import java.io.FileReader;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.BufferedReader;
import java.io.FileInputStream;
// 以下はファイル出力しなければ不要
import java.io.FileOutputStream;
public class ReadFile {
/**
* 1文字づつ読み込む場合
**/
public void 1moji() {
// ファイル操作は何が起こるかわからない為、必ず例外処理を行う。
try {
// ファイルクラスのインスタンス生成 引数にファイルまでのパスを指定
File file = new File("c:¥¥tmp¥¥test.txt");
// ファイルクラスを引数に、ファイル読み込みクラスのインスタンス生成
FileReader filereader = new FileReader(file);
int ch;
//1文字ずつ文字を読み込み
while((ch = filereader.read()) != -1){
System.out.print((char)ch);
}
//ファイルストリームを閉じる(リソースの開放)
filereader.close();
// 以下ファイル入力処理の例外処理
} catch(FileNotFoundException e) {
System.out.println(e);
} catch(IOException e) {
System.out.println(e);
}
}
/**
* 1行づつ文字を読み込む場合
**/
public void 1line() {
// ファイル操作は何が起こるかわからない為、必ず例外処理を行う。
try {
// ファイルクラスのインスタンス生成 引数にファイルまでのパスを指定
File file = new File("c:¥¥tmp¥¥test.txt");
// ファイルクラスを引数に、ファイル読み込みクラスのインスタンス生成
FileReader filereader = new FileReader(file);
// ファイル読み込みクラスを引数に、読み込みバッファクラスのインスタンスを生成
BufferedReader bufferedReader = new BufferedReader(fileReader);
String line;
//1行ずつ文字を読み込み
while ((line = bufferedReader.readLine()) != null) {
System.out.print(line);
}
//ファイルストリームを閉じる(リソースの開放)
filereader.close();
// 以下ファイル入力処理の例外処理
} catch(FileNotFoundException e) {
System.out.println(e);
} catch(IOException e) {
System.out.println(e);
}
}
/**
* 1バイトづつファイルを読み込む場合
**/
public void binaryFile() {
try {
// バイナリファイルの読み込み
FileInputStream fis = new FileInputStream("input.png");
// バイナリファイルの出力ファイル
FileOutputStream fos = new FileOutputStream("output.png");
int c = 0 ;
// 1バイトづつ読み込みコピー
while((c = fis.read()) != -1){
fos.write(c);
}
// リソースの開放
fis.close();
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}}
- ファイル出力
出力するファイル場所を指定し、出力するファイルの種類ごとに処理を分けて記載する。
#highlighter(java,number){{
// ライブラリ読み込み
import java.io.FileWriter;
import java.io.IOException;
import java.io.FileOutputStream;
// 以下はファイル入力しなければ不要
import java.io.FileInputStream;
public class WriteFile {
/**
* 1行づつテキストファイル出力する場合
**/
public void textFile() {
// ファイル操作は何が起こるかわからない為、必ず例外処理を行う。
try {
// ファイルクラスのインスタンス生成 引数にファイルまでのパスを指定
File file = new File("c:¥¥tmp¥¥test.txt");
// ファイルクラスを引数に、ファイル書き込みクラスのインスタンス生成
FileWriter fw = new FileWriter(file);
// ファイル書き込み
fw.write("テスト");
// ファイルを閉じる(リソースの開放)
fw.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
/**
* 1バイトづつファイルを出力する場合
**/
public void binaryFile() {
try {
// バイナリファイルの読み込み
FileInputStream fis = new FileInputStream("input.png");
// バイナリファイルの出力ファイル
FileOutputStream fos = new FileOutputStream("output.png");
int c = 0 ;
// 1バイトづつ読み込みコピー
while((c = fis.read()) != -1){
fos.write(c);
}
// リソースの開放
fis.close();
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
}}
* データベース操作 [#cae2e2c2]
- JDBC(Java Database Connectivity)
OracleやPostgreSQLなどの各データベースに接続する為のパッケージ
#highlighter(java,number){{
// ライブラリ読み込み
import java.sql.DriverManager;
import java.sql.Connection;
public class dbConnect {
/**
* oracle用
**/
public void oracle() {
//Oracle用のJDBCドライバーをロードする
Class.forName("oracle.jdbc.driver.OracleDriver"); //JDBCドライバクラス名
//コネクションを取得する
Connection conn = DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:TESTDB", //URL
"USER01", //ユーザID
"PASSWORD" //パスワード
);
}
/**
* mySQL用
**/
public void mysql() {
//mysql用のJDBCドライバーをロードする
Class.forName("com.mysql.jdbc.Driver").newInstance(); //JDBCドライバクラス名
//コネクションを取得する
Connection conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test", //URL
"USER01", //ユーザID
"PASSWORD" //パスワード
);
}
/**
* PostgreSQL用
**/
public void postgresql() {
//postgresql用のJDBCドライバーをロードする
Class.forName("org.postgresql.Driver"); //JDBCドライバクラス名
//コネクションを取得する
Connection conn = DriverManager.getConnection(
"jdbc:postgresql://localhost:5432/test", //URL
"USER01", //ユーザID
"PASSWORD" //パスワード
);
}
}
}}