public class Type {
public static void main(String[] args) {
String s1 = "abc";
String s2 = "abc";
System.out.println(s1 == s2);
System.out.println(s1.equals(s2));
String s3 = "a1";
String s4 = "a2";
System.out.println(s3 == s4);
System.out.println(s3.equals(s4));
Integer i1 = 11;
Integer i2 = 11;
System.out.println(i1 == i2);
System.out.println(i1.equals(i2));
Character c1 = '0';
Character c2 = '0';
System.out.println(c1 == c2);
System.out.println(c1.equals(c2));
Byte b1 = 121;
Byte b2 = 121;
System.out.println(b1 == b2);
System.out.println(c1.equals(c2));
Float f1 = 1.12f;
Float f2 = 1.12f;
System.out.println(f1 == f2);
System.out.println(f1.equals(f2));
Double d1 = 11.2345d;
Double d2 = 11.2345d;
System.out.println(d1 == d2);
System.out.println(d1.equals(d2));
Long l1 = 22L;
Long l2 = 22L;
System.out.println(l1 == l2);
System.out.println(l1.equals(l2));
BigInteger bi1 = new BigInteger("333");
BigInteger bi2 = new BigInteger("333");
System.out.println(bi1 == bi2);
System.out.println(bi1.equals(bi2));
BigDecimal bd1 = new BigDecimal("12.0");
BigDecimal bd2 = new BigDecimal("12.0");
System.out.println(bd1 == bd2);
System.out.println(bd1.equals(bd2));
BigDecimal bd3 = new BigDecimal("3.0");
BigDecimal bd4 = bd1.divide(bd3, RoundingMode.CEILING);
System.out.println(bd4);
BigDecimal bd5 = new BigDecimal("3.30");
BigDecimal bd6 = bd1.divide(bd5, RoundingMode.CEILING);
System.out.println(bd6);
BigDecimal bd7 = new BigDecimal("3.30");
BigDecimal bd8 = bd1.divide(bd7, RoundingMode.FLOOR);
System.out.println(bd8);
BigDecimal bd9 = new BigDecimal("3.30");
BigDecimal bd10 = bd1.divide(bd9, 2, RoundingMode.FLOOR);
System.out.println(bd10);
BigDecimal bd11 = new BigDecimal("3.30");
BigDecimal bd12 = bd1.divide(bd11, 2, RoundingMode.CEILING);
System.out.println(bd12);
BigDecimal bd13 = new BigDecimal("3.30");
BigDecimal bd14 = bd1.divide(bd13, 2, RoundingMode.HALF_UP);
System.out.println(bd14);
BigDecimal bd15 = new BigDecimal(-1);
BigDecimal bd16 = new BigDecimal(1);
System.out.println(bd15.add(bd16));
BigDecimal bd17 = new BigDecimal(-1);
BigDecimal bd18 = new BigDecimal(1);
System.out.println(bd17.multiply(bd18));
BigDecimal bd19 = new BigDecimal(-1);
BigDecimal bd20 = new BigDecimal(1);
System.out.println(bd19.subtract(bd20));
BigDecimal bd21 = new BigDecimal(Integer.MAX_VALUE);
BigDecimal bd22 = new BigDecimal(1);
System.out.println(bd21.subtract(bd22));
BigDecimal bd23 = new BigDecimal(Long.MAX_VALUE);
BigDecimal bd24 = new BigDecimal(1);
System.out.println(bd23.subtract(bd24));
BigDecimal bd25 = new BigDecimal(Long.MAX_VALUE);
BigDecimal bd26 = new BigDecimal(Long.MAX_VALUE);
System.out.println(bd25.subtract(bd26));
BigDecimal bd27 = new BigDecimal(Long.MIN_VALUE);
BigDecimal bd28 = new BigDecimal(Long.MIN_VALUE);
System.out.println(bd27.subtract(bd28));
BigDecimal bd29 = new BigDecimal(Long.MAX_VALUE);
BigDecimal bd30 = new BigDecimal(Long.MAX_VALUE);
System.out.println(bd29.multiply(bd30));
BigDecimal bd31 = new BigDecimal(Long.MIN_VALUE);
BigDecimal bd32 = new BigDecimal(Long.MAX_VALUE);
System.out.println(bd31.subtract(bd32));
User u1 = new User("a");
User u2 = new User("a");
System.out.println(u1 == u2);
System.out.println(u1.equals(u2));
}
}
class User {
private String name;
public User(String name){
this.name = name;
}
public String getName() {
return name;
}
@Override
public boolean equals(Object obj) {
User u = (User)obj;
boolean b = false;
if(u.getName().equals(this.name)){
b=true;
}
return b;
}
}
相关推荐
Java 中的基本类型和引用类型变量的区别 Java 中的基本类型和引用类型变量是两个不同的概念,它们在内存分配、变量赋值和函数传递等方面有着本质的区别。 基本类型是 Java 中的八种基本类型,包括 byte、short、...
1. **基本数据类型与引用类型** - Java的基本数据类型包括布尔型`boolean`、字节型`byte`、短整型`short`、整型`int`、长整型`long`、字符型`char`、浮点型`float`和双精度浮点型`double`。这些类型占据固定大小的...
在Java编程语言中,...这涉及到对Java基本类型、复杂类型以及自定义对象的映射,还包括对数据库NULL值的处理、对象关系映射以及工具的使用策略。熟悉这些知识,可以帮助开发者更高效地利用Hibernate进行数据持久化。
通过具体实例,我们将揭示值类型与引用类型之间的差异,并解释在实际编程过程中可能遇到的一些常见困惑。 #### 二、Java的数据类型 Java语言支持两种主要的数据类型:**值类型**和**引用类型**。值类型主要包括基本...
5. 数据类型与变量 - 变量是存储数据的容器,每个变量都有特定的数据类型,变量声明时需指定其数据类型。 - 声明变量:如int num; 或 String name; 6. 思维导图的作用 - 思维导图是一种有效的学习工具,能帮助...
#### Java基本类型 Java中的基本类型共有八种,它们分别为: 1. **整型**: - `byte`:占用1字节,范围是-128到127。 - `short`:占用2字节,范围是-32768到32767。 - `int`:默认整型,占用4字节,范围是-...
根据给定文件内容,这里涉及的知识点涵盖了Java面试中的多个方面,包括但不限于JDK与JRE的区别、Java基本类型与引用类型中"=="和"equals"方法的区别与实现原理等。下面将详细展开这些知识点。 ### JDK与JRE的区别 ...
### Java基本类型数据 #### 一、概述 Java是一种广泛使用的面向对象的编程语言,它在设计时就考虑到了安全性、可移植性和易用性。Java语言中的数据类型分为两大类:基本数据类型(primitive data types)和引用...
以下是对Java基本数据类型的简要概述: 基本数据类型直接存储数据,不存储引用。 每种类型有固定的内存大小和取值范围。 它们具有默认值,未初始化时自动赋予。 自动类型转换(宽化转换):从范围小的类型到范围大的...
Java 基本数据类型与数组 Java 中的基本数据类型是指在 Java 中可以使用的最基本的数据类型,包括布尔型、字符型、整数型、浮点型等八种基本数据类型。这些基本数据类型是 Java 语言的基础,理解它们对于学习 Java ...
### Java基本数据类型详解 #### 一、Java数据类型概述 在Java中,数据类型是程序设计的基础之一,用于定义变量能存储何种类型的数据。Java是一种强类型语言,这意味着所有变量都必须先声明其类型才能使用。Java中...
数据类型与引用数据类型在内存结构上的主要区别在于它们存储方式和内存分配的不同。在Java中,数据类型分为两种:基本数据类型(如int、char、boolean等)和引用数据类型(如对象、数组等)。 一、基本数据类型 ...
Java是一种广泛使用的编程语言,其数据类型系统中包含基本数据类型和引用类型两大类。基本数据类型变量存储的是数据本身,而引用类型变量存储的是指向数据的空间地址。本资料针对Java期末复习,深入讲解了基本数据...
### Java基本类型封装详解 #### 一、基本概念与背景 在Java中,存在两种数据类型:基本数据类型和引用数据类型。基本数据类型包括`byte`、`short`、`int`、`long`、`float`、`double`、`char`以及`boolean`。这些...
虽然`String`是引用类型,但由于它的不可变性,即使通过引用传递,也不能直接修改已创建的`String`对象。例如: ```java void modifyString(String str) { str = "New Value"; // 这里创建了一个新的String对象 } ...
#### 三、基本数据类型与引用数据类型 除了数值类型外,Java还定义了其他基本数据类型: - **字符型** (`char`):用于存储单个字符,占用16位。 - **布尔型** (`boolean`):用于表示逻辑值,只接受 `true` 或 `...
- **包装类转换**:Java 提供了六个基本数据类型的包装类,用于在基本类型和对象之间转换。例如,`float f = 100.0f; Float F = new Float(f); Double d = F.doubleValue();` 2. **字符串与其他数据类型的转换** ...
二、Java基本语法 1. **变量**:Java中的变量必须先声明后使用,有八种基本数据类型(byte, short, int, long, float, double, char, boolean)和引用数据类型(对象、数组、接口)。 2. **数据类型转换**:Java支持...
在Java中,有两类数据类型:基本类型(如int、char)和引用类型(如类实例、数组)。对于基本类型,Java采用值传递的方式,而对于引用类型,则是传递引用的副本。 1. 值传递与引用传递的区别: - **值传递**:当...