"[\n \"apple\",\n \"banana\",\n \"orange\"\n]\n"显示JSON字符串的层级关系
时间: 2024-02-03 14:10:12 浏览: 16
以下是显示JSON字符串的层级关系的方法:
```python
import json
json_str = "[\n \"apple\",\n \"banana\",\n \"orange\"\n]\n"
json_data = json.loads(json_str)
def print_json(data, level=0):
if isinstance(data, dict):
for key, value in data.items():
print('\t' * level + str(key))
print_json(value, level + 1)
elif isinstance(data, list):
for item in data:
print_json(item, level + 1)
else:
print('\t' * level + str(data))
print_json(json_data)
```
输出结果:
```
apple
banana
orange
```
相关问题
C++ "[\n \"apple\",\n \"banana\",\n \"orange\"\n]\n"显示JSON字符串的层级关系
在C++中,你可以使用第三方库来解析和处理JSON字符串的层级关系。一个常用的库是RapidJSON。下面是一个使用RapidJSON库解析和显示JSON字符串层级关系的示例代码:
```cpp
#include <iostream>
#include <string>
#include "rapidjson/document.h"
int main() {
std::string jsonString = "[\n \"apple\",\n \"banana\",\n \"orange\"\n]\n";
rapidjson::Document document;
document.Parse(jsonString.c_str());
if (document.IsArray()) {
const rapidjson::Value& array = document.GetArray();
for (rapidjson::SizeType i = 0; i < array.Size(); i++) {
std::cout << "Level " << i << ": " << array[i].GetString() << std::endl;
}
}
return 0;
}
```
这段代码首先将JSON字符串解析为RapidJSON的Document对象。然后,通过判断Document对象是否为数组类型,我们可以遍历数组并打印每个元素的值。在这个例子中,JSON字符串包含一个字符串数组,所以我们使用GetString()方法来获取每个元素的值。
输入n个字符串按首字母排序字符串
以下是Java实现输入n个字符串按首字母排序字符串的代码示例:
```java
import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;
public class SortStrings {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入字符串个数:");
int n = scanner.nextInt();
String[] strings = new String[n];
System.out.println("请输入" + n + "个字符串:");
for (int i = 0; i < n; i++) {
strings[i] = scanner.next();
}
Arrays.sort(strings, new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
return s1.charAt(0) - s2.charAt(0);
}
});
System.out.println("按首字母排序后的字符串为:");
for (String s : strings) {
System.out.print(s + " ");
}
}
}
```
运行示例:
```
请输入字符串个数:5
请输入5个字符串:
apple banana cat dog egg
按首字母排序后的字符串为:
apple banana cat dog egg
```