《JAVA实验3 常用类.docx》由会员分享,可在线阅读,更多相关《JAVA实验3 常用类.docx(7页珍藏版)》请在三一办公上搜索。
1、JAVA实验3 常用类实验3 常用类 1. 编写一个Java应用程序。用户从键盘输入一个整数,程序将判断这个数是几位数并输出其位数,并判断这个数是否是回文数。回文数是指将该数含有的数字逆序排列后得到的数和原数相同,例如12121、3223都是回文数。要求:定义两个方法,一个用于获取一个整数的位数,一个用于返回一个整数是否为回文数。 package shiyansan1; import java.util.Scanner; public class huiwenshu public static void main(String args) / TODO Auto-generated metho
2、d stub Scanner sc = new Scanner(System.in); System.out.print(Please input the number: ); String word = sc.next; int i = word.length; int j = 0; while (j = (i / 2) -1 & word.charAt(j) = word.charAt(i - j - 1) j+; if (j = i / 2) System.out.println(word+是+i+位数.); System.out.println(word+是回文数。); else Sy
3、stem.out.println(word+是+i+位数。); System.out.println(No it is not HuiWen.); sc.close; 2. 编写一个程序,由用户从键盘输入一个字符串,程序输出该字符串中的大写英文字母数,小写英文字母数以及非英文字母数。 package shiyansan2; import java.util.Scanner; public class zifu public static void main(String args) / TODO Auto-generated method stub System.out.print(请输入字符
4、串:); Scanner input = new Scanner(System.in); String word=input.next; int l=word.length; int a=0,b=0,c=0; for(int j=0;j=A & word.charAt(j)=a & word.charAt(j)=z) b+; else c+; System.out.println(大写字母的个数为:+a); System.out.println(小写字母的个数为:+b); System.out.println(非英文字符的个数为:+c); 3. 在安排教师监考时,需要从一组教师中随机选取n个教
5、师参加监考。要求实现一个类RandomTeacher的静态方法public static String getRandomTeachers(String teachers, int n),能够从teachers中随机选择n个教师并返回。 1 package shiyansan3; import java.util.Arrays; import java.util.Scanner; public class RandomTeacher public static String getRandomTeachers(String teachers, int n) String arr = new S
6、tringn; String tmp = ,; for(int i = 0; i n; i+) int rand = (int)(Math.random * teachers.length); if(!tmp.contains(, + rand + ,) arri = teachersrand; tmp += rand + ,; else i-; return arr; public static void main(String args) Scanner input=new Scanner(System.in); System.out.print(请输入调用的教师人数n:); int n=
7、input.nextInt; System.out.print(该轮自动产生的随机教师分别为:); String arr = getRandomTeachers(new String白玉,李雪梅,张宇心,秦子臻,刘凯乐,单新增,曾新旺,明途,徐子墨,魏温涛, n); System.out.println(Arrays.toString(arr); 4. 假设某餐馆中每桌顾客点菜记录的格式为“北京烤鸭:189 西芹百合:15 清蒸鲈鱼:80”。编写一个类的方法,能够根据点菜内容对应的字符串输出点菜记录中每种菜的价格以及总的价格。 package shiyansan4; public class
8、diancai public static void main(String args) String str = 北京烤鸭:189 西芹百合:15 清蒸鲈鱼:80; String foods = str.split( );/拆分字符串 每个字符串保留一道菜的信息 double total = 0; for (int i = 0; i foods.length; i+) String food =foodsi.split(:);/拆分字符串 分出菜名和单价 System.out.println(菜品:+food0+t单价:+food1); total = total+Double.parseD
9、ouble(food1); System.out.println(以上菜品总价为:+total); 5. 编写一个方法,返回一个double型的二维数组,数组中的元素通过解析字符串参数获得。例如,字符串参数:“1,2;3,4,5;6,7,8”,对应的数组为: d0,0 = 1.0 d0,1 = 2.0 d1,0 = 3.0 d1,1 = 4.0 d1,2 = 5.0 d2,0 = 6.0 d2,1 = 7.0 d2,2 = 8.0 package shiyansan5; import java.util.Scanner; public class erwei doublecount(Strin
10、g s) Strings1=s.split(;); doublearray=new doubles1.length; for(int i=0;is1.length;i+) Strings2=s1i.split(,); arrayi=new doubles2.length; for(int i=0;is1.length;i+)/初始化数组; Strings2=s1i.split(,);/将s1i以 , 分割,存入s1; arrayi=new doubles2.length; for(int i=0;is1.length;i+) Strings2=s1i.split(,); for(int j=0
11、;js2.length;j+) arrayij=Double.parseDouble(s2j); return array; 2 void print(double array) for(int i=0;iarray.length;i+) for(int j=0;jarrayi.length;j+) System.out.print(d+i+,+j+=+arrayij+ ); System.out.println; public static void main(String args) / TODO Auto-generated method stub Scanner sc=new Scanner(System.in); String s=new String; System.out.println(请输入字符串:); while(sc.hasNext) s=sc.next; erwei str=new erwei; double a=str.count(s); str.print(a); 3