java1

Java运行机制

如何跨平台 通过不同系统上的虚拟机

.java文件通过编译转为.class文件 在虚拟机中执行

jdk 包含jre jvm 编译工具,打包工具

jre 运行环境 包含jvm

注释

单行注释 // 快捷 ctrl+/

多行注释 /* */ 快捷 ctrl+shift+/

文档注释 /** */在其他类下调用时 鼠标光标移动到所调用类时会显示出提示。

关键字

特殊含义的单词 用作专门用途的字符串

关键字所有字母都为小写

保留字同关键字一样 相当于先注册但还未使用

标识符

Java对各种变量,方法,类等要素的命名

命名规则

有26个英文字母大小写,0-9,_ 和$组成数字

数字不能开头,严格区分大小写,长度无限制

不能是关键字或保留字,但可以包含关键字和保留字

标识符中不能含有空格

命名规范

见名知意

包名:多单词组成时所有字母小写xxxyyyzzz

类名,接口名:首字母大写,多单词所有首字母大写XxxYyy

变量名,方法名:首字母小写 多单词 后面单词首字母大写userName

常量名:所有字母大写 下横线连接XXX_YYY_ZZZ

Java变量

值可以改变的量,是一个存储单元,是内存中的一块空间

内存 运行时使用,硬盘静态的

使用变量前要 进行申请 声明 申请空间

声明变量的语法

数据类型(必须明确)【修饰符】 变量名=值;

Java基本数据类型

程序中所有数据都需明确数据类型,不同的类型,存储空间不同,运算规则不同

基本数据类型

数值型

---8种 结构简单

整数型

byte 1字节 0000 0000 0111 1111=127 八个bit位

short 2字节

int 4字节

long 8字节

System.out.print(Integer.MAX_VALUE);

整数默认字面量为int long类型后要加L

int x= 0x11 十六进制

x=17

浮点型

float 4字节

double 8字节

有两种表示形式 正常表示,科学计数法

精度范围不同 小数位精度不同

小数的保存是以近似值保存

浮点型默认字面量为double型 float后加F

布尔型

boolean

Java中只能用true false表示真假

字符型

char来表示单个的字符 由编码表表示

单引号‘ ‘ 表示单个的字符

运算可转为十进制编码后运算

引用数据类型

接口

数组

基本数据类型转换

默认转换

小类型转为大类型

byte,short,char ---int ---long--- float---double

由于整数和小数的存储方式不同,八个字节的long型可以转化为四个字节的float型。

强制转换

int a=258;
bate b=(byte)a;

int中a为 0001 0000 0010

转换为byte 只有 0000 0010

输出结果为2 数据丢失

float a=10.55f;
long b=(long)a;
b=10;精度丢失

在混合运算时默认将小类型转换为大类型

运算符

算术运算符

+,-,*,/,%,++,--

“+” 加法的运算, 字符串的连接

        int a=1 ,b=2;
        char x='刘';
        String y="abc";
        System.out.println(a+b);3
        System.out.println(x+a);21017
        System.out.println(x+y);刘abc

++ 自增 -- 自减

      int c=5;
        int d=c++ + 3;
        System.out.println(d);d=8;  c=6
            
      int c=5;
        int d=++c + 3;
        System.out.println(d);d=9;  c=6

先将c与3运算后再自增 ++在后面 先运算后++

++在前先++后运算

关系(比较)运算符

< , >, ==,!=,<=,>=

        int c=5;
        int d=3;
        System.out.println(c==d);flase

==和!=除了基本数据类型比较还可进行引用数据类型比较

    String s="abc";
    String a="ab";
System.out.println(a==s); flase

逻辑运算符

!,& , | , &&,||

        int a=10;
        int b=5;
        int c=7;
        System.out.println(a<b & b<c);//flsae
        System.out.println(a<b && b<c);//flase
        System.out.println(a<b & ++b<c);
        System.out.println(b);b=6
        b=5;
        System.out.println(a<b && ++b<c);
        System.out.println(b);b=5

&& || 短路与 短路或

当与中由flase后边不运行

当或中有true后边不执行

^ 异或 不同为真相同为假

赋值运算符

= ,+ = ,- = , * = ,/ =

int e=10;//注意数据类型是否满足数据类型
        short m=1;
        m+=1; short m=(short)(s+3)
//      m=m+1;报错  1默认为int型  会进行强制转换
        

条件运算符

        int a=10;
        int b=5;      
        int max=(a>b)?a:b;
        System.out.println(max);10

位运算符

<< 左移 >>右移 有符号的,>>>无符号的右移

&,|,^,~ 与,或,异或,非

位运算针对bit位进行运算

package day2;
​
public class Dome3 {
    public static void main (String[] args){
        int a=3;
        int b=4;
        /*
        a   0000 0011
        b   0000 0100
         */
        System.out.println(a<<1);// a  0000 0110  =6   有符号的
        System.out.println(a>>1);// a  0000 0001  =1
        int m=-3;
        // m  1111 1111, 1111 1111 ,1111 1111, 1111 1101 =-3   无符号的
        // m  0111 1111, 1111 1111 ,1111 1111, 1111 1110 =2147483646
        System.out.println(m>>>1);
        /*
        a   0000 0011  3   0000 0000,0000 0000,0000 0000,0000 0011
        b   0000 0100  4
        &   0000 0000  0
        |   0000 0111  7
        ^   0000 0111  7   相同为0 不同为1
        ~   1111 1100  -4  1111 1111,1111 1111,1111 1111,1111 1100
         */
        System.out.println(a&b);//0
        System.out.println(a|b);//7
        System.out.println(a^b);//7
        System.out.println(~a);//-4
​
    }
}

控制台输入

import java.util.Scanner;//导入java.util包的scanner类
​
public class Dome4 {
    public static void main(String[] args){
        Scanner a= new Scanner(System.in); //在Java前中期提供的交互类 前期没有操作界面
        System.out.println("输入");//在控制台输入数据,并读取到程序中
        int s= a.nextInt();//scanner对象会读取数据,程序运行到此会阻塞,输入完成,按下回车结束输入
        System.out.println(s);
​
    }
​
}
​

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值