目录
1.练习:随机产生一个长度为5个字符的验证码:前四位是字母,最后一位是数字
1.练习:随机产生一个长度为5个字符的验证码:前四位是字母,最后一位是数字
1.可以存储并合并需要的字符,方便使用。
2.当需要的数据是需要一个一个字符合并的时候可以使用String来代替char[],更加方便。
public class demo1 {
public static void main(String[] args) {
String str = getString();
System.out.println(str);
}
private static String getString() {
Random random = new Random();
//回顾知识:当int与char类型做运算时,会全部转为int类型再计算
//存放字母a-z与A-Z,这两段字母在ascii码中不是连续的,在此处存放字母整理(不整理也行,也能在随机数上取思考来解决这个问题)
char[] characters = new char[52];
for (int i = 0; i < 26; i++) {
characters[i] = (char) ('a' + i);
}
for (int i = 0; i < 26; i++) {
characters[i + 26] = (char) ('A' + i);
}
//验证码前四位字母
String str = "";
for (int i = 0; i < 4; i++) {
int r1 = random.nextInt(52);
str += characters[r1];
}
//验证码最后一位数字:在’+‘运算中出现String类型时结果统一变为字符串类型
str +=random.nextInt(10);
return str;
}
}
2.练习:将输入的正整数存储到对应长度的字符串中
public class demo2 {
public static void main(String[] args) {
int num=10086;
int[] arr = getArr(num);
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]);
}
}
private static int[] getArr(int num) {
int a= num;
int count=0;
//得到整数位数
while (a!=0){
a/=10;
count++;
}
//得到数组
int[] arr=new int[count];
a= num;
for (int i = 0; i < count; i++) {
arr[count-i-1]=a%10;
a/=10;
}
return arr;
}
}
3.Java中如何创建二维数组?
下面给出三种创建二维数组的方法以及输出数组地址、数组的值:
1.静态初始化二维数组
public class demo3 {
public static void main(String[] args) {
//大括号里面再次用大括号来代表分组
int a[][] = new int[][]{
{1, 2, 3},
{1, 2},
{1}
};
//简化书写格式
int b[][] = {
{1, 2, 3},
{1, 2},
{1}
};
System.out.println("输出a的地址:"+a);
//输出a[i]:输出第i个一维数组的地址值
for (int i = 0; i < a.length; i++) {
System.out.println("输出a["+i+"]的地址:"+a[i]);
}
//遍历数组:数组的每行长度可以变化。
System.out.println("遍历静态数组:");
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
System.out.print(a[i][j]+" ");
}
System.out.println();
}
}
}
输出结果:
2.动态初始化二维数组
public class demo4 {
public static void main(String[] args) {
int c[][] = new int[3][6];
System.out.println("遍历动态数组:");
for (int i = 0; i < c.length; i++) {
for (int j = 0; j < c[i].length; j++) {
System.out.print(c[i][j]+"\t");
}
System.out.println();
}
}
}
输出结果:
3. 创建二维数组的特殊情况
public class demo5 {
public static void main(String[] args) {
int[][] a=new int[2][];
System.out.println("输出a的地址:"+a);
System.out.println("输出a[0]的地址:"+a[0]);
int [] b= {1,2,3,4,5};
int [] c= {1,2,3};
//地址赋值
a[0]=b;
a[1]=c;
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
System.out.print(a[i][j]+" ");
}
System.out.println();
}
}
}
输出结果: