Java入门知识梳理03

运算符

  • 算数运算符 + - * / % ++ --

  • 赋值运算符 =

  • 关系运算符 > < >= <= == != instanceof

  • 逻辑运算符 && || !

  • 位运算符 & | ^ ~ >> << >>>(了解)

  • 条件运算符 ?:

  • 扩展复制运算符 += -= *= /=

operator

Ctrl + D :复制当前行到下一行(idea快捷键)

cast 转换

abs 绝对值 pow 幂运算

public class  Demo08 {
   public static void main(String[] args) {
       long i = 1267752614654L;
       int x = 123 ;
       short s = 23 ;
       byte b = 2 ;
       System.out.println(i + x + s + b);
       System.out.println(x + s + b);
       System.out.println(s + b);
  }
​
​
}
public class  Demo08 {
   public static void main(String[] args) {
      int i = 10 ;
      int a = 20 ;
      int b = 30 ;
      int c = 40 ;
      int e = 50 ;
       System.out.println(i + a);
       System.out.println(i - a);
       System.out.println(a * b);
       System.out.println(b / c);
       System.out.println(c % e);
       System.out.println(Math.pow(2,2));//专业的计算需要用到函数进行
  }
​
​
}

public class  Demo08 {
   public static void main(String[] args) {
      int i = 10 ;
      int j = 20 ;
      int b = ++i ;
       System.out.println(i);
       System.out.println(b);
       System.out.println("==========");
      int c = b++;
       System.out.println(b);
       System.out.println(c);
       System.out.println(i);
       System.out.println(j);
​
  }
​
​
}

字符串连接符

public class  Demo08 {
   public static void main(String[] args) {
    int a = 10 ;
    int b = 20 ;
       System.out.println(""+ a + b);
       System.out.println(a + b + "");
​
  }
   
}

以上语句输出结果为

1020

30

三元运算符

x ? y : z 如果x == true 则结果为true 否则结果为false

public class  Demo08 {
   public static void main(String[] args) {
   int grade =  50;
   String level = grade >= 60 ? "pass " : "not to pass" ;
       System.out.println(level);
  }
​
}

如上图为简单实例演示 结果为 not to pass

三元运算符也可以用if 替代 但是三元运算符更简洁

运算符的优先级 () 多敲括号不影响代码运行而且可以使代码更清晰

包机制

包的本质就是一个文件夹(防止命名空间枯竭)

一般包名利用公司域名倒置作为包名

package 必须要放在最上方

//阿里巴巴开发手册

JavaDoc

是用来生成API文档的

/**

*author 作者名

*version 版本号

*since 知名需要最早的JDK版本

*param 参数名

*return 返回值情况

*throws 异常抛出情况

*/

public class Doc {
​
   String name ;
​
   /**
    *
    * @param name
    * @return
    * 
    */
   public String test(String name)throws Exception{
       return name ;
  }
}

在方法体语句上文档注释就会生成API文档

java.doc -ending UTF-8 -charset UTF-8 Doc.java

通过命令行

学会查找使用IDEA生产Javadoc 文档!

面向百度进行学习 面向强的人进行学习

Java流程控制

Scanner对象

Java.util.Scanner Scanner类来获取用户的输入

Scanner s = new Scanner(System.in);

next()不能得到带有空格的字符串 nextLine() 返回输入回车键之前的所有字符hasNext

凡是属于IO流的泪如果不关掉会一直站用资源,要养成良好的习惯

public class Demo01 {
   public static void main(String[] args) {
      Scanner scanner = new Scanner(System.in);
       System.out.println("用next方法进行接受");
       System.out.println("请输入您需要存入的信息");
       if(scanner.hasNext()){
           String str = scanner.nextLine();
           System.out.println("输入的内容是:"+ str);
      }
       scanner.close();
  }
}

新手阶段需要大量的进行练习

import java.util.Scanner;
​
public class Demo05 {
   public static void main(String[] args) {
​
       Scanner scanner = new Scanner(System.in);
       System.out.println("请输入您要计算的数据");
       //需求 实现换行输入数据 进行求和和求平均值输出
       double sum = 0.0 ;
       double average  = 0.0 ;
       int number = 0 ;
       while(scanner.hasNextFloat()){
           double x = scanner.nextDouble();
           number++ ;
           sum += x ;
           average = sum / number ;
           System.out.println("您输入的数据的和为"+ sum);
           System.out.println("您输入的数据的平均值为"+ average);
​
      }
       
       scanner.close();
  }
}

顺序结构

java就是顺序结构语言,除非特殊说明都是自上而下按顺序执行

顺序结果是最简单的算法结构

选择结构

if单选择结构

If(布尔表达式){

布尔表达式将执行true的结构

}

if双选择结构

if(布尔表达式){

布尔表达式将执行true的结构

}else{

布尔表达式将执行false的结构

}

得语法者得天下

if多选择结构

public class Demo05 {
   public static void main(String[] args) {
       Scanner scanner = new Scanner(System.in);
       int grade = scanner.nextInt();
       if(grade == 100) {
           System.out.println("Excellent");
      }else if(grade < 100 && grade >= 90){
           System.out.println("Wonderful");
      }else if(grade < 80 && grade >= 70){
           System.out.println("Good");
      }else if(grade < 70 && grade >= 60){
           System.out.println("Pass");
      }else if(grade < 60 && grade >= 0){
           System.out.println("Not to Pass");
​
      }else{
           System.out.println("The grade is Wrong");
​
​
      }
       scanner.close();
  }
​

写代码一定要注意代码的健壮性

多思考 多犯错 才能多进步

if嵌套

算法是提高数据效率

流程控制语句都可以相互嵌套

switch多选择结构

case穿透 用break来阻止穿透 switch 匹配一个具体的值

支持字符串的

反编译 idea

public class Demo05 {
​
   public static void main(String[] args) {
   char grade = 'C';
   switch(grade) {
       case 'A':
           System.out.println("Excellent");
           break ;
       case 'B':
           System.out.println("Wonderful");
           break ;
       case 'C':
           System.out.println("Nice");
           break;
       default:
               System.out.println(" Not to pass");
  }
​
  }
}

编程是在解决人的问题

没完没了就是循环结构

循环结构

while循环是最基本的循环

while(布尔表达式){

循环体

}

高斯

public class WhileDemo01 {
   public static void main(String[] args) {
​
​
       int i = 0;
       int sum = 0;
       while (i < 100) {
           ++i ;
           sum += i;
      } 
       System.out.println(sum);
  }
​
​
}

上述实例旨在进行求1+2+3+...+100的和

do while 至少会执行一次

While 先判断再执行

do while 先执行再判断

public class DoWhileDemo01 {
    public static void main(String[] args) {
        int a = 0 ;
        while(a < 0) {
            a++;
            System.out.println(a);

        }
        System.out.println("===========");
            do {
                a++;
                System.out.println(a);
            }while(a < 0);
        }
    }

以上代码体现了while 与dowhile 的区别

While 无输出

Dowhile 输出1

For循环

所有的玄幻都可以用 while dowhile 表示

for循环结构是最有效最灵活的循环结构

for循环的快捷键 100.for

for(int i = 0 ; i < 100 ; i++ )

for(; ; i++)

for循环输出1-1000之间能被5整除的数,而且每行输出三个

打印九九乘法表

public class ForDemo01 {
    public static void main(String[] args) {
        int even = 0 ;
        int odd = 0 ;
        for (int i = 0; i < 100; i++) {
            if (i % 2 == 0) {
                even += i ;
            }else{
                odd += i ;
            }

            }
        System.out.println(odd);
        System.out.println(even);
        }
    }

以上为1-100之间的奇数和以及偶数和实现

public class ForDemo02 {
    public static void main(String[] args) {
        //输出1 - 1000 之间能被5整除的数  每三个数换行
        for (int i = 0; i < 1000; i++) {
            if( i % 5 == 0){
                System.out.print(i +"\t");
                if(i % (5 * 3) == 0){
                    System.out.println();
                }
            }

        }
    }
}

以上是实现输出1-1000之间能被5整除的数,三个换一行

实现九九乘法表

public class ForDemo99 {
    public static void main(String[] args) {
        for (int j = 1; j <= 9; j++) {
            for (int i = 1; i <= j ; i++) {
                System.out.print(j + "*" + i + "=" + (j * i) + "\t");
            }
            System.out.println();
        }

    }
        
}

循环的嵌套

增强For循环

主要是用在数组和集合中的

int[] numbers = {10,20,30,40,50};

For(int x : numbers){

System.out.println(x);

}

public class ZForDemo {
    public static void main(String[] args) {
        int [] numbers = {10 , 20 ,30 , 40 , 50} ;
        for (int i = 0; i < 5; i++) {
            System.out.println(numbers[i]);
        }
        System.out.println("=========");
        for(int x : numbers){
            System.out.println(x);
        }

        }
}

以上为增强型for循环实例

break continue

break用于强制退出循环语句

continue跳出当前循环

public class BreakDemo {
    public static void main(String[] args) {
        for (int i = 0; i < 100; i++) {
            System.out.println(i);
            if( i == 30){
                break ;
            }

        }
    }
}

以上为break实例语句 break很有抗争精神

public class ContinueDemo {
    public static void main(String[] args) {
        for (int i = 0; i < 100; i++) {
            System.out.print(i);
            if(i % 10 == 0){
                System.out.println();
                continue;
            }
            System.out.print(i);

        }
    }
}

以上为continue实例语句 continue情绪化比较严重

goto

影子存在 在continue 和break中有体现 标签

带标签的continue

public class ContinueDemo {
    public static void main(String[] args) {
      int count = 0 ;
      //输出101 - 500 之间的质数
       order: for (int i = 101; i < 500; i++) {
            for(int j = 2 ; j < i/2 ; j++){
                if(i % j == 0)
                    continue order ;
            }
           System.out.println(i);
        }
    }
}

以上实例实现了101-500间质数的输出 中有goto的影子标签


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值