第一周第四天([大小写变换问题][判断是否为email][求对角线的值] [生成数组][数字中添加逗号][生成10个两位随机数,然后再进行排序] [复制数组||将指定数组的指定范围复制到新的数组])

来源:互联网 发布:淘宝换货 编辑:程序博客网 时间:2024/06/06 06:34

目录

一组数字中每三个添加一个逗号
生成10个两位随机数,然后再进行排序
生成10个两位随机数,然后再进行排序
复制指定数组||将指定数组的指定范围复制到一个新数组
生成一个三行三列的数组
大小写变换问题
求对角线的值
[判断是否为email] (#h)

一组数字中每三个添加一个逗号

/********** 一组数字中每三个添加一个逗号***********/package com.day4_2015_7_17;public class a {    public static void main(String[] args) {//StringBuffer线程安全的可变字符序列。一个类似于 String 的字符串缓冲区,但不能修改.//虽然在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容。 //StringBuffer 上的主要操作是 append 和 insert 方法,可重载这些方法,以接受任意类型的数据。//每个方法都能有效地将给定的数据转换成字符串,然后将该字符串的字符添加或插入到字符串缓冲区中。//append 方法始终将这些字符添加到缓冲区的末端;而 insert 方法则在指定的点添加字符。         StringBuffer s=new StringBuffer("123456789");         for (int i = s.length()-3;i>0; i-=3) {         s.insert(i, ",");//每三个数加一个,         }         System.out.println(s);     s.append("h");//在数字末端加"h"    System.out.println(s);    }}

生成10个两位随机数,然后再进行排序

/******************生成10个两位随机数,然后再进行排序***************/package com.day4_2015_7_17;import java.util.Arrays;import java.util.Random;public class b {    public static void main(String[] args) {    int a[] = new int[10];//这里的数组作用是为了用来盛放生成的随机数的,    //因为电脑每次只能生成一个随机数    Random random = new Random();//生成随机数    //用一个for循环,从下标0开始循环十次    for (int i = 0; i < a.length; i++) {        int j = random.nextInt(100);//生成100以内的随机数赋值给j        while (j < 10) {            j = random.nextInt(100);//当生成的随机数小于10时再生成随机数        }        a[i] = j;//把生成的随机数赋值给数组a    }    Arrays.sort(a);//一种排序方法。对数组a按从小到大进行排序    //这里的for循环是为了能把排好的随机数依次打出来    for (int k = 0; k < a.length; k++) {        System.out.print(a[k] + "\t");    }}}

生成10个两位随机数,然后再进行排序

/******************生成10个两位随机数,然后再进行排序***************/package com.day4_2015_7_17;import java.util.Arrays;import java.util.Random;public class c {    public static void main(String[] args) {    int[] array=new int[10];    //for循环十次生成十个随机数        for (int i = 0; i < 10; i++) {            Random random=new Random();//生成随机数的方法            array[i]=random.nextInt(90)+10;//让生成的随机数是两位整数            System.out.println(array[i]);       }        //冒泡排序法        int temp=0;        for (int i = 0; i < array.length-1; i++) {        //这里的for循环是用来控制排序轮数            for (int j = 0; j < array.length-i-1; j++) {            //这里的for循环是用于比较数组中每个临近元素的大小,                //以确定是否交换位置,对比和交换次数随排序轮数而减少                if (array[j]<array[j+1]){                    temp=array[j];                    array[j]=array[j+1];                    array[j+1]=temp;                System.out.println(Arrays.toString(array));                }                }            }        System.out.println(Arrays.toString(array));    }}

复制指定数组||将指定数组的指定范围复制到一个新数组

/*******复制指定数组||将指定数组的指定范围复制到一个新数组*********/package com.day4_2015_7_17;import java.util.Arrays;public class d {    public static void main(String[] args) {    int[]scores1={80,43,74,21,9,12,13,43,53};    scores1 = Arrays.copyOf(scores1,2);//复制指定数组    for (int i = 0; i < scores1.length; i++) {        System.out.print(scores1[i]+"\t");    }    System.out.println();    int[]scores2={80,43,74,21,9,12,13,43,53};    scores2=Arrays.copyOfRange(scores2,1,3);//将指定数组的指定范围复制到一个新数组。    for (int i = 0; i < scores2.length; i++) {        System.out.print(scores2[i]+"\t");    }    }}

生成一个三行三列的数组

/************生成一个三行三列的数组****************************/package com.day4_2015_7_17;public class e {    public static void main(String[] args) {        int[][]array=new int[3][];//声明一个二维数组        array[0]=new int[]{4,9,2};        array[1]=new int[]{3,5,7};        array[2]=new int[]{8,1,6};        for (int i = 0; i < array.length; i++) {//循环列            int[] item=array[i];//声明一个新的数组item,            for (int j = 0; j < item.length; j++) {                System.out.print(item[j]+" ");//每循环一次得到一行            }            System.out.println();        }    }       }

大小写变换问题

/**********大小写变换问题**************/package com.day4_2015_7_17;public class f {    public static void main(String[] args) {            String s="dfdfg23SDGDFHGdsG";        for (int i = 0; i < s.length(); i++) {             char c=s.charAt(i);             if (Character.isLowerCase(c)){//判断是否为小写字母                c=Character.toUpperCase(c);//把小写字母转换为大写字母                System.out.print(c);             }             else{                if(Character.isUpperCase(c)){//判断是否为大写字母                    c=Character.toLowerCase(c);//把大写字母转换为小写字母                 }                   System.out.print(c);             }        }    }}

求对角线的值

/***********求对角线的值*******************/package com.day4_2015_7_17;import java.util.Random;public class g {    public static void main(String[] args) {        int indexMax=5;        int [][] a=new int[indexMax][indexMax];//五行五列的二维数组        Random random=new Random();//产生随机数的方法        for (int i = 0; i < indexMax; i++) {            for (int j = 0; j < indexMax; j++) {                a[i][j]=random.nextInt(9)+1;            }        }        for (int i = 0; i <indexMax; i++) {            for (int j = 0; j < indexMax; j++) {                System.out.print(a[i][j]+"\t");            }            System.out.println();        }        //求对角线的值        int sum=1;        int sum2=1;        for (int i = 0; i <indexMax ; i++) {            sum=sum*a[i][i];            sum2=sum*a[i][indexMax-1-i];        }        System.out.println("主对角线"+sum);        System.out.println("副对角线"+sum2);    }}

判断是否为email

/*************判断是否为email********************/package com.day4_2015_7_17;import java.util.Scanner;public class h {    public static void main(String[] args) {        Scanner scan = new Scanner(System.in);        String email = scan.next();//从键盘输入一个Email地址        boolean isEmail = false;        if(email.contains("@"))//如果此字符串包含'@',此方法返回true,否则返回false。        {            if(email.indexOf("@")==email.lastIndexOf("@"))                //s.indexOf()返回指定字符在此字符串中第一次出现处的索引。                //s.lastIndexOf()返回指定字符在此字符串中最后一次出现处的索引            {                String emailStart = email.substring(0, email.indexOf("@"));                //s.substring(a,b)返回一个新字符串,它是此字符串的一个子字符串。                boolean isLetterOr_OrNum=isLetterOrNum(emailStart);                //s.isLetterOrNum()在下面的主程序中定义了这个方法,传入一个字符串作为变量,                //即可实现判断这个字符串中是否是字母数字下划线                if(isLetterOr_OrNum)                {                    if(email.endsWith(".com")||email.endsWith(".cn")||email.endsWith(".net"))                    //endsWith测试此字符串是否以指定的后缀结束                    {                        String emailMiddle  = email.substring(email.lastIndexOf("@")+1, email.lastIndexOf("."));                        isEmail=isLetterOrNum(emailMiddle);                        //isLetterOrNum在下面的主程序中定义了这个方法,传入一个字符串作为变量,                        //即可实现判断这个字符串中是否是字母数字下划线                    }                }            }        }        if(isEmail)//isEmail是个布尔值        {            System.out.println("IsEmail");        }else        {            System.out.println("IsNotEmail");        }       }    //这是写的一个方法,在主程序中调用这个方法,传入一个字符串作为变量,    //即可实现判断这个字符串中是否是字母数字下划线    public  static boolean isLetterOrNum(String  s) {        boolean isLetterOrNum=true;        for (int i = 0; i < s.length(); i++)         {            char ch=s.charAt(i);//charAt()方法返回指定索引位置的char值            if(!(Character.isLetter(ch)||Character.isDigit(ch)||(ch=='_')))            //s.isLette()此方法返回true,如果字符是字母,否则返回false            //s.isDigit()此方法返回true,如果字符是数字,否则为false。            {                isLetterOrNum=false;                break;            }        }        return isLetterOrNum;    }}
0 0