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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© cxl1694095035 中级黑马   /  2016-5-15 21:48  /  985 人查看  /  17 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文


import java.util.Scanner;
                /*
                 * 在一个类中编写一个方法,这个方法搜索一个字符数组中是否存在某个字符,如果存在,则返回这个字符在字符数组中第一次出现的位置(序号从0开始计算),
                 * 否则,返回-1。要搜索的字符数组和字符都以参数形式传递传递给该方法,如果传入的数组为null,应抛出IllegalArgumentException异常。
                 * 在类的main方法中以各种可能出现的情况测试验证该方法编写得是否正确,例如,字符不存在,字符存在,传入的数组为null等。
                 *
                 * 分析:
                 * 创建一个对象
                 * 定义一个输入对象,输入字符
                 * 定义一个字符来做为比较的值
                 * 把字符串转换成字符数组
                 * 调用方法
                 * 判断数组是不是null,如果是返回IllegalArgumentException异常
                 * 使用for对这个数组进行遍历
                 * 如果相等,返回这个索引号
                 * 输出这个索引
                 * 定义一字符数组,在定一个字符 调用方法
                 * 创建方法, 使用
                 */
                 
public class Tset7 {

        public static void main(String[] args) {
                // 创建一个对象
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入字符串:");
                // 输入字符串,做为源字符串
                String str = sc.nextLine();
                // 定义一个字符来做为比较的值、
                char ch = 'e';
                // 把字符串转换成字符数组、
                char[] chs = str.toCharArray();
                // 调用查找方法、并把这个方法的返回索引赋值给int类型存储
                int num = check(chs, ch);
                // 输出索引
                System.out.println("比较的字符是:"+"e"+"\n索引号是:"+num);
        }
                private static int check(char[] chs, char ch) {
                // 如果这个数组为Null则抛出IllegalArgumentException异常
                if(chs==null){
                throw new IllegalArgumentException("数组不能为空!");
        }
                // 遍历数组
                for (int x = 0; x < chs.length; x++) {
                // 如果这个数组和这个比较的字符相等返回这这个索引号
                if (chs[x] == ch) {
                return x+1;
                }
        }
                // 否则返回-1
                return -1;
        }
}

评分

参与人数 1黑马币 +20 收起 理由
a15868412325 + 20 很给力!

查看全部评分

17 个回复

正序浏览
楼主面试过了吗
回复 使用道具 举报
赞一个,非常不错
回复 使用道具 举报
loop 中级黑马 2016-5-18 22:40:09
16#
学习了,谢谢楼主分享
回复 使用道具 举报
要我自己写的话 估计写不出来·  感觉点招  好难啊
回复 使用道具 举报
感谢分享,收藏一下,谢谢
回复 使用道具 举报
谢谢。....................
回复 使用道具 举报
学习啦 要自己估计写不出来还
回复 使用道具 举报
学习学习
回复 使用道具 举报
赞一个,!!!!!!!!!!!!!!!!
回复 使用道具 举报
刘宽 中级黑马 2016-5-18 09:20:49
9#
面试题考的好全面,到时候是直接写吗?
回复 使用道具 举报
itlf 中级黑马 2016-5-17 22:26:04
8#
真够意思,这个20
回复 使用道具 举报
   还是不错的面试题,学习啦
回复 使用道具 举报
不错,学习学习。
回复 使用道具 举报
正好学到这{:3_69:}
回复 使用道具 举报
谢谢 还是不错的!!!!!!
回复 使用道具 举报
一天最多可以加多少黑马币
回复 使用道具 举报
赞一个...不错....
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马