mirror of https://github.com/alibaba/fastjson2.git
add api SymbolTable(Class[])
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (11, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (11, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (11, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (17, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (17, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (17, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (21, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (21, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (21, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (8, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (8, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (8, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (11, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (11, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (11, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (17, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (17, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (17, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (21, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (21, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (21, windows-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (8, macos-latest) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (8, ubuntu-24.04) (push) Has been cancelled
Details
Java CI / Test on JDK ${{ matrix.java }} OS ${{ matrix.os }} (8, windows-latest) (push) Has been cancelled
Details
This commit is contained in:
parent
d5092258bb
commit
188a70776c
|
@ -15,6 +15,24 @@ public final class SymbolTable {
|
||||||
private final long[] hashCodes;
|
private final long[] hashCodes;
|
||||||
private final long[] hashCodesOrigin;
|
private final long[] hashCodesOrigin;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a symbol table
|
||||||
|
*
|
||||||
|
* @param input input
|
||||||
|
* @since 2.0.58
|
||||||
|
*/
|
||||||
|
public SymbolTable(Class<?>... input) {
|
||||||
|
this(classNames(input));
|
||||||
|
}
|
||||||
|
|
||||||
|
private static String[] classNames(Class... input) {
|
||||||
|
String[] names = new String[input.length];
|
||||||
|
for (int i = 0; i < input.length; i++) {
|
||||||
|
names[i] = input[i].getName();
|
||||||
|
}
|
||||||
|
return names;
|
||||||
|
}
|
||||||
|
|
||||||
public SymbolTable(String... input) {
|
public SymbolTable(String... input) {
|
||||||
Set<String> set = new TreeSet<>(Arrays.asList(input));
|
Set<String> set = new TreeSet<>(Arrays.asList(input));
|
||||||
names = new String[set.size()];
|
names = new String[set.size()];
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
package com.alibaba.fastjson2;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||||
|
|
||||||
|
public class SymbolTableTest {
|
||||||
|
@Test
|
||||||
|
public void test() {
|
||||||
|
SymbolTable symbolTable = new SymbolTable(Integer.class, Long.class);
|
||||||
|
assertEquals(Integer.class.getName(), symbolTable.getName(1));
|
||||||
|
assertEquals(Long.class.getName(), symbolTable.getName(2));
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue