编程的基础篇

一. 基本数据类型

首先我们要知道位和字节的概念,所谓的位,就是计算机中最小的单位,8位=1个字节

数据类型有八个,分别是 byte、short、int、long、float、double、boole、char这八个,整数和小数的基本数据类型可以自由转换,比如int转换成long不会出现什么问题的,但是long转ing的话,那么就是强制转换了,long有64位,强制换成int就是直接删除掉32位,这种强制转换在int类型放不下这么大数据的情况话会有失精度

整数类型分别是 byte(1个字节)、short(2个字节)、int(4个字节)、long(8个字节)

byte     8位     1个字节    -128 到 127

short   16位    2个字节    -32768 到 32767

int       32位    4个字节    -21亿 到 21亿

long    64位    8个字节    2万亿左右   long类型超过数字结尾要加个L, 否则默认为int类型, 比如 100L

小数类型分别是 float(8个字节)、double(16个字节)

float       32位  4个字节    保留6位小数     float类型数值后面必须加F,否则默认double 类型, 比如 3.14F

double   64位  8个字节    保留14位小数

注:由于舍入原因,浮点数不能做精确运算

非数值类型分别是 char(2个字节)、boole(1个字节)

char         16位  2个字节  用来存储字符或者汉字的,一个英文是1个字节,一个中文是2个字节

boolean    8为   1个字节  主要用来存储true和false的,判断是与非

 

二. 运算符号

转义符号有 三个,分别是 \n(换行)、\t(制表)、\r(退格) 三个

System.out.println("我有一头小毛驴\n我从来也不骑"); //结果如下,会给你换行
我有一头小毛驴
我从来也不骑


System.out.println("我有一\t头小毛\t驴");
System.out.println("我从\t来也\t不骑"); //结果如下,会给你表格形式
我有一	头小毛	驴
我从	来也	不骑


System.out.println("aaaa\r我有一头小毛驴"); // 结果如下,会把前面的aaaa给隐藏掉
我有一头小毛驴

赋值运算符只有一个 = ,专门给变量来赋值用的,比如 int i=100; boolean b=true;

算数运算符有七个,分别是 +、-、*、%、/、++、-- ,专门用来运算的

int a=1+1;  结果是2
int b=2-1;  结果是1
int c=3*3;  结果是9
int d=4%2;  结果是2
int e=13/5; 结果是3
int f=1++;  结果是2
int g=1--;  结果是0

关系运算有六个,分别是 >、<、>=、<=、==、!= ,专门用来判断的

System.out.println(1 < 2);  //true
System.out.println(2 > 1);  //true
System.out.println(1 <= 1); //true
System.out.println(1 >= 2); //false
System.out.println(1 == 1); //true
System.out.println(1 != 1); //false

逻辑运算法有三个,分别是 &&(与)、||(或)、!(非),专门用来做判断的

System.out.println(true && false); // false 两个值都为true才会是true
System.out.println(true || false); // true  其中一个值为true就会为true
System.out.println(!true);         // false 取反,true取反就是false

 

 

三. 条件判断

在java中主要有两种条件判断,if else(条件分支) 和 switch(多路条件分支) 这两个

if else主要就是判断true和false,为true就执行if里面的代码,为false就执行else里面的代码

if(1==1){
    System.out.println("条件为true执行这里的代码");
}else{
    System.out.println("条件为false执行这里的代码");
}
最终结果: 条件为true执行这里的代码

switch多路条件分支,有些时候判断一些已知数值数值的时候可以使用switch来做判断,比如说我们已经知道 staus只有三个值,分别是1、2、3,这个时候我们用switch就会方便很多,如果你的case后面没有加上break跳出判断的话,那么代码还会接着往下一直判断执行下去,什么时候遇到break才会跳出判断

        switch (3) {
            case 1:
                System.out.println("我是病人");
                break;
            case 2:
                System.out.println("我是护士");
                break;
            case 3:
                System.out.println("我是医生");// 这个后面没有加break所以他会继续往下执行
            default:
                System.out.println("我也不知道我是谁");
                break;;
        }
        最终结果: 我是医生
                 我也不知道我是谁

 

四. 循环

循环分为三种循环,分别是while、for、do while 这三种循环,其中的do while循环能用上的地方很少很少,在循环中有两个关键字专门是为了循环而生出来的,分别是break(结束循环)、concontinue(跳过当前循环),当然了,break在上面的switch判断中也很关键!

while循环,只要条件满足就会一直循环,如果一直循环的那就是死循环了,死循环非常消耗cpu和内存的

        int i = 1;
        while (i > 0) {
            if (i == 100) {
                // 如果i=100的时候就结束循环
                break;
            }
            System.out.println(i);
            i++;
        }
      结果打印是:  1 - 99
        

for循环的写法比较简单,它里面分别有三个参数,第一个参数只会执行一次,第二个参数是判断条件,但三个参数每次都是执行

        for (int i = 1; i <= 100; i++) {
            if (i > 50) {
                continue;
            }
            System.out.println(i);
        }
    结果打印为 1 - 50,continue的作用就是跳过但前这次循环

do while循环是一种很少用的上的循环,用不上的主要原因他是先循环后做判断的,所以说,不管在什么情况下,他都会循环一次!

        do {
            System.out.println("HelloWorld");
        } while (false);

 

 

五. 数组和效率非常低的冒泡排序法

数组你可以看做一个一次性可以存多个数值的工具,数组也分为int数组,boolean数组,八种基本数据类型都可以为数组,对象也可以是一个数组!数组的创建方式有三种,拿值方式也有几种,但是在java中有个封装好的对象是Arrays,这个对象有一整套封装好专门对数组操作的方法,具体可以慢慢看

        int[] i = new int[2];

        String[] s = {"旺财", "二狗子"};

        // 数组循环拿值的方式
        for (String s1 : s) {
            System.out.println(s1);
        }

        for (int a = 0; a < s.length; a++){
            System.out.println(s[a]);
        }

        // 通过 Arrays 对象的方式来把数组全部打印出来
        System.out.println(Arrays.toString(s));

        // 查询旺财在这个值在这个数组的位置
        System.out.println(Arrays.binarySearch(s, "旺财"));

冒泡排序法

        int[] i = {3, 5, 6, 8, 2, 1, 0, 4, 7, 9};
        
// 冒泡排序法
        for (int m = 0; m < i.length - 1; m++) {
            for (int k = i.length - 1; k > m; k--) {
                if (i[k] < i[k - 1]) {
                    int u = i[k];
                    i[k] = i[k - 1];
                    i[k - 1] = u;
                }
            }
        }
        System.out.println(Arrays.toString(i));

        i = new int[]{3, 5, 6, 8, 2, 1, 0, 4, 7, 9};
        // 利用Arrays里面的排序方法
        Arrays.sort(i);
        System.out.println(Arrays.toString(i));

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值