请在一个类中编写一个方法,这个方法搜索一个字符数组中是否存在某个字符,如果存在,则返回这个字符在字符数组中第一次出现的位置(序号从0开始计算),否则,返回-1。要搜索的字符数组和字符都以参数形式传递传递给该方法,如果传入的数组为null,应抛出IllegalArgumentException异常。在类的main方法中以各种可能出现的情况测试验证该方法编写得是否正确,例如,字符不存在,字符存在,传入的数组为null等。
1.创建一个字符数组。 2.搜索该字符是否存在字符数组中,编写搜索方法。 3.判断字符数组中是否存在该字符
1.valueOf:方法用于返回给定参数的原生 Number 对象值。 如:char[] str = { ‘a’, ‘b’, ‘c’, ‘a’ }; String s = String.valueOf(str); // s的值是 abca 2.indexOf:返回指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。 如:s.indexOf(“b”); // 表示:如果字符数组中存在b,则返回第一次出现b的下标索引,如果没有b,则返回-1
package com.eleven.csdn0110;
/**
* 1.请在一个类中编写一个方法,这个方法搜索一个字符数组中是否存在某个字符,如果存在,则返回这个字符在字符数组中第一次出现的位置(序号从0开始计算),否则,返回-1。
* 2.要搜索的字符数组和字符都以参数形式传递传递给该方法,如果传入的数组为null,应抛出IllegalArgumentException异常。
* 3.在类的main方法中以各种可能出现的情况测试验证该方法编写得是否正确,例如,字符不存在,字符存在,传入的数组为null等。
*
* @author sywangu
*
*/
public class OneDay {
public static void main(String[] args) {
// 创建一个字符数组
char[] str = { 'a', 'a', 'c', '-', 'a' };
// 搜索该字符是否存在字符数组中
int index = search(str,'-');
// 判断字符数组中是否存在该字符
if (index == -1) { // index为-1时,表示字符不存在
System.out.println("该字符不存在");
} else {
System.out.println("字符在字符数组中第一次出现的位置" + index);
}
}
// search方法
private static int search(char[] aStr, char aIndex) {
int index = -1; // 将index的值初始化为-1
if (aStr == null) { // 如果str值为null,则抛出非法数据异常
new IllegalArgumentException().printStackTrace(); // IllegalArgumentException非法数据异常
} else {
for (int i = 0; i < aStr.length; i++) {
if (aIndex == aStr[i]) { // 如果字符数组里面的字符和要搜索的字符一致
index = i; // 就将i的值赋值给index
break; // 满足条件,退出循环
}
}
}
return index; // 打印index的值
}
}
package com.eleven.test;
/**
* 1.请在一个类中编写一个方法,这个方法搜索一个字符数组中是否存在某个字符,如果存在,则返回这个字符在字符数组中第一次出现的位置(序号从0开始计算),否则,返回-1。
* 2.要搜索的字符数组和字符都以参数形式传递传递给该方法,如果传入的数组为null,应抛出IllegalArgumentException异常。
* 3.在类的main方法中以各种可能出现的情况测试验证该方法编写得是否正确,例如,字符不存在,字符存在,传入的数组为null等。
*
* @author sywangu
*
*/
public class OneDemoTest {
public static void main(String[] args) {
// 创建一个字符数组
char[] str = { 'a', 'b', 'c', 'a' };
// // 如果str值为null,则抛出非法数据异常
if (str == null)
throw new IllegalArgumentException();
// valueOf() 方法用于返回给定参数的原生 Number 对象值
String s = String.valueOf(str); // s的值是 abca
// indexOf():返回指定字符在字符串中第一次出现处的索引,如果此字符串中没有这样的字符,则返回 -1。
System.out.println(s.indexOf("b"));
}
}