能打印出两千常用汉字及语义和笔画吗
时间: 2024-03-20 07:39:20 浏览: 14
可以,以下是一个简单的示例代码,可以打印出两千常用汉字及其语义和笔画:
```java
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
public class ChineseCharacter {
public static void main(String[] args) throws IOException {
String fileName = "chinese_characters.txt"; // 存放两千常用汉字的文件路径
Map<String, String[]> characterMap = new HashMap<>(); // 存放汉字及其语义和笔画的Map
BufferedReader br = new BufferedReader(new FileReader(fileName));
String line;
while ((line = br.readLine()) != null) {
String[] arr = line.split("\t");
if (arr.length == 3) {
String[] value = new String[2];
value[0] = arr[1]; // 语义
value[1] = arr[2]; // 笔画
characterMap.put(arr[0], value);
}
}
br.close();
System.out.println("汉字\t语义\t笔画");
for (Map.Entry<String, String[]> entry : characterMap.entrySet()) {
StringBuilder sb = new StringBuilder();
sb.append(entry.getKey()).append("\t");
String[] value = entry.getValue();
sb.append(value[0]).append("\t");
sb.append(value[1]);
System.out.println(sb.toString());
}
}
}
```
以上代码中,需要先准备一个文件,文件中每行存放一个汉字及其语义和笔画,用制表符`\t`分隔。示例文件内容如下:
```
一 one 1
乙 second; 2nd heavenly stem 1
二 two 2
十 ten 2
丁 nail; small cube-shaped object; pellet, grain; cubic meter; fourth of 10 Heavenly Stems; surname Ding 2
厂 cliff; factory, workshop; depot; yard, courtyard; surname Chang 2
七 seven 2
卜 divine; prophesy; observe 2
```
执行以上代码后,将会打印出两千常用汉字及其语义和笔画,示例输出如下:
```
汉字 语义 笔画
佚 lose; forget; miss; enjoy; at ease 7
充 fulfill; fill; supply; satisfy; plug; be full; be used up; be sufficient 6
亘 extend; cover; range over 8
仆 fall forward; lie prostrate; servant; pawn; fall forward; lie prostrate; servant; pawn 5
炎 flame; blaze; inflammation; surname Yan 8
井 well; neat; orderly 4
```
需要注意的是,以上代码只是一个简单的示例,实际中需要更加完善的数据集来包含所有的汉字及其语义和笔画。