Skip to content

Commit f95b8e4

Browse files
update autoboxing
1 parent 30f6307 commit f95b8e4

File tree

6 files changed

+220
-0
lines changed

6 files changed

+220
-0
lines changed
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
package com.examplehub.basics.number;
2+
3+
public class DoubleExample {
4+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
package com.examplehub.basics.oop;
2+
3+
public class ObjectExample {
4+
}

src/test/java/com/examplehub/basics/bool/BooleanExampleTest.java

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,4 +48,24 @@ void testTernaryOperator() {
4848
int abs = num < 0 ? -num : num;
4949
assertEquals(3, abs);
5050
}
51+
52+
@Test
53+
void testValueOf() {
54+
Boolean b = Boolean.valueOf(true);
55+
assertTrue(b.booleanValue());
56+
57+
b = Boolean.valueOf("false");
58+
assertFalse(b.booleanValue());
59+
}
60+
61+
@Test
62+
void testAutoBoxing() {
63+
Boolean b = false;
64+
System.out.println(b);
65+
assertFalse(b);
66+
67+
boolean bValue = b;
68+
System.out.println(bValue);
69+
assertFalse(bValue);
70+
}
5171
}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
package com.examplehub.basics.number;
2+
3+
import org.junit.jupiter.api.Test;
4+
5+
import static org.junit.jupiter.api.Assertions.*;
6+
7+
class DoubleExampleTest {
8+
@Test
9+
void testValueOf() {
10+
Double d = Double.valueOf(3.14);
11+
System.out.println(d.doubleValue());
12+
assertEquals(3.14, d.doubleValue());
13+
14+
d = Double.valueOf("3.14159");
15+
System.out.println(d.doubleValue());
16+
assertEquals(3.14159, d.doubleValue());
17+
}
18+
19+
@Test
20+
void testIsNaN() {
21+
Double d = 0.0 / 0;
22+
assertEquals(d, Double.NaN);
23+
}
24+
25+
@Test
26+
void testAutoboxing() {
27+
Double d = 3.14;
28+
assertEquals(3.14, d.doubleValue());
29+
double pi = d;
30+
assertEquals(3.14, pi);
31+
}
32+
}

src/test/java/com/examplehub/basics/number/IntegerExampleTest.java

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,51 @@
22

33
import static org.junit.jupiter.api.Assertions.*;
44

5+
import jdk.jfr.StackTrace;
56
import org.junit.jupiter.api.Test;
7+
import org.junit.jupiter.api.function.Executable;
68

79
class IntegerExampleTest {
10+
11+
@Test
12+
void testValueOf() {
13+
Integer integer = Integer.valueOf(100);
14+
System.out.println(integer);
15+
assertEquals(100, integer.intValue());
16+
17+
integer = Integer.valueOf("123");
18+
System.out.println(integer);
19+
assertEquals(123, integer.intValue());
20+
21+
integer = Integer.valueOf("a", 16);
22+
System.out.println(integer);
23+
assertEquals(10, integer.intValue());
24+
}
25+
26+
@Test
27+
void testParseInt() {
28+
int number = Integer.parseInt("123");
29+
System.out.println(number);
30+
assertEquals(123, number);
31+
32+
assertThrows(NumberFormatException.class, () -> {
33+
int num = Integer.parseInt("123a");
34+
fail();
35+
});
36+
}
37+
838
@Test
939
void testAutoBoxing() {
1040
Integer integer = 10;
1141
assertEquals(10, integer.intValue());
1242
Integer integer1 = 10;
1343
assertTrue(integer == integer1);
1444
assertTrue(integer.equals(integer1));
45+
46+
Integer first = 128;
47+
Integer second = 128;
48+
System.out.println(first == second);
49+
assertNotSame(first, second);
1550
}
1651

1752
@Test
@@ -24,4 +59,19 @@ void testAutoBoxingNullPointer() {
2459
assertTrue(true);
2560
}
2661
}
62+
63+
@Test
64+
void testToBinaryString() {
65+
assertEquals("1010", Integer.toBinaryString(10));
66+
}
67+
68+
@Test
69+
void testToOctalString() {
70+
assertEquals("12", Integer.toOctalString(10));
71+
}
72+
73+
@Test
74+
void test(){
75+
assertEquals("a", Integer.toHexString(10));
76+
}
2777
}
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
package com.examplehub.basics.oop;
2+
3+
import org.junit.jupiter.api.Test;
4+
5+
import java.util.Objects;
6+
7+
import static org.junit.jupiter.api.Assertions.*;
8+
9+
class ObjectExampleTest {
10+
@Test
11+
void testObject() {
12+
Object o = new Object();
13+
System.out.println(o);
14+
}
15+
16+
@Test
17+
void testEquals() {
18+
class Student {
19+
private int id;
20+
private String name;
21+
public Student(int id, String name) {
22+
this.id = id;
23+
this.name = name;
24+
}
25+
}
26+
class People {
27+
private final String name;
28+
private final int age;
29+
30+
public People(String name, int age) {
31+
this.name = name;
32+
this.age = age;
33+
}
34+
35+
@Override
36+
public boolean equals(Object o) {
37+
if (this == o) return true;
38+
if (o == null || getClass() != o.getClass()) return false;
39+
People people = (People) o;
40+
return age == people.age && Objects.equals(name, people.name);
41+
}
42+
43+
@Override
44+
public int hashCode() {
45+
return 0;
46+
}
47+
}
48+
Student stu1 = new Student(10001, "duyuanchao");
49+
Student stu2 = new Student(10001, "duyuanchao");
50+
assertNotSame(stu1, stu2);
51+
assertNotEquals(stu1, stu2);
52+
53+
People p1 = new People("duyuanchao", 25);
54+
People p2 = new People("duyuanchao", 25);
55+
People p3 = new People("jack", 25);
56+
assertNotSame(p1, p2);
57+
assertEquals(p1, p2);
58+
assertNotEquals(p1, p3);
59+
}
60+
61+
@Test
62+
void testHashCode() {
63+
class People {
64+
private final String name;
65+
private final int age;
66+
67+
public People(String name, int age) {
68+
this.name = name;
69+
this.age = age;
70+
}
71+
72+
@Override
73+
public boolean equals(Object o) {
74+
if (this == o) return true;
75+
if (o == null || getClass() != o.getClass()) return false;
76+
People people = (People) o;
77+
return age == people.age && Objects.equals(name, people.name);
78+
}
79+
80+
@Override
81+
public int hashCode() {
82+
return this.age % 13;
83+
}
84+
}
85+
People p1 = new People("duyuanchao", 25);
86+
People p2 = new People("duyuanchao", 25);
87+
assertEquals(p1.hashCode(), p2.hashCode());
88+
}
89+
90+
@Test
91+
void testToString() {
92+
class People {
93+
private final String name;
94+
private final int age;
95+
96+
public People(String name, int age) {
97+
this.name = name;
98+
this.age = age;
99+
}
100+
101+
@Override
102+
public String toString() {
103+
return "name = " + name + ", age = " + age;
104+
}
105+
}
106+
107+
People people = new People("duyuanchao", 25);
108+
assertEquals("name = duyuanchao, age = 25", people.toString());
109+
}
110+
}

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy