字符串数组是一种存储多个字符串的数据布局,它可以看作是一个二维的字符数组,每一行代表一个字符串。字符串数组在Java中有多种初始化的要领,本文将先容个中的几种常用的要领,并给出相应的代码示例。
要领一:利用花括号和逗号脱离的字符串常量
这是一种最简朴和直观的要领,可以在声明字符串数组的同时,利用花括号{}将若干个用逗号脱离的字符串常量困绕起来,作为字符串数组的初始值。譬喻:
// 利用花括号和逗号脱离的字符串常量初始化字符串数组 String[] names = {"Alice", "Bob", "Charlie", "David"};
这种要领可以省略new要害字和数组长度,因为编译器会按照花括号中的字符串常量的个数自动揣度出数组长度。这种要领也可以在声明和初始化分隔的环境下利用,,只要在赋值时加上new要害字即可。譬喻:
// 声明一个字符串数组 String[] names; // 利用花括号和逗号脱离的字符串常量赋值 names = new String[] {"Alice", "Bob", "Charlie", "David"};
要领二:利用new要害字和指定命组长度
这是一种更机动的要领,可以在声明字符串数组时,利用new要害字和指定命组长度来建设一个空的字符串数组,然后再通过下标会见和赋值来初始化每个元素。譬喻:
// 利用new要害字和指定命组长度建设一个空的字符串数组 String[] names = new String[4]; // 通过下标会见和赋值来初始化每个元素 names[0] = "Alice"; names[1] = "Bob"; names[2] = "Charlie"; names[3] = "David";
这种要领可以在不知道初始值的环境下建设一个指定长度的字符串数组,然后再按照需要动态地赋值。这种要领也可以在声明和初始化分隔的环境下利用,只要在赋值时加上new要害字和指定命组长度即可。譬喻:
// 声明一个字符串数组 String[] names; // 利用new要害字和指定命组长度赋值 names = new String[4]; // 通过下标会见和赋值来初始化每个元素 names[0] = "Alice"; names[1] = "Bob"; names[2] = "Charlie"; names[3] = "David";
要领三:利用Stream.of要领和toArray要领
这是一种操作Java 8中引入的Stream API来建设和初始化字符串数组的要领,可以利用Stream.of要领将若干个字符串常量转换为一个流(Stream)工具,然后利用toArray要领将流工具转换为一个字符串数组。譬喻:
// 利用Stream.of要领和toArray要领初始化字符串数组 String[] names = Stream.of("Alice", "Bob", "Charlie", "David").toArray(String[]::new);
这种要领可以简捷地将多个字符串常量转换为一个字符串数组,而不需要利用花括号可能new要害字。这种要领也可以用于将其他范例的荟萃可能流工具转换为字符串数组,只要在toArray要领中提供一个生成器函数(如String[]::new)来指定方针范例即可。譬喻:
// 将一个List工具转换为一个字符串数组 List<String> list = Arrays.asList("Alice", "Bob", "Charlie", "David"); String[] names = list.stream().toArray(String[]::new); // 将一个Stream工具转换为一个字符串数组 Stream<String> stream = Stream.of("Alice", "Bob", "Charlie", "David"); String[] names = stream.toArray(String[]::new);
总结
本文先容了三种常用的初始化字符串数组的要领,这三种要领各有优缺点,可以按照差异的场景和需求选择符合的要领来建设和初始化字符串数组。
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。