java判斷變數類型
『壹』 java中怎麼判斷變數是不是int類型的
首先java中沒有typeof關鍵字,可以通過反射機制來完成,給個思路:
import java.lang.reflect.Field;
public class test {
byte i = 1;
int j = i;
int w ;
/**
* @param args
*/
public static void main(String[] args) {
try {
Field[] a = test.class.getDeclaredFields();
for(int i = 0; i < a.length; i++){
if(a[i].getType().getName().equals("int"))
System.out.println( a[i].getName());
}
if(a[i].getType().getName().equals("byte"))
System.out.println( a[i].getName());
}
} catch (Exception e) {
System.out.println(e.toString());
}
}
}
『貳』 java中怎麼判斷變數是不是int類型的,用typeof報錯
java里沒有typerof ,要用instanceof
基礎類型不行,要用對象
Integer i = 0;
if (i instanceof Integer) {
System.out.println("haha");
}
String str = "abc";
if (str instanceof Object) {
System.out.println("haha");
}
希望能給你幫助。
『叄』 java 判斷數據類型和方法的參數類型相同
1、如果你得到是一個Object對象,可以用if(obj instanceof String)來判斷是否是String對象,int是基本類型不可以這么判斷,只能用它的包裝類Integer,同樣用instanceof 。
2、如果set方法只能接受一個參數,而且必須有int的話,可以寫多個set方法,如set(String),set(int),編寫不同的處理邏輯。
3、instanceof 也是反射的一種方式。
4、如果有2個Object的參數,可以用if(obj1.getClass()==obj2.getClass())來判斷類型是否相同,如果要得到類型名,可以用obj.getClass().getName()來獲得對象的類名。
(3)java判斷變數類型擴展閱讀:
關於java數據類型的分類
Java基本類型共有八種,基本類型可以分為三類,字元類型char,布爾類型boolean以及數值類型byte、short、int、long、float、double。數值類型又可以分為整數類型byte、short、int、long和浮點數類型float、double。
JAVA中的數值類型不存在無符號的,它們的取值范圍是固定的,不會隨著機器硬體環境或者操作系統的改變而改變。實際上,JAVA中還存在另外一種基本類型void,它也有對應的包裝類 java.lang.Void,不過我們無法直接對它們進行操作。
8 中類型表示範圍如下:
byte:8位,最大存儲數據量是255,存放的數據范圍是-128~127之間。
short:16位,最大數據存儲量是65536,數據范圍是-32768~32767之間。
int:32位,最大數據存儲容量是2的32次方減1,數據范圍是負的2的31次方到正的2的31次方減1。
long:64位,最大數據存儲容量是2的64次方減1,數據范圍為負的2的63次方到正的2的63次方減1。
float:32位,數據范圍在3.4e-45~1.4e38,直接賦值時必須在數字後加上f或F。
double:64位,數據范圍在4.9e-324~1.8e308,賦值時可以加d或D也可以不加。
boolean:只有true和false兩個取值。
char:16位,存儲Unicode碼,用單引號賦值。
『肆』 在java中如何判斷一個變數的類型
nextElement()如果此枚舉對象至少還有一個可提供的元素,則返回此枚舉的下一個元素。
利用這兩個函數,利用while循環就可以讀取裡面的元素,當然讀取出來得元素通過強制轉換,就可以和變數進行比較
希望對你有所幫助
『伍』 Java程序 判斷數據類型
instanceof運算符,是用來在運行時指出對象是否是特定類的一個實例版。instanceof通過返回一個布爾值來指權出,這個對象是否是這個特定類或者是它的子類的一個實例。
用法:
result = object instanceof class
而你的代碼:if (!(x instanceof Double)判斷的是一個double基本類型數據是否是一個Double對象,這肯定不行,如果還不清楚,進5044群5871
『陸』 java 判斷數據類型
public class Test {
public static void main(String[] args) {
String[] str = "12 + 4 h".split(" ");
Vector<String> oper = new Vector<String>(Arrays.asList("+", "-", "*", "/"));
for(String s : str) {
if(oper.contians(s)) {
//運算符
continus;
}
try {
Double.parseDouble(s);
//數字
} catch(NumberFormatException e) {
//字元串
}
}
}
}
『柒』 java如何判斷數據類型
此答案為轉載:
給你一個封裝好的方法,只要把excel中的cell放入就會返回對應的值,裡面有類型檢測
public static String getExcelCellValue(HSSFCell cell) {
String ret = "";
// if (HSSFDateUtil.isCellDateFormatted(cell)) {
// Date date = cell.getDateCellValue();
// ret = "" + date.getTime();
// } else
try {
if (cell == null) {
ret = "";
} else if (cell.getCellType() == HSSFCell.CELL_TYPE_STRING) {
ret = cell.getStringCellValue().trim();
} else if (cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) {
ret = "" + cell.getNumericCellValue();
String temp = ret.substring(ret.indexOf(".") + 1, ret.length());
try {
if (Integer.parseInt(temp) == 0) {
ret = ret.substring(0, ret.indexOf("."));
}
} catch (Exception ex) {
}
} else if (cell.getCellType() == HSSFCell.CELL_TYPE_FORMULA) {
ret = cell.getCellFormula();
} else if (cell.getCellType() == HSSFCell.CELL_TYPE_ERROR) {
ret = "" + cell.getErrorCellValue();
} else if (cell.getCellType() == HSSFCell.CELL_TYPE_BOOLEAN) {
ret = "" + cell.getBooleanCellValue();
} else if (cell.getCellType() == HSSFCell.CELL_TYPE_BLANK) {
ret = "";
}
} catch (Exception ex) {
ex.printStackTrace();
ret = "";
}
return ret;
}
『捌』 在java中 如何獲取變數的類型
java中獲取變數的類型制可以使用每個類型的getClass()方法來獲得,示例如下:
classTest
{
publicstaticvoidmain(String[]args)
{
inti=1;//int類型變數
System.out.println(getType(i));//列印變數類型為int
}
publicstaticStringgetType(Objecto){//獲取變數類型方法
returno.getClass().toString();//使用int類型的getClass()方法
}
}
『玖』 Java中如何判斷參數的類型。
可以通過Class的name屬性來查看數據類型,每一個對象都有一個Class,在java中一切皆對象,故能夠通過如下方式來獲取對象的類型:
Datedate=newDate();
System.out.println(date.getClass().getName());//java.util.Date
『拾』 Java中怎麼知道一個變數的類型
復制下面代碼:
class Test{
public static void main(String[] args){
int i=1; //int類型變數
System.out.println(getType(i)); //列印變數類型為int
}
public static String getType(Object o){ //獲取變數類型方法
return o.getClass().toString(); //使用int類型的getClass()方法
}
}
(10)java判斷變數類型擴展閱讀:
java8種基本數據類型 (4種整型+2種浮點型+1種字元型+1種邏輯型)
4種整型:
byte-1 位元組:-128~127 ;
short -2 位元組:-32768~32767 ;
int-4 位元組:-2^31~2^31-1;
long-8 位元組:-2^63~2^63-11234。
2種浮點型
float-4 位元組-32位IEEE 754單精度(有效位數6~7位);
double-8 位元組-64位IEEE 754雙精度(有效位數15位)。
1種字元型
char-2 位元組-整個Unicode字元集。
1種邏輯型
boolean-1 位元組-true或者false。