你不知道的JAVASE(1)——基础篇

心情: :ok:

笔名: 花美

行业: telecommunication

TIME: 2020-4-12

java数据类型

数据类型 说明 字节
Byte 字节型 1
Short 短整型 2
Int 整型 4
Long 长整型 8
Float 单精度浮点 4
Double 双精度浮点 8
Char 字符型 2
Boolean 布尔型 1
class a{
    public static void  main(String[] args)
    {
        int x,y;
            x=3;y=4;
        char ch='h';
        double d = 1.23E5;//E可以大小写 1.23*10的5次方
        float f = 1.23e5f;//与double不同多加个f 不加f默认double
        double dl = .2;
        System.out.println(x+","+y+","+ch+","+d+","+f+","+dl);
        
        //结果:3,4,h,123000.0,123000.0,0.2
        
    }
}

Unicode编码

Unicode表示法,在值的前面加上 \u 例子:char c = '\u005d'

运算符

名称 运算符 含义
三目运算符 a>b?a:b a大于b取a,否则取b
operator1 && operator1 乘 ; 同时满足
operator1 || operator1 相加 ; 满足一个即可
!operator1 取反
% 相除取余数

&&||为短路运算符

  • & 前后两个操作数都会进行计算
  • && 前面条件正确时,才执行后面,==不正确时,就不执行(直接false)==,就效率而言,这个更好
  • | 前后两个操作数都会进行计算
  • || 前面条件正确,后面不执行(直接true)==,不正确时,后面执行 ,就效率而言,这个更好

运算符-优先级

优先级从上至下 : 由高到低

运算符
( )
!,++,— —
*,/,%
+,—
<,<=,>,>=
= = ,! =
&&
||
=,+ =,* =,/ =,% =,— =

综合例子:

import java.util.*;
public class a{
    public static void main(String[] args){
        System.out.println("亲爱的\n你想判断的年份是:");
        Scanner sc = new Scanner(System.in);
        while(true){
        int year = sc.nextInt();
        if(((year%4==0)&&(year%100!=0))||(year%400==0)){
            System.out.println("亲爱的\n"+year+"是闰年O!");
        }else{
            System.out.println("亲爱的\n"+year+"并不是闰年!");
        }
                //运行结果:          
                //亲爱的
                //你想判断的年份是:
                //2002
                //亲爱的
                //2002并不是闰年!
                //2004
                //亲爱的
                //2004是闰年o!
  
        }
    }
}

数组

public class a{
    public static void main(String[] args){
        int[] intArray;
        String strArray[];  //第二种写法
        intArray =  new int[10];
        strArray =  new String[10];
        float floatArray []= new float[10];
        char[] ch = {'a','b','c'};
        System.out.println("ch数组长度"+ch.length
        +"\t"+"intArray数组第二个元素为"+intArray[1] +"\t"
        +"strArray数组第二个元素为"+strArray[1]+"\t"
        +"float数组最后一个元素"+floatArray[floatArray.length-1]
        );
        for(int i = 0;i<10;i++)
        {
            intArray[i] = i+1;
            System.out.print(intArray[i]+"\t");
        }

    //运行结果:
    // ch数组长度3     intArray数组第二个元素为0       
    //strArray数组第二个元素为null   float数组最后一个元素0.0
    //1       2       3       4       5       6       7       8       9       10
    
    }
}

方法—函数

方法重载:

例如plus方法名字起的一样,形参写的不一样,就是对方法的重载,不考虑方法的返回值类型int,void

数组常识易错点:

全局变量数组给形参数组传值(数组的形参与实参名可-同,可-不同)——函数内部被改变数据 ,

此时全局变量的数组也变值,因为 :

数组和对象是引用数据类型 :原理是数组与java中以new创建的-对象会在堆(Heap)中分配内存空间

用完不会马上消 失,而是有垃圾回收机制控制。Stak中的var指向Heap中的var——就是java中的指针!!

class Mathdemo{
    public int plus(int m,int n){
        return m+n;
    }
    public float plus(double m,double n){
            return (float)(m+n);//复习一下强制转换吧
    }
    public int plus(int[] arr){
        int sum=0;
        for(int i = 0 ;i

可变参数列表:

型如int... a 这样的 形参叫做可变参数列表,在函数重载时候,可变参数列表的方法是最后被访问的

public void search(int a,int... a){}
对象.search(3,1,2,3)//123为参数列表的实参 也就相当一个数组变量

你可能感兴趣的:(你不知道的JAVASE(1)——基础篇)