zoukankan      html  css  js  c++  java
  • Java运算符、switch、数组、排序

    1、Java的运算符,分为四类:算数运算符、关系运算符、逻辑运算符、位运算符

    运算符例子:22、25(十进制转化为二进制,8421码)
    0010 0010 (22)
    0010 0101 (25)

    位运算符位于(&)和位或(|)的区别:
    位于&(两个操作数都是1,则为1,反之为0):
    0010 0000(20)

    位或(两个操作数仅有一个1,则为1,反之为0):
    0010 0111(27)

    右移一位例子:
    89>>1(89右移一位)
    1000 1001
    右移一位后:0100 0100(44)

    2、switch的注意事项:

    (1)表达式只能为int型或者枚举型(char、byte、short可自动升为int型,long会丢失精度,所以表达式不能为long型)
    (2)jdk1.7及以上表达式可以为字符串,但是不能为null
    (3)switch每一次只执行一条分支语句,并且每一条分支语句后需要加break,防止穿透现象

    3、定义了一个数组后,如果没有进行复制的,剩下的空间值都是为0
    例如:
    int[] a=new int[10];
    a[0]=2;
    a[1]=3;
    剩下的a[2]、a[3]、a[4]、a[5]、a[6]、a[7]、a[8]、a[9]的值都是为0

    4、数组的几种表达方式:
    int a[];
    int[] b=new int[4];
    int[] c={2,5,8,9};
    int[] d=new int[]{2,5,8,9};

    数组例子:

    (1)double[] score=new double[5];//score是一个数组

    数组中Arrays的用法:
    (1)Arrays.sort(score);//将数组的所有数据进行升序排序
    (2)Arrays.sort(score,0,2);//将数组的前两个值进行升序排序,即对score[0],score[1]进行升序排序

    5、选择排序

    for(int i=0;i<score.length;i++){
            for(int j=i+1;j<score.length;j++){
                if(score[i]>score[j]){
                    change=score[i];
                    score[i]=score[j];
                    score[j]=change;
                }
            }
        }

    6、冒泡排序

    for (int i = score.length-1; i >0 ; i--) {
            for (int j = 0; j <i; j++) {        
                if(score[j]>score[j+1]){
                    change=score[j];
                    score[j]=score[j+1];
                    score[j+1]=change;
                }
            }
        }
  • 相关阅读:
    mysql 查询优化 ~ select count 知多少
    mongodb 案例 ~ 经典故障案例
    printk 驱动调试
    21天学通C++学习笔记(七):函数
    OPC UA
    MQTT
    分库分表
    水平、垂直权限问题(横向越权与纵向越权)
    数据库中的行转列和列转行
    面试知识点
  • 原文地址:https://www.cnblogs.com/xuegu/p/5703917.html
Copyright © 2011-2022 走看看