java的初级学习(一)

简单的几个小例子:
java的初级学习(一)简单的几个小例子:
 1. 标准输入
 2. 标准输出
 3. 重定向实现程序日志
 4  自动类型转换盒强制转换:(转换类型)被转换类型
 5. 位运算简单加密
 6.三元运算符来判断奇偶数
 7. 判断闰年
 8. 验证登陆信息的合法性
 9. 杨辉三角
 10.画一个菱形


 
 

代码如下:</span></span>
package pack.com;
import java.io.FileNotFoundException;
import java.io.PrintStream;
import java.math.BigDecimal;
import java.util.Scanner;
public class test{
    public static void main(String[] args){
        WriteHeart();
    }
    //例11::写一个菱形
    public static void WriteHeart(){
        int size=19;
        if(size%2==0){
            size++;
        }  //计算菱形大小
        for(int i=0;i<size/2+1;i++){
            for(int j=size/2+1;j>i+1;j--){
                System.out.print(" "); //输出左上角位置的空白
            }
            for(int j=0;j<2*i+1;j++){
                if(j==0||j==2*i){
                    System.out.print("*");//输出菱形上半部分边缘
                }else{
                    System.out.print(" ");//输出上半部分空心
                }
            }
            System.out.println("");//换行
        }
        for(int i=size/2+1;i<size;i++){
            for(int j=0;j<i-size/2;j++){
                System.out.print(" ");//输出菱形左下半空白
            }
            for(int j=0;j<2*size-1-2*i;j++){
                if(j==0||j==2*(size-i-1)){
                    System.out.print("*");//输出菱形下半部边缘
                }else{
                    System.out.print(" ");
                }
            }
            System.out.println("");
        }
    }        
    
    
    public static void WriteAbc(){
        BigDecimal sum = new BigDecimal(0.0);//和
        BigDecimal factorial = new BigDecimal(1.0);//阶乘项的计算结果
        int i = 1;//循环增量
        while(i<=20){
            sum= sum.add(factorial);//累加各项阶乘的和
            ++i;
            factorial = factorial.multiply(new BigDecimal(1.0/i));//计算阶乘项
        }
        System.out.println("1+1/2!+1/3!+++ 1/20!\n"+sum);
        
    }    
    //例10::杨辉三角
    public static void WriteYangTriangle(){    
        int tri[][] = new int[13][];//定义二维数组以存放数据
        for(int i=1;i<tri.length;i++){//遍历第一层
            tri[i]=new int[i+1];//初始化第二层大小
            for(int j=0;j<=i;j++){//遍历第二层
                if(i==0||j==0||j==i){//将三角的两边均置一
                    tri[i][j]=1;
                    }else{
                        tri[i][j]=tri[i-1][j]+tri[i-1][j-1];//其余的就用定义,某点值是上一排的左边两值之和
                    }
                System.out.print(tri[i][j]+"\t");
            }
            System.out.println();//换行
        }
        System.err.println("Game Over");
    }                
        //chengfakoujue
    public static void Write99(){        
        for(int i=1;i<10;i++){    //循环控制变量从1到9
            for(int j=1;j<=i;j++){//第二层循环其最大控制变量应等于第一层的
                int sum = i*j;
                System.out.print(j+"*"+i+"="+sum+"\t");
            }
            System.out.println("");//每一I完了之后换行
        }
        System.err.println("Game Over");
    }        
        //例九::验证登陆信息的合法性
    public static void JudgeMoney(){        
        while(true){
            Scanner input = new Scanner(System.in);//创建扫描器
            System.out.println("请输入金额:");
            String rebate = "";
            int money = input.nextInt();
            String line = input.nextLine();
            if(money>=200){
                int inter = (int)money/100;
                switch(inter)
                {
                case 1:    rebate="打九五折";break;
                case 2: rebate="8.5折";break;
                case 3: rebate="8*** ";break;
                default:{rebate="1$$$ ";
                    }}}else{
                    rebate="抱歉,购物总金额低于200,只能获得小礼品一份!";
                    }
        System.err.println(rebate);
        if(line.equals("exit"))break;//若不想登陆,则选择退出
    }
        }    
    //例八::验证登陆信息的合法性
    public static void JudgeLogin(){        
        while(true){
            Scanner input = new Scanner(System.in);//创建扫描器
            System.out.println("请输入用户名");
            String username = input.nextLine();//接受用户名
            System.out.println("请输入用户密码");
            String userpassword = input.nextLine();//接受用户密码
        if(!username.equals("luoyujie")){    //判断密码合法性
            System.err.println("该用户未注册,不是合法用户");
        }else if(!userpassword.equals("123456")){//同时,并列判断密码
            System.err.println("登陆密码错误");
        }else{//分支下来先用户名,密码均正确,登陆成功,退出
            System.out.println("congradulate!!");
            break;
        }
        System.out.println();
        if(username.equals("exit"))break;//若不想登陆,则选择退出
    }
        }
    //例七::判断闰年
    public static void JudgeSpecialYear(){
                while(true){
                Scanner input = new Scanner(System.in);//创建输入流扫描器
                System.out.println("请输入需要判断的年");
                long year;
                
                try {
                    year = input.nextLong();//将输入流转换为long类型
                    
                    if(year%4==0&&year%100!=0||year%400==0){//满足判断条件;1,能被4整除 2,不能被100整除  其次,能被400整除
                        System.out.println(year+ "是闰年");
                        
                    }else{
                        System.out.println(year + "不是闰年");
                    }
                } catch (Exception e) {
                    // TODO: handle exception
                    System.out.println("您输入的不是有效年");
                }
                String line= input.nextLine();//将输入的量转变为字符型
                if(line.equals("exit"))break;
                }
                }            
    //使用异或来实现两个变量交换;
    public static void exchange(){
        Scanner input = new Scanner(System.in);//创建输入流扫描器
        System.out.println("请输入整数A");
        long A = input.nextLong();//获取用户的输入整数
        System.out.println("请输入整数B");
        long B = input.nextLong();//获取用户的输入整数
        A=A^B;
        B=B^A;
        A=A^B;
        System.out.println("A="+A+"\tB="+B);
        }            
    //例六::三元运算符来判断奇偶数
    public static void JudgeInterger(){
            Scanner input = new Scanner(System.in);//创建输入流扫描器
            System.out.println("请输入整数");
            long num = input.nextLong();//获取用户的输入整数
            String check = (num%2 == 0)? "这个数字是:偶数":"这个数字式:奇数";//三元运算)(条件表判断的Boolean)?结果一:结果二;结果一为条件的True
            System.out.println(check);
            }            
    //例五::位运算简单加密 “ ^ ”
    public static void autoCode(){
    while(true){
    System.out.println("请输入一个英文字符串或解密字符组");    
    Scanner input = new Scanner(System.in);    
    String passward = input.nextLine();//获取用户输入
    char[] array = passward.toCharArray();//获取用户字符数组
    for(int i = 0;i<array.length ; i++){//遍历每个字符数组
        array[i] = (char)(array[i]^20000);//对每个数组元素进行异或运算
        }
    System.out.println("加密或解密结果如下");
    System.err.println(new String(array));//输出秘钥
    System.out.println("按任意键继续:");
    String line = input.nextLine();//扫描执行当前行,返回跳过的当前信息
    if(line.equals("exit"))break;//当exit时退出
        }
    }
    //例四::自动类型转换盒强制转换:(转换类型)被转换类型
    public static void autoTurn(){
        byte b = 127;
        char c ='W';
        short s = 23456;
        int i = 344;
        long l = 243424252L;
        float f = 3.14159F;
        double d = 54.4234;//低类型自动向高类型转换,整数double自动转为int ,而浮点数据自动转换为double
        System.out.println("byte="+b+" char="+(b+c)+" short="+(b+c+s)+" int="+(b+c+s+i)+" long="+(b+c+s+i+l));
        System.out.println("累加float="+(b+c+s+i+l+f)+" 累加double+"+(b+c+s+i+l+f+d));
        System.out.println("把long类型妆欢为int: "+(int)l);
        System.out.println("把long类型自动转换为short"+(short)l);
        System.out.println("把double类型转换为int"+(int)d);
        System.out.println("把short转换为char"+(char)s);
    }        
    //例三::重定向输出流实现程序日志
    public static void reName(String[] args){
        try{
            PrintStream out = System.out;//保存原输出流
            PrintStream ps = new PrintStream("./log.txt");//创建文件输出流
            System.setOut(ps);//设置使用新的输出流
            int age = 18;//定义整形变量
            System.out.println("年龄变量成功定义,初始值为18");
            String sex ="女";//定义字符型变量
            System.out.println("性别变量成功定义,初始值为女");
            //整合两个变量
            String info = "这是个"+sex+"孩子,应该有"+"岁了";
            System.out.println("整合两个变量为info字符串变量,其结果为:"+ info);
            System.setOut(out);
            System.out.println("程序运行完毕,请查看日志文件");        
        }catch (FileNotFoundException e){
            e.printStackTrace();
                }
        }        
    //例二::标准输入输出id        
    public  static   void inputId(){        
        Scanner input  = new Scanner(System.in);//标准输入Scanner
        System.out.println("请输入你的id:");
        //String name = input.next();
        while(true){//一直循环输入
        String line = input.nextLine();//扫描执行当前行,返回跳过的当前信息
        if(line.equals("exit"))break;//当exit时退出
        System.out.println("你的id信息是:"+line);
        //System.err.println("\t 在运行期间手动输出一个错误信息");
    }
        }    
    //标准字符的系统输入
    public  static   void inputway(){        
        //例一::输出一组字符串
        Scanner input  = new Scanner("jkjh klk oi i oij jkj ih");
        //input.useDelimiter("|,|\\.");//可用于分隔符
        while(input.hasNext()){
            System.out.println(input.next());
            }
        }
}

 


                
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值