Java:比较随机数的大小

原题:* 随机产生10个1~1000之间的整数,放在一个数组中,求出其中的最大值和最小值,要求不能使用sort()方法
* 书本305页

参考代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package cn.puruidong.accp_14;
/**
 * @author PuRuidong
 *
 */
/*
 * 随机产生10个1~1000之间的整数,放在一个数组中,求出其中的最大值和最小值,要求不能使用sort()方法
 * 书本305页
 */
public class Num {
    private static int sum [] = new int [10];//定义数组
    private int max ;//定义最大值
    private int min ;//定义最小值
   
    public void setSum(int[] sum){//获取数组,并输出结果
        this.sum=sum; //引用当前变量
        for (int i=0;i<sum.length;i++){ //产生随机数,并将随机数存入数组
            int random1 = (int)(Math.random()*1000) ;//产生随机数
            sum[i]=random1;//将所产生的随机数存入数组
        }
        max = sum[0];//假设最大值是数组中下标为0的数字
        min = sum[9];//假设最小值是数组中下标为9的数字
        for (int j=0;j<sum.length;j++){ //判断最大值与最小值
            if (sum[j]>max){ //判断最大值
                max=sum[j];
            }else if (sum[j]<min){ //判断最小值
                min = sum[j];
            }
        }
        for (int c=0;c<sum.length;c++){//看下数组,别让数字乱了...
            System.out.print(sum[c]+" ");
        }
        System.out.println();
        System.out.println("***********************");
        System.out.println("最大值是:"+max);
        System.out.println("最小值是:"+min);
    }
   
    public int[] getSum (){
        return sum ;
    }

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Num center = new Num ();
        center.setSum(sum);
        center.getSum();

    }

}

Java:向整形数组插入元素

原题:编写程序。向整形数组的指定位置插入元素,并输出插入前后数组的值。

参考:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
package cn.puruidong.accp_14;

/**
 * @author PuRuidong
 *
 */
/*
 * 编写程序。向整形数组的指定位置插入元素,并输出插入前后数组的值。
 * 书本:306页
 */
import java.util.Scanner;
public class Fivenum {

    /**
     * @param args
     */
    private int num [] = new int[] {10,20,30,55,99};//原数组
    private int no [] = new int [num.length+1];//新数组
    private static Scanner sc = new Scanner (System.in);
    private static int index ;//录入想插入的位置
    private static int value ;//录入想插入的值
   
    public void show (int index ,int value){
        ////////////输出插入前的数组
        System.out.println("插入前的数组:");
        for (int i=0;i<num.length;i++){//输出插入前的数组
            System.out.print(num[i]+" ");
        }
        /////赋值数组
        for (int c=0;c<num.length;c++){
            no[c] = num[c];
        }
        System.out.println();
            System.out.println("请输入想插入的位置(0~4):");
            index = sc.nextInt(); //录入想插入的位置
            System.out.println("请输入想插入的数值:");
            value = sc.nextInt(); //录入想插入的值
       
        for (int j=no.length-1;j>index;j--){ ////元素后移
            no[j] = no[j-1];
        }
        no[index] = value; //将 value的值放在index位置
        System.out.println("插入后的数组:");
        /////输出插入后的数组
        for (int k=0;k<no.length;k++){
            System.out.print(no[k]+" ");
        }
    }
   
    public static void main(String[] args) {
        // TODO Auto-generated method stub
    Fivenum center = new Fivenum ();
    center.show(index, value);

    }

}

CN域名恢复个人注册

5月28日消息,中国互联网络信息中心(CNNIC)今日发布公告,宣布将从明日开始实施修订后的域名注册实施细则。新则规定,.CN和.中国域名注册的主体扩大至自然人。

CN域名曾经有过辉煌的历史,据CNNIC第23次统计报告,2008年底,CN域名数量曾经高达1357万,占有中国市场份额高达80.7%,在全球仅次于COM域名,成为全球第二大顶级域名。

然而,CNNIC对于CN域名的管理存在很大问题,2009年前,管理松的时候1元钱域名随便注册,2009年底开始又进行严厉管理,叫停个人注册CN域名,整顿域名注册,不但要求域名注册人提供真实姓名,还在逐步实行站长备案照相制度,大量站长的CN域名被强制注销或锁定(ClientHold)。

CNNIC实施的众多域名政策,导致站长注册域名和网站运作非常不利,使得广大站长对CN域名失去兴趣。在域名和网站交易市场,大量CN域名都受到冷落,买家闻CN色变,种种因素导致CN域名数量不断猛降。

三年后,2011年底,CNNIC第29次统计报告,CN域名数量350万,下降高达1000万,同时,中国的网站数量也从2008年底的287万下降到2011年底的183万。

CN域名

CN域名的不可控风险将站长赶到了国外的域名注册商,大量中国用户都将域名转移(Transfer)到国外注册商(例如Godaddy),价格也非常便宜,然而,从2011年开始,中国的电信运营商开始批量屏蔽Godaddy的DNS服务,这导致使用GodaddyDNS的网站域名无法从中国解析,一些站长又将域名迁移到国内,另一些则使用第三方的DNS服务。

我早在2009年1月份的时候,就预言到了CN域名的种种问题,并呼吁广大站长不要注册CN域名,现在,在CN域名的管理问题依旧存在的情况下,CN域名又要开始恢复个人注册,还会有人上当吗?

原文:http://www.williamlong.info/archives/3106.html

Java:模拟账户查询,实现存取款

要求:
模拟银行账户业务,添加带参方法存款和取款,存款初始为0,取款时需要判断余额是否充足。

参考代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
package cn.puruidong.accp_13;
import java.util.Scanner;
/*
 * 1.选择菜单
 * 2.定义3个菜单,0,1,2
 * 3.选择0时用System.exit(0);终止JVM实例
 * 4.选择1或2时录入数据,并存入cunkuan或qukuan方法中
 * 5.定义cunkuan,qukuan方法,存入刚才的数据,并执行输出
 * 6.书本第285页
 */
public class Account {
    private static double sum = 0.0;//定义余额
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int operation = 0; //定义菜单
        double money = 0.0;//定义输入的金额
        while(true){
            System.out.println("1:存款\t2.取款\t0.退出");
            System.out.print("请选择你需要办理的业务:");
            operation = sc.nextInt();
            switch(operation){
            case 0:
                System.out.println("谢谢使用!");
                System.exit(0);
                /*
                 * public static void exit(int status)终止当前正在运行的 Java 虚拟机。
                 * 参数用作状态码;
                 * 根据惯例,非 0 的状态码表示异常终止。
                 * 该方法调用 Runtime 类中的 exit 方法。该方法永远不会正常返回。
                 * 调用 System.exit(n) 实际上等效于调用:
                 * Runtime.getRuntime().exit(n)
                 */
                break;
            case 1:
                System.out.print("请输入存款金额:");
                money = sc.nextDouble();
                cunKuan(money);//将数字money赋值给cunkuan????
                break;
            case 2:
                System.out.print("请输入取款金额:");
                money = sc.nextDouble();
                quKuan(money);//将数字money赋值给qukuan????
                break;
            }
        }
    }
   
    //////////////写在类中,禁止写在主方法里!!!!!!

    private static void cunKuan(double money) { //输出结果
        /*
         * 静态的方法不能调用非静态的方法,所以在void前面要加上static。
         */
        sum += money;
        System.out.println("存款成功!");
        System.out.println("***余额为:" + sum + " ***");
        System.out.println();
    }

    private static void quKuan(double money) { //输出结果
       
        if(money>sum){
            System.out.println("抱歉,余额不足!");

        }else{
            sum -=money;
            System.out.println("取款成功!");
            System.out.println("***余额为:" + sum + " ***");
        }
        System.out.println();
    }
}

Java:带参方法查找客户

根据需要查找客户姓名,给出查找结果。

  1. 录入客户姓名;
  2. 输出刚才录入到数组中的姓名;
  3. 录入需要查找的姓名;
  4. 跟数组中的姓名一一比对;
  5. 输出结果。

参考代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
package cn.puruidong.accp_13;

/**
 * @author PuRuidong
 *
 */
/*
 * 查找客户姓名
 * 书本:272页
 */
import java.util.Scanner ;
public class User {
    private String choose ;//定义选择是否继续查找
    private String seachname ;//定义在数组中查找名字
    Scanner sc = new Scanner (System.in);//定义录入
    String name1 [] = new String [5];//定义数组存储客户的姓名
   
    public void show (){//作用:循环录入姓名
        for (int i=0;i<name1.length;i++){ //循环录入
            System.out.println("请输入客户的姓名:");
            name1[i]=sc.next();
            System.out.println("继续输入吗(y/n):");
            choose = sc.next();
            if (!"y".equals(choose)){ //当输入的不等于y时,退出循环
                break;
            }
        }
       
    }
   
    public boolean newshow (String name){ //作用:循环输出原数组,并且在数组中查找名字
        boolean fild = false ; //定义返回值
        for (int i=0;i<name1.length;i++){ //输出原数组
            System.out.print(name1[i]+"\t");
        }
        System.out.println();
        System.out.println();
        System.out.println("请输入您要查找的姓名:");
        seachname = sc.next(); //录入需要查找的新名字
        System.out.println("*******查找结果*******");
        for (int i=0;i<name1.length;i++){ //输出查找结果
            if (seachname.equals(name1[i])){
                System.out.println("找到了!");
                System.exit(0);//当找到的时候,使用此方法结束循环.也可以使用break(需要添加一些代码,否则会多输出)来结束.
            }
        }
        System.out.println("不好意思,找不到这个人耶!");
        return fild ;
    }
   
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        User center = new User ();//创建对象
        String name=""; //定义名字的String
        center.show();
        System.out.println("****************************");
        System.out.println("客户姓名列表:");
        System.out.println("****************************");
        center.newshow(name);
    }
}