「Java」instanceof演算子でObject型の変数が型(Integer、Double、String、Character)のインスタンスを判定するサンプル
構文
オブジェクト型の変数 instanceof String
オブジェクト型の変数 instanceof Integer
オブジェクト型の変数 instanceof BigDecimal
オブジェクト型の変数 instanceof Double
オブジェクト型の変数 instanceof Long
Javaコード
package com.arkgame.study.java;
import java.math.BigDecimal;
public class InstanceOfDemo {
public static void main(String[] args) {
// String
Object objA = "AAA";
// long
Object objB = 123l;
// BigDecimal
Object objC = new BigDecimal(123.256);
// Double
Object objD = new Double(12.68);
// Boolean
Object objE = true;
// char
Object objF = 'F';
// Integer
Object objH = 54321;
// call method
System.out.println("変数objAは[ " + getobjType(objA) + " ]です。");
System.out.println("変数objBは[ " + getobjType(objB) + " ]です。");
System.out.println("変数objCは[ " + getobjType(objC) + " ]です。");
System.out.println("変数objDは[ " + getobjType(objD) + " ]です。");
System.out.println("変数objEは[ " + getobjType(objE) + " ]です。");
System.out.println("変数objFは[ " + getobjType(objF) + " ]です。");
System.out.println("変数objHは[ " + getobjType(objH) + " ]です。");
}
// object type judgment
public static String getobjType(Object obj) {
String result = null;
if (obj != null) {
// String
if (obj instanceof String) {
result = "string型";
} else if (obj instanceof Long) { // long
result = "Long型";
} else if (obj instanceof Integer) { // Integer
result = "Integer型";
} else if (obj instanceof BigDecimal) { // BigDecimal
result = "BigDecimal型";
} else if (obj instanceof Double) { // Double
result = "Double型";
} else if (obj instanceof Boolean) { // Boolean
result = "Boolean型";
} else if (obj instanceof Character) {// Character
result = "Character型";
}
}
return result;
}
}
package com.arkgame.study.java;
import java.math.BigDecimal;
public class InstanceOfDemo {
public static void main(String[] args) {
// String
Object objA = "AAA";
// long
Object objB = 123l;
// BigDecimal
Object objC = new BigDecimal(123.256);
// Double
Object objD = new Double(12.68);
// Boolean
Object objE = true;
// char
Object objF = 'F';
// Integer
Object objH = 54321;
// call method
System.out.println("変数objAは[ " + getobjType(objA) + " ]です。");
System.out.println("変数objBは[ " + getobjType(objB) + " ]です。");
System.out.println("変数objCは[ " + getobjType(objC) + " ]です。");
System.out.println("変数objDは[ " + getobjType(objD) + " ]です。");
System.out.println("変数objEは[ " + getobjType(objE) + " ]です。");
System.out.println("変数objFは[ " + getobjType(objF) + " ]です。");
System.out.println("変数objHは[ " + getobjType(objH) + " ]です。");
}
// object type judgment
public static String getobjType(Object obj) {
String result = null;
if (obj != null) {
// String
if (obj instanceof String) {
result = "string型";
} else if (obj instanceof Long) { // long
result = "Long型";
} else if (obj instanceof Integer) { // Integer
result = "Integer型";
} else if (obj instanceof BigDecimal) { // BigDecimal
result = "BigDecimal型";
} else if (obj instanceof Double) { // Double
result = "Double型";
} else if (obj instanceof Boolean) { // Boolean
result = "Boolean型";
} else if (obj instanceof Character) {// Character
result = "Character型";
}
}
return result;
}
}
package com.arkgame.study.java; import java.math.BigDecimal; public class InstanceOfDemo { public static void main(String[] args) { // String Object objA = "AAA"; // long Object objB = 123l; // BigDecimal Object objC = new BigDecimal(123.256); // Double Object objD = new Double(12.68); // Boolean Object objE = true; // char Object objF = 'F'; // Integer Object objH = 54321; // call method System.out.println("変数objAは[ " + getobjType(objA) + " ]です。"); System.out.println("変数objBは[ " + getobjType(objB) + " ]です。"); System.out.println("変数objCは[ " + getobjType(objC) + " ]です。"); System.out.println("変数objDは[ " + getobjType(objD) + " ]です。"); System.out.println("変数objEは[ " + getobjType(objE) + " ]です。"); System.out.println("変数objFは[ " + getobjType(objF) + " ]です。"); System.out.println("変数objHは[ " + getobjType(objH) + " ]です。"); } // object type judgment public static String getobjType(Object obj) { String result = null; if (obj != null) { // String if (obj instanceof String) { result = "string型"; } else if (obj instanceof Long) { // long result = "Long型"; } else if (obj instanceof Integer) { // Integer result = "Integer型"; } else if (obj instanceof BigDecimal) { // BigDecimal result = "BigDecimal型"; } else if (obj instanceof Double) { // Double result = "Double型"; } else if (obj instanceof Boolean) { // Boolean result = "Boolean型"; } else if (obj instanceof Character) {// Character result = "Character型"; } } return result; } }
実行結果
変数objAは[ string型 ]です。
変数objBは[ Long型 ]です。
変数objCは[ BigDecimal型 ]です。
変数objDは[ Double型 ]です。
変数objEは[ Boolean型 ]です。
変数objFは[ Character型 ]です。
変数objHは[ Integer型 ]です。