⑴ 关于java判断char、String、int、double型是否相等的问题
char,double都用==来判断,因为char有一个整数与之对应,比较的时候其实就是比较对应的整数,int类型要高于char类型,可以直接将char类型直接赋给int类型,然后输出值自己看一下就明白了!
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
char c = 'a';
int ic = c;
System.out.println(c+ "\t" +ic);
}
}
⑵ JAVA比较两个字符串是否相等用什么
String str1="abc";
String str2=“bcd";
if(str1.equals(str2)){
system.out.println("str1和str2相等”);
}
用的是专equals()方法属
⑶ 怎么比较两个枚举类型是否相等
如果是引用数据类型,那么就是判断两个对象在内存中的地址是否相等;如果是基本数据类型,那就是判断两个值是否相等 equals:判断两个对面的值字符串是否相等 对面枚举来说,使用equals和==是一样的。
写一个main方法来测试比较:
public class Test {
public static void main(String[] args) {
Language enumObj = Language.JAVA;
if (enumObj == Language.JAVA) {
System.out.println("Welcome Java");
} else if (enumObj == Language.NET) {
System.out.println("Welcome .Net");
} else if (enumObj == Language.NODE) {
System.out.println("Welcome Node JS");
} else if (enumObj == Language.PYTHON) {
System.out.println("Welcome Python");
} else if (enumObj == Language.RUBY) {
System.out.println("Welcome Ruby");
} else {
System.out.println("Hello World");
}
}
}
结果输出:
Welcome Java
(3)java判断类型相同扩展阅读:
枚举类型放在窗体模块、标准模块或共用模块中的声明部分,通过enum语句来定义。
格式:[public|private] enum name
membername[=constantexpression]
membername[=constantexpression]
(maomi)
…..
End enum
public:表示该枚举类型在整个工程中都是可见的(缺省的)
private:表示枚举类型只在所声明的模块中是可见的。Name: 枚举类型的名称。必须是一个合法的VB标识符,在定义该枚举类型的变量或参数时用该名称来指定类型.
⑷ 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()来获得对象的类名。
关于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码,用单引号赋值。