今天我来分享一下突然想到的一个有意思的小程序,这个小程序实现了
1.char类型输入
2.字符如何转化为整型
3.对字符进行排序输出
4.冒泡排序法
一、读取用户输入的字符并且只能输出指定数量(类似于密码验证)
System.out.println("请你输入6个字符:");
String num = in.nextLine();
String newnum = panDunSixZiFu(num);//调用方法判断是否输入的是6个字符
//判断是否是输入了六个字符,包括汉字
private static String panDunSixZiFu(String num) {
String newnum = num;
char[] strCharArrray = num.toCharArray();
int temp = strCharArrray.length;
System.out.println("输入的字符长度:"+temp);
while(temp != 6) {
System.out.println("输入有误!请重新输入:");
// in.nextLine();
newnum = in.nextLine();
strCharArrray = newnum.toCharArray();
temp = strCharArrray.length;
}
return newnum;
}
二、将字符转化为整型
//按顺序读取6个字符
for (int i = 0; i < into.length; i++) {
into[i] = newnum.charAt(i);
}
//输出输入的6个字符
System.out.println("你输入的6个字符是:"+Arrays.toString(into));
int[] intnum = new int[6];
//将输入的6个字符转换成6个整型
for (int i = 0; i < intnum.length; i++) {
intnum[i] = into[i];
// System.out.println(intnum[i]);//输出对应的整型,包括中文
}
三、进行排序
paiXu(intnum);//将6个整型排序
//冒泡排序,从小到大
private static void paiXu(int[] arr) {
int temp = 0;
for (int i = 0; i < arr.length - 1; i++) {
for (int j = 1; j < arr.length; j++) {
if(arr[j-1] > arr[j] ) {
temp = arr[j-1];
arr[j-1] = arr[j];
arr[j] = temp;
}
}
}
}
四、输出用户输入的字符
char[] endnum = new char[6];
for (int i = 0; i < intnum.length; i++) {
endnum[i] = (char)intnum[i];
}
System.out.println("排序后的6个字符是:"+Arrays.toString(endnum));
in.close();