Java 快速参考指南

为了什么而努力达到的目标。

人们会忘记事物。
如果用各种语言写下来,可能会更加显著。
在写之前浏览一下可能会更顺利。

基本数据类型

型説明範囲byte整数8ビット-128~127short整数16ビット-32,768~32,767int整数32ビット-2,147,483,648~2,147,483,647long整数64ビット-9,223,372,036,854,775,808~9,223,372,036,854,775,807charUnicode文字16ビット\u0000~\uFFFFfloat浮動小数点数32ビット(省略)double浮動小数点数64ビット(省略)boolean-true, false

运算符

算数运算符

5 + 2;      // 7 加算
5 - 2;      // 3 減算
5 * 2;      // 10 乗算
5 / 2;      // 2 除算
5 % 2;      // 1 剰余

y = ++x;    // 前置 y = (x += 1);
y = x++;    // 後置 y = x; x = x + 1;

比較運算符

x < y;      // 未満
x <= y;     // 以下
x >= y;     // 以上
x > y;      // 超過
x == y;     // 同値
x != y;     // 同値ではない

布尔运算符

x && y;     // AND
x || y;     // OR
!x;         // NOT

字符串

String str = "文字列";           // 初期化

str.length();                   // 長さ
str.subString(start, end);      // startからend-1の切り取り
str1.eq­ual­s(str2);              // 同値判定
str1.co­mpa­reT­o(str2);           // 比較
// str1 < str2 -> -1
// str1 == str2 -> 0
// str1 > str2 -> 1

char c = str.charAt(i);             // String -> char i番目の文字
char[] cs = str.toCharArray();      // String -> char 全体

数据转换

int i = Intege­r.p­ars­eIn­t(­str);        // int <- String
int i = (int) d;                      // int <- double

double d = Double.pa­rse­Dou­ble­(s­tr);   // double <- String
double d = (double) i;                // double <- int

String s = String.va­lue­Of(­i);         // String <- int
String s = String.va­lue­Of(­d);         // String <- double

数值处理 数学

Math.max(2, 5);     // 5 大きい方
Math.min(2, 5);     // 2 小さい方
Math.abs(-3);       // 3 絶対値

Math.ceil(1.5);     // 2.0 切り上げ
Math.floor(1.5);    // 1.0 切り捨て
Math.round(1.5);    // 2.0 四捨五入 

Math.pow(2, 10);    // 1024 累乗
Math.sqrt(2);       // 1.414… 平方根
Math.log10(1000);   // 3 常用対数

Math.PI             // π 円周率
Math.E              // e 自然対数の底

文本格式化器

也许过一段时间我会写。

控制語句

如果

if ( i > 0 ) {
 ­ ;
} else if ( i < 0 ) {
 ­ ­;
} else {
 ­ ­;
}

对于/对于每一个

for ( int i = 0; i < max; i++ ) {
 ­ ­;
}

for ( var : colle­ction ) {
 ­ ­;
}

当 / 循环

while ( i > 0 ) {
 ­ ­;
}

do {
 ­ ­;
} while ( i > 0 );

转换
交换
变换
切换
改变
转变

switch ( i ) {
 ­ case 0:
 ­ ­ ­ ­;
 ­ ­ ­ ­break;
 ­ case 1:
 ­ ­ ­ ­;
 ­ ­ ­ ­break;
 ­ ­def­ault:
 ­ ­ ­ ­;
}

数组

一维数组

// 初期化
int[] num = new int[10];
Arrays.fill(num, 0);

// ディープコピー deep copy
String[] copySrc = new String[10];  // コピー元
String[] copyDst = new String[10];  // コピー先
copyDst = Arrays.copyOf(copySrc, copySrc.length);

多维数组

// 初期化
int[][] num = new int[10][10];
for (int i = 0; i < num.length; i++) {
    Arrays.fill(num[i], 0);
}

// ディープコピー
String[][] copySrc = new String[10][10];    // コピー元
String[][] copyDst = new String[10][10];    // コピー先
for (int i = 0; i < copySrc.length; i++) {
    copyDst[i] = Arrays.copyOf(copySrc[i], copySrc[i].length);
}

ArrayList 列表

// 初期化
List<String> list = new ArrayList<String>();

// オブジェクトによる操作
list.add(str);      // 追加
list.remove(str);   // 削除
list.indexOf(str);  // インデックス取得
list.contains(str); // 存在チェック

// インデックスによる操作
list.get(i);        // i番目を取得
list.set(i, str);   // i番目を置換

哈希映射 哈希映射

// 初期化
// key -> int
// value -> String
HashMa­p<Integer, St­rin­g> hMap =­ new HashMa­p<Integer, String­>();

hMap.pu­t(­i­, ­str);       // 追加
hMap.ge­t(­i);            // 取得
hMap.co­nta­ins­Key­(i);    // 存在チェック

优先级队列优先度 PriorityQueue

PriorityQueue<Integer> pQueue = new PriorityQueue<Integer>();
pQueue.offer(i);    // 追加
pQueue.peek(i);     // 取得(キューから削除しない)
pQueue.poll(i);     // 取得(キューから削除する)
广告
将在 10 秒后关闭
bannerAds