5
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Javaの型の使い方がわからなくなったときに助けになるサイト集

Last updated at Posted at 2018-05-30

〇〇に変換したい

// Date > String
String s = new SimpleDateFormat("yyyy-MM-dd").format(date); // dateがnullだとNullPointerException
// int > BigInteger
BigInteger b = BigInteger.valueOf(1)
// String > float変換
float f = Float.parseFloat("string");
// String > BigDecimal
BigDecimal bigDecimal = new BigDecimal(string)
// String > Double
try {
    Double.parseDouble(s);
} catch (NumberFormatException e) {
    // sが空文字・スペースの場合
} catch (NullPointerException e) {
    // sがnullの場合
}
// String > int
int i = Integer.parseInt(s);
// int > String
String s = Integer.toString(i);
数値型 大きさ
byte 8ビット整数-128~127
short 16ビット整数-32,768~32,767
int 32ビット整数-2,147,483,648~2,147,483,647
long 64ビット整数-9,223,372,036,854,775,808~9,223,372,036,854,775,807
float 32ビット単精度浮動小数点数
double 64ビット倍精度浮動小数点数
整形したい
// 0埋めしたい
String 整形した文字 = String.format("%03d", 数値);

Object

似ているけど違うObjectのプロパティをコピーしたい

// import org.apache.commons.beanutils.BeanUtils;
// コピー先, コピー元ともにList<>とかダメです。エラーにはならないけれどコピーしてもらえません。
try {
    BeanUtils.copyProperties(コピー先, コピー元);
} catch (IllegalAccessException e) {
    // コピー先かコピー元がnullの場合
} catch (InvocationTargetException e) {
    // プロパティでなんかダメな場合(いつかどこかでちゃんと確認したい)
}

String

~で始まる(終わる)か確認したい。

// ~で終わる場合
if (StringUtils.endsWith({確認したい文字列}, "終わりにある文字")) {
    // ~で終わる場合の処理
}

抜き出したい

抜き出したい
public String substring(int 開始インデックス (この値を含む), int 終了インデックス (この値を含まない))

パディングしたい

パディングしたい
// 半角スペース
String.format("%桁数s", パディングする文字);

置換したい

置換したい
stringBuilder.replace(開始インデックス(この値を含む), 終了インデックス(この値を含まない), 対象文字列)

トリムしたい

全角スペースもトリムしたい
str.trim();
StringUtils.stripStart(str, " ");
StringUtils.stripEnd(str, " ");

比較したい

Stringを比較したい
// equals版
A.equals(B);
// compareTo版:辞書的な並び順で返却値が変わる
String str1 = "1";
String str2 = "2";
String str3 = "3";
str2.compareTo(str3); // -1
str2.compareTo(str2); // 0
str2.compareTo(str1); // 1
str2.compareTo(null); // java.lang.String.compareTo(String anotherString) > anotherString.value.length > NullPointerException

文字列を結合したい

文字列を速く結合したい
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(A);
stringBuilder.append(B);
String s = stringBuilder.toString();

いろいろやりたい

特定文字の出現回数を知りたい
int shutsugenCount = (mojiretsu.length() - mojiretsu.replaceAll(tokuteiMoji, "").length()) / tokuteiMoji.length();
一時パスワードとか用にランダム文字列を生成したい
import org.apache.commons.lang3.RandomStringUtils;
String randamString = RandomStringUtils.random([文字数], [使いたい文字の文字列]);

Date

比較したい

Dateを比較したい(時間も含めて)
A.compareTo(B);
Dateを比較したい(時間は含めない)
Date onlyDateA = clearTime(dateWithTimeA);
Date onlyDateB = clearTime(dateWithTimeB);
onlyDateA.compareTo(onlyDateB);

/**
 * 引数の日時の時刻部分をリセットする.
 * @param dateWinthTime 時間が設定されている日付.
 * @return 時刻部分をリセットした日付.
 */
private Date clearTime(Date dateWinthTime) {
    return new Date(DateUtils.truncate(dateWinthTime, java.util.Calendar.DAY_OF_MONTH).getTime());
}

double

enum

enumのswichってdefaultは不要:question:

結局いまいち理解できないのでenumの中身が増えた場合に備えてdefaultを入れました。

配列的なものの使い方を教えて欲しい

普通の配列

初期化
String hairetsu[] = {"た","と","え", new String()};
// 何も入れられない配列.
String hairetsu[] = new String[0];

List

Map

型の使い方以外のJava

5
8
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?