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。