A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 等待未来 中级黑马   /  2016-10-6 22:40  /  1059 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package fuxi;

import java.util.Arrays;
import java.util.Scanner;

public class Demo10 {
        /*(第4题)从控制台接收一串字符串,完成以下要求(共8分)
         * a、将该字符串转换成字符数组(数组名为arr)(2分)
         * b、判断arr数组中第一个和最后一个字符是否相等如果不相等则互换(3分)
         * c、将互换后的arr中下标是偶数的字符用“*”号代替该元素(3分)
         * 比如:“sdfjasklf”转换成“*d*j*s*l*”
         */


public static void main(String[] args) {
       
        char[] arr = getChar();
        System.out.println("输入的字符串转为字符数组为" + Arrays.toString(arr));
        getChange(arr);
        System.out.println("交换后的字符数组为" + Arrays.toString(arr));
        changeTo(arr);
        System.out.println("替换后的字符数组为" + Arrays.toString(arr));
}

private static void changeTo(char[] arr) {
        for (int i = 0; i < arr.length; i++) {
                if (i % 2 == 0) {
                        arr[i] = '*' ;
                }
        }
}

private static void getChange(char[] arr) {
        if (arr[0] != arr[arr.length-1] && arr.length > 1) {
                char temp = arr[0];
                arr[0] = arr[arr.length-1];
                arr[arr.length-1] = temp;
        }
}

private static char[] getChar() {
        Scanner sc = new Scanner(System.in);
        char[] arr;
        System.out.println("请输入正确的字符串:");
        while(true){
                String s = sc.nextLine();
                if (s.length() > 0 ) {
                        arr = s.toCharArray();
                        break;
                }
                System.out.println("请输入正确的字符串:");
        }
        return arr;
}
}


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马