栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

javase(第一章)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

javase(第一章)

javase基础(第一章)

文章目录
  • javase基础(第一章)
    • 一、赋值运算符
    • 二、关系运算符
    • 三、逻辑运算符
    • 四、位运算符
    • 五、三元运算符
    • 六、条件判断语句
    • 七、选择语句
    • 八、循环语句
      • 1、for循环
        • for循环语句格式
      • 2、while循环
        • while循环语句格式
      • 3、do while循环
        • do...while循环语句格式
    • 九、跳转控制语句
      • 1、continue
      • 2、break
    • 十、Random类
    • 练习题:

一、赋值运算符

例题:

public class Test1 {
    public static void main(String[] args) {
        int a=10;//赋值
        int n=5;
        a+=n;//加后赋值,a=15
        System.out.println(a);
        a-=n;//减后赋值,a=10
        System.out.println(a);
        a*=n;//乘后赋值,a=50
        System.out.println(a);
        a/=n;//除后赋值,a=10
        System.out.println(a);
    }
}
二、关系运算符

class Test {
    public static void main(String[] args) {
      // 关系运算符
      // 1、==
      int a=10;
      int b=20;
      System.out.println(a==b);// false
      // 2、!=
      System.out.println(a!=b);// true
      //3、>
      System.out.println(a>b);//false
      //4、>=
      System.out.println(a>=b);//false
      //5、<
      System.out.println(a 
三、逻辑运算符 

class Test {
    public static void main(String[] args) {
      // 逻辑运算符
      // 1、&  一假必假
      System.out.println(true & false);
      System.out.println(true & true);
      System.out.println(false & false);
      System.out.println("------------------");
      // 2、|  一真必真
      System.out.println(true | false);
      System.out.println(true | true);
      System.out.println(false | false);
      System.out.println("------------------");
      // 3、^  不同为真,相同为假
      System.out.println(true ^ false);
      System.out.println(true ^ true);
      System.out.println(false ^ false);
      System.out.println("------------------");
      // 4、! 真即是假,假即是真
      System.out.println(!true);
      System.out.println(!false);
      System.out.println("------------------");
      
      char ch = 'a';
      int number1 = 96;
      System.out.println(ch & number1);
    }
}
四、位运算符

Java定义了位运算符,应用于整数类型(int),长整型(long),短整型(short),字符型(char),和字节型(byte)等类型。

位运算符作用在所有的位上,并且按位运算。

下表列出了位运算符的基本运算,假设整数变量 A 的值为 60 和变量 B 的值为 13:

操作符描述例子
&如果相对应位**都是1**,则结果为1,否则为0(A&B),得到12,即0000 1100
|如果相对应位==都是 0==,则结果为 0,否则为 1(A | B)得到61,即 0011 1101
^如果相对应位值相同,则结果为0,否则为1(A ^ B)得到49,即 0011 0001
〜按位取反运算符翻转操作数的每一位,即0变成1,1变成0。(〜A)得到-61,即1100 0011
<<按位左移运算符。左操作数按位左移右操作数指定的位数。A << 2得到240,即 1111 0000
>>按位右移运算符。左操作数按位右移右操作数指定的位数。A >> 2得到15即 1111
>>>按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。A>>>2得到15即0000 1111
class Test {
    public static void main(String[] args) {
          int a = 60; 
          int b = 13; 
          int c = 0;
          c = a & b;       
          System.out.println("a & b = " + c );
          c = a | b;       
          System.out.println("a | b = " + c );
          c = a ^ b;       
          System.out.println("a ^ b = " + c );
          c = ~a;          
          System.out.println("~a = " + c );
          c = a << 2;     
          System.out.println("a << 2 = " + c );
          c = a >> 2;     
          System.out.println("a >> 2  = " + c );
          c = a >>> 2;     
          System.out.println("a >>> 2 = " + c );
        }
      }
五、三元运算符

public class Day02_demo02 {
    public static void main(String[] args) {
        int height1 = 150;
        int height2 = 210;
        int height3 = 185;
        int tempHeight = 0;
        tempHeight  = (height1>height2)?height1:height2;
        System.out.println("最高的和尚是:"+((tempHeight>height3)?tempHeight:height3));
    }
}

int c = 900;
System.out.println("最后的结果是:"+c);
六、条件判断语句

        int a=0;
        if(a==1){
            System.out.println("今天是晴天");
        }
        System.out.println("今天是雨天");

        int a=0;
        if(a==0){
            System.out.println("今天是晴天");
        }else {
            System.out.println("今天是雨天");
        }
        int a=2;
        if(a==0){
            System.out.println("今天是晴天");
        }else if(a==1){
            System.out.println("今天是雨天");
        }else {
            System.out.println("今天下太阳雨");
        }

            Scanner in = new Scanner(System.in);
            System.out.println("请输入数字:");
            int result = in.nextInt();
            if (result % 2 == 0) {
                System.out.println(result + "是偶数");
            } else {
                System.out.println(result + "是奇数");
            }

            // 创建控制台输入类对象
            Scanner in = new Scanner(System.in);
        	//提示用户操作
            System.out.println("请输入成绩:");
        	// 获得用户输入的数字
            int result = in.nextInt();
        	//判断数字的区间
            if(result>=95 & result<=100){
                System.out.println("奖励自行车一辆");
            }else if(result>=90 & result<=94){
                System.out.println("游乐场玩一次");
            }else if(result>=80 & result<=89){
                System.out.println("变形金刚玩具一个");
            }else {
                System.out.println("胖揍一顿.....");
            }
七、选择语句

特别注意:switch(表达式)中的表达式不能为boolean类型、浮点类型


 Scanner sc = new Scanner(System.in);
        System.out.println("请输入今天是周几:");
        int week = sc.nextInt();
        switch (week){
            case 1:
                System.out.println("今天星期一跑步");
                break;
            case 2:
                System.out.println("今天星期二去山区游泳");
                break;
            case 3:
                System.out.println("今天星期三在小区慢走");
                break;
            case 4:
                System.out.println("今天星期四健身房踩动感单车");
                break;
            case 5:
                System.out.println("今天星期五搏击馆练拳击");
                break;
            case 6:
                System.out.println("今天星期六中破山去爬山");
                break;
            case 7:
                System.out.println("今天星期七万达好好吃一顿");
                break;
            default:
                System.out.println("输入错误请重新输入。");
                break;
        }

![请添加图片描述](https://img-blog.csdnimg.cn/67d44f16dcbe4368b58b4948e770f4fa.png

 Scanner sc = new Scanner(System.in);
        System.out.println("请输入今天是周几:");
        int week = sc.nextInt();
        switch (week){
            case 1:
                System.out.println("今天星期一跑步");
                break;
            case 2:
                System.out.println("今天星期二去山区游泳");
            case 3:
                System.out.println("今天星期三在小区慢走");
            case 4:
                System.out.println("今天星期四健身房踩动感单车");
            case 5:
                System.out.println("今天星期五搏击馆练拳击");
                break;
            case 6:
                System.out.println("今天星期六中破山去爬山");
                break;
            case 7:
                System.out.println("今天星期七万达好好吃一顿");
                break;
            default:
                System.out.println("输入错误请重新输入。");
                break;
        }
八、循环语句 1、for循环 for循环语句格式

案例题1:

求1~5之间的数据和,并把求和结果控制台输出。

代码:

        int sum=0;//定义一个变量用来存储和
        for (int i = 1; i <6 ; i++) {//使用for循环,得到1~5的数
            sum+=i;//计算1~5的总和
        }
        System.out.println(sum);

案例题2:

求1~100之间的偶数和,并把求和结果控制台输出。

代码:

        //定义一个变量用来存储偶数之和,初始值为0
        int sum=0;
        //设计一个循环,得到1~100的中的偶数
        for (int i = 2; i <101 ; i=i+2) {
                sum+=i;//计算所有偶数之和
            
        }
        System.out.println(sum);//打印输出偶数之和

案例题3:

在控制台输出所有的“水仙花数”

代码:

        //定义三个变量存储,三位数的个,十,百位上的数
        int ge,shi,bai;
        int a=0;
        //设计一个循环得到所有的三位数
        for (int i = 100; i <1000 ; i++) {
            //分别得到这个三位数上的个位,十位,百位
            ge=i%10;
            shi=i/10%10;
            bai=i/100;
            //个位的立方加十位的立方加百位的立方如果等于这个三位数,则输出这个数为水仙花数
            if((ge*ge*ge+shi*shi*shi+bai*bai*bai)==i){
                //打印输出这个数
                System.out.print(i+"为水仙花数"+"   ");
                a++;
                if(a%2==0)
                    System.out.println();
            }
        }
2、while循环 while循环语句格式

案例题:

世界上最高峰珠穆朗玛峰(8844.43米=8844430毫米),假如有一张足够大的纸,它的厚度为0.1毫米,问:折叠多少次可以折成珠穆朗玛峰的高度?

代码:

        int count = 0;//记录次数
        double paper = 0.1;
        while (paper<8848000){
            paper = paper*2;
            count++;
            System.out.println(paper);
        }
        System.out.println("要折"+count+"次");
3、do while循环 do…while循环语句格式

案例题1:

求1到100之间所有能被3整除的整数的和。

代码:

        int sum=0;     
        int a=1;
        do{
			if(a%3==0) {
				sum +=a;
			}
			a++;
		}while(a<100);
		
		System.out.println("1到100之间所有能被3整除的整数的和: "+sum);
九、跳转控制语句 1、continue

continue 用在循环中,基于条件控制,跳过某次循环体内容的执行,继续下一次的执行

案例题1:

从任意一个数字开始报数,当你要报的数个位包含7或者是7的倍数时要说:过。

        Scanner sc = new Scanner(System.in);
        //键盘输入一个数
        int res = sc.nextInt();
        //设计一个循环,得到res~100的所有整数
        for (int i = res; i <1000 ; i++) {
            //则求出这个数的个位
            int a=i%10;
            //如果i是7的倍数或者i包含7则输出过,并跳过本次循环
            if(i%7==0 || a==7 ){
                System.out.println("过");
                continue;
            }
            //输出所有数
            System.out.println(i);
        }
2、break

break 用在循环中,基于条件控制,终止循环体内容的执行,也就是说结束当前的整个循环

注意:

1、break语句对if-else的条件语句不起作用。

2、在多层循环中, 一个break语句只向外跳一层。

案例题1:

从任意一个数字开始报数,当你要报的数个位包含7或者是7的倍数时要说:过。并结束游戏。

代码:

        Scanner sc = new Scanner(System.in);
        //键盘输入一个数
        int res = sc.nextInt();
        //设计一个循环,得到res~100的所有整数
        for (int i = res; i <1000 ; i++) {
            //则求出这个数的个位
            int a=i%10;
            //如果i是7的倍数或者i包含7则输出过,并结束游戏
            if(i%7==0 || a==7 ){
                System.out.println("过");
                break;
            }
            //输出所有数
            System.out.println(i);
        }
十、Random类

作用:用于产生一个随机数。

特点:

1、Random类中各方法生成的随机数字都是均匀分布的,也就是说区间内部的数字生成的几率均等;

2、相同种子数的Random对象,相同次数生成的随机数字是完全相同的;

3、java.util.Random类中实现的随机算法是伪随机,也就是有规则的随机,所谓有规则的就是在给定种(seed)的区间内随机生成数字;

例题1:

中午不知道吃什么,产生随机数,如果是1就吃黄焖鸡,如果是2就吃螺蛳粉,如果是3就吃木桶饭,如果是4就吃花甲粉,都不是就不吃了。

代码:

        Random r = new Random();
        int number = r.nextInt(5);
        System.out.println("产生的随机数是:"+number);
        switch (number){
            case 1:
                System.out.println("恭喜黄焖鸡中奖");
                break;
            case 2:
                System.out.println("恭喜螺蛳粉中奖");
                break;
            case 3:
                System.out.println("恭喜木桶饭中奖");
                break;
            case 4:
                System.out.println("恭喜花甲粉中奖");
                break;
            default:
                System.out.println("不吃了");
                break;
        }
    


练习题:

今天有道题一直出错,原题为:

要求用户输入一个0到2之间的整数,如果用户输入0输出“你出的是石头”,如果用户输入1就输出“你出的是剪刀”,如果用户输入的是2就输出“你出的是布”,然后再问是否要继续出拳,如果回答“y”就重复以上过程,否则结束程序。

正确代码为:

        Scanner sc = new Scanner(System.in);
        while (true){
            System.out.println("请输入0~2的整数:");
            int next = sc.nextInt();
            switch (next){
                case 1:
                    System.out.println("你出的是剪刀");
                    break;
                case 2:
                    System.out.println("你出的是布");
                    break;
                case 0:
                    System.out.println("你出的是石头");
                    break;
                default:
                    System.out.println("输入的数字错误");
            }
            System.out.println("是否继续出拳:");
            String line = sc.next();
            if(line.equals("y") || line.equals("Y")){

            }else {
                break;
            }
        }

而我错误的地方是把

 String line = sc.next();

写成了:

String line = sc.nextLine();

一直想不通,毕竟两种都是键盘输入字符串的方法,为什么nextLine()是错的,后来去百度了一下得到了答案:

**nextLine()的输入是碰到回车就终止输入,而next()方法是碰到空格,回车,Tab键都会被视为终止符。所以next()不会得到带空格的字符串,而nextLine()可以得到带空格的字符串。
而我错误的地方是把

 String line = sc.next();

写成了:

String line = sc.nextLine();

一直想不通,毕竟两种都是键盘输入字符串的方法,为什么nextLine()是错的,后来去百度了一下得到了答案:

**nextLine()的输入是碰到回车就终止输入,而next()方法是碰到空格,回车,Tab键都会被视为终止符。所以next()不会得到带空格的字符串,而nextLine()可以得到带空格的字符串。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/999395.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号