黑马程序员技术交流社区
标题: 新人求解 [打印本页]
作者: 李升 时间: 2016-10-18 03:23
标题: 新人求解
需求:根据用户输入的四个数(即数组中的索引),得到一个新的数组,并打印
步骤:1.在main方法中定义一个字符数组,长度是26
2.在main方法中,将26个英文字母(全部是大写),使用循环的方式添加到这个创建的字符数组中(注意,必须使用循环将26个字母添加进数组中,否则,扣分,请注意)
3.定义一个方法(这个方法和main在同一个类中)
3.1方法的名字叫getArr
3.2方法的形式参数为一个存储字符类型的数组
3.3方法的返回值类型是一个存储字符类型的数组
3.4定义一个新的字符数组,长度为4
3.5在这个方法中,循环获取用户输入的数(限制用户,只能输入65-90之间的数字,注意只能循环四次)
3.6从拥有26个字母的数组中分别获取用户输入的数对应的字母,并将这四个字母存储到定义长度为4的新数组中
3.7将这个新的数组返回
4.在main方法中调用方法名为getArr的方法
5.调用方法名为getArr的方法,获取一个新的数组,遍历这个数组并打印里面的值
作者: 李升 时间: 2016-10-18 17:13
package day08;
import java.util.Scanner;
public class Demo02{
public static void main(String[] args){
char[] arr =new char[26];
int j=0;
for(char i='A';i<='Z';i++){
arr[j]=i;j++;
}
/* char j='A';
for(int i=0;i<=26;i++){
arr[i]=j;
j++;
} */
char[] newarr=getArr(arr);
for(int c=0;c<newarr.length;c++){
System.out.println(newarr[c]+" ");
}
}
public static char[] getArr(char[] arr){
char[] Newarr =new char[4];
int k=0;
for (int g=0;g<4;g++){
Scanner sc =new Scanner(System.in);
System.out.println("只能输入65-90之间的数字,注意只能循环四次");
int numble =sc.nextInt();
char getchar=(char)numble;
for(int n=0;n<26;n++){
if(getchar==arr[n]){
System.out.println(arr[n]);
Newarr[k]=arr[n];
k++;
}
}
}
return Newarr;
}
}
作者: 李升 时间: 2016-10-18 17:16
import java.util.Scanner;
public class Demo04 {
public static void main(String[] args) {
//步骤:1.在main方法中定义一个字符数组,长度是26
char[] arr=new char[26];
char ziMu='A';
for (int i = 0; i < arr.length; i++) {
arr[i]=ziMu;
//System.out.print(arr[i]);//[A,B,C,...Z]
ziMu++;
}
char[] newArr=getArr(arr);
for (int i = 0; i < newArr.length; i++) {
System.out.print(newArr[i]+" ");
}
}
public static char[] getArr(char[] arr) {
int p=1;
int g=4;
//3.4定义一个新的字符数组,长度为4
char[] newArr=new char[4];
//在这个方法中,循环获取用户输入的数(限制用户,只能输入65-90之间的数字,注意只能输入四次,输错也记次数)
Scanner sc=new Scanner(System.in);
for (int i = 0; i < newArr.length; i++) {
System.out.println("请输入65-90之间的第"+p+"个数字,注意还能输入"+g+"次,输错也记次数");
int number=sc.nextInt();
char Bl =(char)number;//设个变量接收键盘录入的值
//循环求原数组录入对应的值
if(number>=65&&number<=90){
for (int j = 0; j < arr.length; j++) {
if(Bl==arr[j]){
//System.out.println(arr[j]);
newArr[i]=arr[j];
}
}
}else{
System.out.println("输入有误 ");
//continue;
}p++;g--;
}
return newArr;
}
}
作者: Jerry007 时间: 2016-10-19 00:15
不懂你在求解啥,你自己都回答了啊
作者: gyy 时间: 2016-10-19 00:18
这位兄台,是不是想挣分,哈哈
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |