HW2017笔试编程题
一、写一个转换字符串的函数
1、题目描述
将输入字符串中下标为偶数的字符连成一个新的字符串输出,需要注意两点:
(1)如果输入字符串的长度超过20,则转换失败,返回“ERROR!”字符串;
(2)输入字符串只能由0-9数字,小写a-z和大写A-Z组成,如果包含其他字符,则转换失败,返回“ERROR!”字符串。
【code】
import java.util.Scanner; /** * Created by Administrator on 2018/3/12. */ public class PrintString { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { //输入 String str = sc.nextLine(); String output = returnString(str); System.out.println(output); } sc.close(); } //输入字符串只能由0-9数字,小写a-z和大写A-Z组成,如果包含其他字符,则转换失败,返回“ERROR!”字符串 public static String returnString(String str) { if (str.length() > 20) { return "ERROR!"; } String strNew = ""; char[] chars = str.toCharArray(); for (int i = 0; i < chars.length; i++) { if (!isValid(chars[i])) { return "ERROR!"; } else if (i % 2 == 0) { strNew += chars[i]; } else { continue; } } return strNew; } //输入字符串的长度超过20,则转换失败,返回“ERROR!”字符串 public static boolean isValid(char c) { // Character character=c; return (Character.isAlphabetic(c)||Character.isDigit(c)); } }
【result】
ewrr321455f er315f 1234567890-qwertyui ERROR! 123456789123456789asdf ERROR!