这里会显示出您选择的修订版和当前版本之间的差别。
| 两侧同时换到之前的修订记录 前一修订版 | |||
|
zh:courses:java2026:ch02 [2026/03/09 21:13] pzczxs [上机作业] |
zh:courses:java2026:ch02 [2026/03/16 22:00] (当前版本) pzczxs [上机作业] |
||
|---|---|---|---|
| 行 366: | 行 366: | ||
| | 9 | 分割符 | / | | | 9 | 分割符 | / | | ||
| | 10-14 | subgroup(左对齐) | 0...99999 | | | 10-14 | subgroup(左对齐) | 0...99999 | | ||
| + | |||
| + | 【参考答案】 | ||
| + | <file java Ipc.java> | ||
| + | package cn.edu.bjut.chapter2; | ||
| + | |||
| + | public class Ipc { | ||
| + | public static void main(String[] args) { | ||
| + | final char SEPARATOR = '/'; | ||
| + | |||
| + | { | ||
| + | char section = 'A'; | ||
| + | int mainClass = 4; | ||
| + | char subclass = 'B'; | ||
| + | int mainGroup = 55; | ||
| + | int subgroup = 56; | ||
| + | |||
| + | String classification = section | ||
| + | + String.format("%2s", mainClass).replace(' ', '0') | ||
| + | + subclass + String.format("%4s", mainGroup) | ||
| + | + SEPARATOR + subgroup; | ||
| + | |||
| + | System.out.println(classification); | ||
| + | } | ||
| + | |||
| + | { | ||
| + | String classification = "A04B 55/56"; | ||
| + | char section = classification.charAt(0); | ||
| + | int mainClass = Integer.parseInt(classification.substring(1, 3)); | ||
| + | char subclass = classification.charAt(3); | ||
| + | int pos = classification.indexOf(SEPARATOR); | ||
| + | int mainGroup = Integer.parseInt(classification.substring(4, pos).trim()); | ||
| + | int subgroup = Integer.parseInt(classification.substring(pos + 1)); | ||
| + | |||
| + | System.out.println(section + "\t" + mainClass + "\t" | ||
| + | + subclass + "\t" + mainGroup + "\t" | ||
| + | + subgroup); | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | </file> | ||
| [[zh:courses:java2026:index|返回Java课程页]] | [[zh:courses:java2026:index|返回Java课程页]] | ||
| ~~DISCUSSION~~ | ~~DISCUSSION~~ | ||