Java基础

Java基础

变量

变量是程序的基本组成单位(类型 +名称+值)

char 是两个字节,可以表示汉子

字符

字符类型本质

字符型存储到计算机中,需要将字符对应的码值(整数)找出来,比如’a’

存储:‘a’>码值97今天>二进制==>存储

读取:存储==>97==>‘a’=>显示

字符和码值通过字符编码表规定的

ASCLL 一个字节表示,一个128个字符

Unicode(固定大小的编码,使用两个字节来表示字符,字符和汉字统一占用两个字节,浪费空间)

utf-8 大小可变,字母使用1个字节,汉字3个字节

gbk 字母使用一个字节,汉字2个字节

big5 码 繁体中文

布尔类型

boolean 不能用0||1来表示 true||false 和C++不同

类型转换

精度小的类型自动转换为精度大的数据类型

char—>int—>long—>float—>double

byte—>short—>int—>long—>float—>double

  • 有多重类型数据混合计算时,将数据转换为容量最大的数据类型,再进行计算。

  • byte和char不会相互自动转换 也就是说

    • char n1 = 'a';
      byte  n = 10;
      n = n1;//错误
      
  • byte,short,char三者可以计算 在计算时首先自动转换为int 类型

强制类型转换

精度损失

int n1 = (int)1.9;

基本数据类型转String类型

     //基本类型转成String类型
        int a = 100;
        float b = .3f;
        String str1 = a + "";
        String str2 = b + "";
        String str3 = str1 +str2;
        System.out.println(str3);

     //  String类型专程基本类型,基本类型的包装类调用parseXXX方法即可。
        int num1 =Integer.parseInt(s1);
        double num2 = Double.parseDouble(s1);
                ....
        //字符不同
        char b = s1. charAt(0);

逻辑运算符

最后输出的是boolean

短路与或和逻辑与或的区别

短路与,如果第一个条件为false,直接退出

逻辑与,如果第一个条件为false,继续判断第二个 效率低

逻辑异或 a^b 俩者不同,则为真

a&b //逻辑与。a,b同时为真,则为真
a&&b //a,b同时为真,则为真.短路与
//短路和逻辑的区别
//
a|b //逻辑或
a||b //短路或

三元运算符

条件表达式?表达式1:表达式2

条件表达式true,运算结果为表达式1

条件表达为false,运算结果为表达式2

标志符的命名规则和规范

  • java对各种变量,方法,类名等命名使用字符为标志服

  • 凡是自己可以起名字的地方都叫标志符

数字不可以开头,不能使用关键字和保留字

规范

  • 包名:所有字符都小写

  • 类名、接口名,多单词组成时 首字母答谢

  • 变量名 方法名,多单词组成时,第一个单词首字母小写,第二个单词大写

  • 常量名,所有字母大写

键盘输入语句

需要接受用户输入的数据,就可以使用键盘输入语句来获取

Input.java,需要一个扫描器(对象)java.util.Scanner

        Scanner scaner = nw Scanner(System.in);
        int n ;
        n = scaner.next();

原码,反码,补码

  • 二进制的最高位是符号位:0表示整数,1表示负数

  • 正数三码合一

  • 负数的反码,符号位不变,其他位取反

  • 负数的补码=它的反码+1,负数的反码=负数的补码-1

  • java没有无符号数,java中的数都是有符号的

  • 计算机运算的时候,以补码的方式来运算的

>>>逻辑右移,也叫无符号右移,低位溢出,高位补0

没有<<<符号

do.while循环控制

先执行,再判断

do{

}
while();

Break额外细节

可以用标签指明自己推出语句块

label1:
    for(int i = 0;i < 2;i++){
    label2:
        for(int j = 0; j<3;j++){
            if(j==3)
                break label1:
    }
}

Continue

continue用于结束本次循环,继续执行下一次循环,也可以用label标签指明跳过那个循环

数组开辟空间

int[]  arr = new int[x];
int arr[][] = new int[x][y];
char[] arr = new char[x];
char[] arr = new char[x][y];
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值