给定一个字符串,任务是将字符串转换为 Java 中的字符串数组。如下图所示:
示例:
Input: String : "Geeks for Geeks" Output: String[]: [Geeks for Geeks]
Input: String : "A computer science portal" Output: String[] : [A computer science portal]
方法:
它们如下:
- 使用str.split()方法
- 使用循环
- 使用Set.toArray()方法
- 使用字符串分词器
- 使用pattern.split()方法
现在让我们深入讨论实现相同方法的每种方法,以便更好地理解相同方法。它们如下:
方法一:使用str.split()方法
方法:
- 创建一个字符串类型的数组。
- 使用string_name.split()分割给定的字符串。
- 将分割后的数组存储到字符串数组中。
- 打印上面的字符串数组。
示例
Java
// Java Program to Convert String to String Array
// Using str.split() method
// Importing input output classes
import java.io.*;
// Main class
public class GFG {
// Main driver method
public static void main(String[] args)
{
// Input string to be convert to string array
String str = "Geeks for Geeks";
String strArray[] = str.split(" ");
System.out.println("String : " + str);
System.out.println("String array : [ ");
// Iterating over the string
for (int i = 0; i < strArray.length; i++) {
// Printing the elements of String array
System.out.print(strArray[i] + ", ");
}
System.out.print("]");
}
}
输出
String : Geeks for Geeks String array : [ Geeks, for, Geeks, ]
方法 2:使用循环
方法:
- 获取字符串集。
- 创建一个空字符串数组
- 使用高级for循环,将set的每个元素复制到字符串数组
- 打印字符串数组。
例子:
Java
// Java Program to Convert String to String Array
// Using HashSet and Set classes
// Importing required classes from respective packages
import java.io.*;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
// Main class
class GFG {
// Method 1
// To convert Set<String> to String[]
public static String[] method(Set<String> string)
{
// Create String[] of size of setOfString
String[] string_array = new String[string.size()];
// Copy elements from set to string array
// using advanced for loop
int index = 0;
for (String str : string) {
string_array[index++] = str;
}
// Return the formed String[]
return string_array;
}
// Method 2
// Main driver method
public static void main(String[] args)
{
// Custom input string
String str = "Geeks for Geeks";
// Getting the Set of String
Set<String> string_set
= new HashSet<>(Arrays.asList(str));
// Printing the setOfString
System.out.println("String: " + str);
// Converting Set to String array
String[] String_array = method(string_set);
// Lastly printing the arrayOfString
// using Arrays.toString() method
System.out.println("Array of String: "
+ Arrays.toString(String_array));
}
}
输出
String: Geeks for Geeks Array of String: [Geeks for Geeks]
方法三:使用Set.toArray()方法
方法:
- 将给定的字符串转换为字符串集。
- 现在创建一个空字符串数组。
- 使用 set.toArray() 通过传递字符串类型的空数组将字符串集转换为字符串数组。
- 打印字符串数组。
例子:
Java
// Java Program to Convert String to String Array
// Using Set.toArray() method
// Importing required classes from respective packages
import java.io.*;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
// Main class
public class GFG {
// Method 1
// To convert Set<String> to string array
public static String[] convert(Set<String> setOfString)
{
// Create String[] from setOfString
String[] arrayOfString
= setOfString.toArray(new String[0]);
// return the formed String[]
return arrayOfString;
}
// Method 2
// Main driver method
public static void main(String[] args)
{
// Custom input string as input
String str = "Geeks for Geeks";
// Getting the Set of String
Set<String> string
= new HashSet<>(Arrays.asList(str));
// Printing the setOfString
System.out.println("String: " + str);
// Converting Set to String array
String[] string_array = convert(string);
// Print the arrayOfString
// using Arrays.toString() method
System.out.println("String array : "
+ Arrays.toString(string_array));
}
}
输出
String: Geeks for Geeks String array : [Geeks for Geeks]
方法四: 使用字符串分词器
字符串分词器有助于将字符串对象分割成越来越小的部分。这些较小的部分称为令牌。
- 对给定的字符串进行标记
- 创建一个字符串类型的数组,其大小为令牌计数。
- 将这些标记存储到字符串数组中。
- 打印字符串数组。
例子:
Java
// Java Program to Convert String to String Array
// Using Set.toArray() method
// Importing required classes from respective packages
import java.io.*;
import java.util.StringTokenizer;
// Main class
public class GFG {
// Main driver method
public static void main(String[] args)
{
// Declaring and initializing integer variable
// to zero
int i = 0;
// Custom input string as input
String str = "Geeks for Geeks";
// Tokenize a given string using the default
// delimiter
StringTokenizer str_tokenizer
= new StringTokenizer(str);
String[] string_array
= new String[str_tokenizer.countTokens()];
// Add tokens to our array
while (str_tokenizer.hasMoreTokens()) {
string_array[i] = str_tokenizer.nextToken();
i++;
}
// Print and display the string
System.out.print("String :" + str);
// Display message
System.out.print("\nString array : [ ");
// Printing the string array
// using for each loop
for (String string : string_array) {
System.out.print(string + " ");
}
System.out.print("]");
}
}
输出
String :Geeks for Geeks String array : [ Geeks for Geeks ]
方法5:使用pattern.split()方法
这个pattern.split()方法的目的是根据给定的模式将给定的字符串分解为数组。我们可以通过给出一些特定的模式来分割字符串。
方法:
- 定义模式 (REGEX)
- 然后使用编译方法创建模式
- 然后使用分割字符串图案.split()具有特定的模式并将其存储在数组中。
- 打印字符串数组
例子:
Java
// Java Program to Convert String to String Array
// Using Set.toArray() method
// Importing required classes from respective packages
import java.io.*;
import java.util.regex.Pattern;
// Main class
public class GFG {
// Main driver method
public static void main(String[] args)
{
// Custom string as input
String str = "Geeks for Geeks";
// Step 1: Define REGEX
String my_pattern = "\\s";
// Step 2: Create a pattern using compile method
Pattern pattern = Pattern.compile(my_pattern);
// Step 3: Create an array of strings using the
// pattern we already defined
String[] string_array = pattern.split(str);
// Print and display string and
// its corresponding string array
System.out.print("String : " + str);
System.out.print("\nString array : [ ");
// Iterating over the string
for (int i = 0; i < string_array.length; i++) {
// Printing the string array
System.out.print(string_array[i] + " ");
}
System.out.print("]");
}
}
输出
String : Geeks for Geeks String array : [ Geeks for Geeks ]
相关用法
- Java String转Short用法及代码示例
- Java String转ArrayList用法及代码示例
- Java String转InputStream用法及代码示例
- Java String转Byte用法及代码示例
- Java String转Int用法及代码示例
- Java String转Date用法及代码示例
- Java String转Double用法及代码示例
- Java String转Object用法及代码示例
- Java String转Float用法及代码示例
- Java String转Long用法及代码示例
- Java String转Boolean用法及代码示例
- Java String转Character用法及代码示例
- Java String转LocalDate用法及代码示例
- Java String转UUID用法及代码示例
- Java String转InetAddress用法及代码示例
- Java String转Timestamp用法及代码示例
- Java String转BigInteger用法及代码示例
- Java String转Integer Array用法及代码示例
- Java String转IntStream用法及代码示例
- Java String转Float Value用法及代码示例
- Java String compareToIgnoreCase()用法及代码示例
- Java String compareTo()用法及代码示例
- Java String split()用法及代码示例
- Java String length()用法及代码示例
- Java String replace()用法及代码示例
注:本文由纯净天空筛选整理自manastole01大神的英文原创作品 Java Program to Convert String to String Array。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。