Java学习Day2

Java学习Day2

//Demo01
package com.wz.Learning.Day2;

import java.util.Scanner;

public class Demo01 {

    public static void main(String[] args) {

        //创建一个扫描器对象,用于接收键盘数据
        Scanner sc = new Scanner(System.in);

        System.out.println("使用next方式接受:");

        if(sc.hasNext()){
            //使用next方式接收
            /*
            1. 一定要读取到有效字符才可以结束输入
            2,对输入有效字符前的空格,next()方法会自动去掉
            3.只有输入有效字符后才将后面输入的空格作为分隔符或者结束符
            4.next()不能得到带有空格的字符串
             */
            String str = sc.next();
            System.out.println("获得的内容为:" + str);

        }

        //凡是IO流的类不关闭会一直占用资源,使用完关闭
        sc.close();
    }
}

//Demo02
package com.wz.Learning.Day2;


import java.util.Scanner;

public class Demo02 {

    public static void main(String[] args) {

        Scanner sc =  new Scanner(System.in);
        System.out.println("使用nextLine方式接收:");
        /*
        1.以Enter为结束符
        2.可以获得空格
         */
        if(sc.hasNextLine()){

            String str = sc.nextLine();
            System.out.println("获得为:" + str);
            }
        sc.close();
    }

}
//Demo03
package com.wz.Learning.Day2;

import java.util.Scanner;

public class Demo03 {
    public static void main(String[] args) {
        //输入多个数字,求其总和和平均数,每个数字用回车确定,输入非数字来结束并输出结果
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入数字,按回车确认,输入非数字结束:");
        //和
        double sum = 0;
        //平均值
        double average = 0;
        //计输入多少数字
        int num = 0;
        //判断是否有输入
        while(scanner.hasNext()){
            num++;
            //如果输入为整数
            if(scanner.hasNextInt()){
                sum += scanner.nextInt();
                average = sum / num;
            }
            //如果输入为小数
            else if (scanner.hasNextDouble()) {
                sum += scanner.nextDouble();
                average = sum / num;
            }
            //如果输入非数字,结束计数并给出结果
            else{
                System.out.println("输入非数字,结束计数,总和为:" + sum);
                System.out.println("平均值为:" + average);
                break;
            }
            System.out.println("当前已经输入" + num + "个数字");
            System.out.println("当前数字总和为" + sum);


        }
        scanner.close();

    }
}

JDK7开始,表达式结果可以是字符串

//Demo04
package com.wz.Learning.Day2;

public class Demo04 {
    public static void main(String[] args) {
        //计算0到100之间计数和偶数的和
        int oddSum = 0;
        int evenSum = 0;
        for (int i = 0; i <= 100; i++) {
            if(i % 2 == 0){
                evenSum += i;
            }
            else{
                oddSum += i;
            }
        }
        System.out.println("oddSum = " + oddSum);
        System.out.println("evenSum = " + evenSum);
    }
}

//Demo05
package com.wz.Learning.Day2;

public class Demo05 {
    public static void main(String[] args) {
        //输出1-1000之间能被5整除的数,每行输出3个
//        int count = 0;
        for (int i = 1; i <= 1000; i++) {

            if (i % 5 == 0){
//                count++;
                System.out.printf("%4d ", i);
//                原做法
//                if (count % 3 == 0){
//                    System.out.println();
//                }
            }
            if (i % 15 == 0){
                System.out.println();
            }
        }
    }
}

//Demo06
package com.wz.Learning.Day2;

public class Demo06 {
    public static void main(String[] args) {
        //打印九九乘法表
        for (int i = 1; i <= 9; i++) {
            for (int i1 = 1; i1 <= i; i1++) {

                System.out.print(i + "*" + i1 + "=" + (i * i1) + "\t");
                //"\t"为缩进,相当于Tab键,作用为补全当前字符串长度到8的整数倍,最少一个空格,最多8个空格
                //运行到"\t"时,判断 **当前** 字符串长度,把当前字符串补到8的倍数
            }
            System.out.println();
        }
    }
}

//Demo07
package com.wz.Learning.Day2;

public class Demo07 {
    public static void main(String[] args) {
        //打印0-150之间所有质数
        outer:for (int i = 0; i <= 150; i++) {
            for (int j = 2; j <= i / 2; j++) {
                if(i % j == 0){
                    continue outer;
                }
            }
            System.out.print(i + " ");
        }
    }
}

//Demo08
package com.wz.Learning.Day2;

public class Demo08 {
    public static void main(String[] args) {
        //打印0-150之间所有质数
        int j;
        for (int i = 0; i <= 150; i++) {
            for ( j = 2; j <= i; j++) {
                if(i % j == 0){
                    break;
                }
            }
            if(j >= i){
                System.out.print(i + " ");
            }
        }

    }
}

//Demo09
package com.wz.Learning.Day2;

import java.util.Scanner;

public class Demo09 {
    public static void main(String[] args) {
        //打印三角形
        int high = 0;
        Scanner scanner = new Scanner(System.in);
        System.out.print("输入三角形的高度:");
        if (scanner.hasNextInt()) {
            high = scanner.nextInt();
            scanner.close();
        }
        else{
            System.out.println("数据不合法!");
            scanner.close();
        }
        for (int i = 0; i <= high; i++) {
            for (int k = 0; k < (high - i); k++) {
                System.out.print(" ");
            }
            for (int j = 0; j < 2 * i - 1; j++) {
                System.out.print("*");

            }
            System.out.println();
        }

    }
}

posted @ 2025-04-12 14:53  8智1敏1力  阅读(21)  评论(0)    收藏  举报