如何使用java 和 guava初始化指定类型和大小的原始数组或对象数组

x33g5p2x  于2022-09-15 转载在 Java  
字(2.3k)|赞(0)|评价(0)|浏览(355)

本示例将演示如何使用 java 和 guava初始化指定类型和大小的原始数组或对象数组。

原生Java

Java 核心库提供了两种初始化数组的基本方法。首先是使用 new 运算符创建一个数组,然后为数组的每个元素分配一个值。第二种是使用快捷语法来创建和初始化数组。

初始化原始数组

@Test
public void initalize_int_array_java () {

    // declares an array of integers
    int[] nflNorthStadiumsCapacity;

    // allocates memory for 4 integers
    nflNorthStadiumsCapacity = new int[4];

    // initialize elements
    nflNorthStadiumsCapacity[0] = 80750;
    nflNorthStadiumsCapacity[1] = 61500;
    nflNorthStadiumsCapacity[2] = 64121;
    nflNorthStadiumsCapacity[3] = 65000;

    assertTrue(nflNorthStadiumsCapacity.length == 4);
}

初始化原始数组快捷方式

@Test
public void initalize_int_array_java_shortcut () {

    int[] nflNorthStadiumsCapacity = {
            80750, 61500,
            64121, 65000};

    assertTrue(nflNorthStadiumsCapacity.length == 4);
}

初始化对象数组

@Test
public void initialize_string_array_java () {

    // declares an array of strings
    String[] nflNorthStadiums;

    // allocates memory for 4 strings
    nflNorthStadiums = new String[4];

    // initialize elements
    nflNorthStadiums[0] = "Lambeau Field";
    nflNorthStadiums[1] = "Soldier Field";
    nflNorthStadiums[2] = "Mall of America Fielddagger";
    nflNorthStadiums[3] = "Ford Fielddagger";

    assertTrue(nflNorthStadiums.length == 4);
}

初始化对象数组快捷方式

@Test
public void initialize_string_array_java_shortcut () {

    // declares an array of strings
    String[] nflNorthStadiums = {
            "Lambeau Field",
            "Soldier Field",
            "Mall of America Fielddagger",
            "Ford Fielddagger"};

    assertTrue(nflNorthStadiums.length == 4);
}

Google Guava

ObjectArrays 是一个属于对象数组的Guava程序类。在下面的第一个示例中,我们将调用 ObjectArrays.newArray 方法,该方法将返回指定长度和组件类型的新数组。第二个示例将调用重载的 ObjectArrays.newArray,它将返回给定长度和引用类型的新数组。在这种情况下,返回一个 String[]。

初始化对象数组

@Test
public void initialize_string_array_java_with_guava () {

    String[] nflNorthStadiums = ObjectArrays.newArray(String.class, 4);

    nflNorthStadiums[0] = "Lambeau Field";
    nflNorthStadiums[1] = "Soldier Field";
    nflNorthStadiums[2] = "Mall of America Fielddagger";
    nflNorthStadiums[3] = "Ford Fielddagger";

    assertTrue(nflNorthStadiums.length == 4);
}

使用引用类型初始化对象数组

@Test
public void initialize_string_array_java_with_guava_reference_type () {

    String[] nflStadiums = {""};

    String[] nflNorthStadiums = ObjectArrays.newArray(nflStadiums, 4);

    nflNorthStadiums[0] = "Lambeau Field";
    nflNorthStadiums[1] = "Soldier Field";
    nflNorthStadiums[2] = "Mall of America Fielddagger";
    nflNorthStadiums[3] = "Ford Fielddagger";

    assertEquals(4, nflNorthStadiums.length);
}

相关文章