Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Gson Tutorial: How to Serialize and Deserialize Primitive Types

DZone 's Guide to

Gson Tutorial: How to Serialize and Deserialize Primitive Types

Want to learn more about how to serialize and deserialize primitive types in Gson? Check out this post where we look at primitive types in Gson with Maven and JSON.

· Java Zone ·
Free Resource

In this article, we will discuss how to use Gson to serialize or deserialize any primitive type into your JSON representation.

Gson Maven Dependency

To use Gson with Maven2/3, we can use the GSON version available in Maven Central by adding the following dependency:

<dependencies>
    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
      <version>2.8.5</version>
      <scope>compile</scope>
    </dependency>
</dependencies>


Serialize Primitives Types

We can serialize any primitive type into their JSON representation:

// Serialization
Gson gson = new Gson();

// Serialization of integer
System.out.println(gson.toJson(1));

// Serialization of String
System.out.println(gson.toJson("abcd"));

// Serialization of Long
System.out.println(gson.toJson(new Long(10)));

// Serialization of int array
int[] values = { 1 };
System.out.println(gson.toJson(values));

// Serialization of Double
System.out.println(gson.toJson(new Double(10.0d)));

// Serialization of Character
System.out.println(gson.toJson(new Character('A')));


Deserialize Primitives Types

We can deserialize the JSON String into their primitive type.

// Deserialization of int
System.out.println(gson.fromJson("1", int.class));

// Deserialization of Integer
System.out.println(gson.fromJson("1", Integer.class));

// Deserialization of Long
System.out.println(gson.fromJson("1", Long.class));

// Deserialization of Boolean
System.out.println(gson.fromJson("false", Boolean.class));

// Deserialization of String
System.out.println(gson.fromJson("\"abc\"", String.class));

// Deserialization of String[]
System.out.println(gson.fromJson("[\"abc\"]", String[].class));

// Deserialization of Character
System.out.println(gson.fromJson("A", Character.class));


Complete the Java Program to Serialize and Deserialize Primitives Types Using Gson

The complete program for your reference:

package net.javaguides.gson;

import com.google.gson.Gson;

public class GSONPrimitiveExamples {
    public static void main(String[] args) {
        // Serialization
        Gson gson = new Gson();

        // Serialization of integer
        System.out.println(gson.toJson(1));

        // Serialization of String
        System.out.println(gson.toJson("abcd"));

        // Serialization of Long
        System.out.println(gson.toJson(new Long(10)));

        // Serialization of int array
        int[] values = {
            1
        };
        System.out.println(gson.toJson(values));

        // Serialization of Double
        System.out.println(gson.toJson(new Double(10.0 d)));

        // Serialization of Character
        System.out.println(gson.toJson(new Character('A')));

        // Deserialization of int
        System.out.println(gson.fromJson("1", int.class));

        // Deserialization of Integer
        System.out.println(gson.fromJson("1", Integer.class));

        // Deserialization of Long
        System.out.println(gson.fromJson("1", Long.class));

        // Deserialization of Boolean
        System.out.println(gson.fromJson("false", Boolean.class));

        // Deserialization of String
        System.out.println(gson.fromJson("\"abc\"", String.class));

        // Deserialization of String[]
        System.out.println(gson.fromJson("[\"abc\"]", String[].class));

        // Deserialization of Character
        System.out.println(gson.fromJson("A", Character.class));
    }
}


Output:

1
"abcd"
10
[1]
10.0
"A"
1
1
1
false
abc
[Ljava.lang.String;@2b71fc7e
A


References

GSON User Guide

GSON Java DOC

Topics:
java ,gson ,tutorial ,serialization ,deserialization ,xml ,dependencies ,primitive types ,json ,maven

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}