zoukankan      html  css  js  c++  java
  • java学习(一)

    目录

    java基础

    1. 编写Java程序

      • java代码必须驻留在一个类中
      • java源文件名必须和类名相同。
      • java源代码文件扩展名必须为.java
      • 所有的Java 程序由public static void main(String []args)方法开始执行。
    2. 编译java程序

    3. 运行java程序

      • java 类名(不包含class扩展名)

    基本语法

    java标识符

    • 标识符必须不是java关键字,不能是一个布尔字面值,不能是空字面值
    • 标识符必须在其作用域内是唯一的。
    • 标识符是java字母和数字的一个长度没有限制的序列。
    • 大小写敏感:标识符Hello与标识符hello是不同

    所有的标识符都应该以字母(A-Z或者a-z),美元符(\()、或者下划线(_)开始, 之后可以是字母(A-Z或者a-z),美元符(\))、下划线(_)或数字的任何字符组合。
    合法标识符举例:row_count、$salary、_x3、x2、__1_value;非法标识符举例:2x、-salary

    java变量

    变量类型###

    • 局部变量
    • 类变量(静态变量)
    • 成员变量(非静态变量)

    变量声明

    		byte x;
    
    		int rowCount;
    
    		char;
    
    		int a,b 等价于 int a; int b;
    
    		char x = 'd';   
    

    变量的命名惯例

    • 变量名应以小写字母开头且混合大小写;

    • 后续的单词都以一个大写的字母开头,不应以_或$开头

    java常量

    • java中常量,一旦赋值之后,其值不能修改。赋值时候不能超过类型的最大值。

    • 常量名通常都是大写的

    • 单词之间用下划线隔开

    Java 基本数据类型#

    内置数据类型##

    • byte:

      byte 数据类型是8位、有符号的,以二进制补码表示的整数;

      最小值是 -128(-2^7);

      最大值是 127(2^7-1);

      默认值是 0;
      

      byte 类型用在大型数组中节约空间,主要代替整数,因为 byte 变量占用的空间只有 int 类型的四分之一;

      例子:byte a = 100,byte b = -50。

    • short:

      short 数据类型是 16 位、有符号的以二进制补码表示的整数

      最小值是 -32768(-2^15);

      最大值是 32767(2^15 - 1);

      Short 数据类型也可以像 byte 那样节省空间。一个short变量是int型变量所占空间的二分之一;

      默认值是 0;

         例子:short s = 1000,short r = -20000。
      
    • int:

       int 数据类型是32位、有符号的以二进制补码表示的整数;
      
       最小值是 -2,147,483,648(-2^31);
      
       最大值是 2,147,483,647(2^31 - 1);
      
       一般地整型变量默认为 int 类型;
      
       默认值是 0 ;
      
       例子:int a = 100000, int b = -200000。
      
    • long:

        long 数据类型是 64 位、有符号的以二进制补码表示的整数;
      
        最小值是 -9,223,372,036,854,775,808(-2^63);
      
        最大值是 9,223,372,036,854,775,807(2^63 -1);
      
        这种类型主要使用在需要比较大整数的系统上;
      
        默认值是 0L;
      
        例子: long a = 100000L,Long b = -200000L。
      
        **注:**"L"理论上不分大小写,但是若写成"l"容易与数字"1"混淆,不容易分辩。所以最好大写。
      
    • float:

        float 数据类型是单精度、32位、符合IEEE 754标准的浮点数;
      
        float 在储存大型浮点数组的时候可节省内存空间;
      
        默认值是 0.0f;
      
        浮点数不能用来表示精确的值,如货币;
      
        例子:float f1 = 234.5f。
      
    • double:

        double 数据类型是双精度、64 位、符合IEEE 754标准的浮点数;
      
        浮点数的默认类型为double类型;
      
        double类型同样不能表示精确的值,如货币;
      
        默认值是 0.0d;
      
        例子:double d1 = 123.4。
      
    • boolean:

        boolean数据类型表示一位的信息;
      
        只有两个取值:true 和 false;
      
        这种类型只作为一种标志来记录 true/false 情况;
      
        默认值是 false;
      
        例子:boolean one = true。
      
    • char:

        char类型是一个单一的 16 位 Unicode 字符;
      
        最小值是 \u0000(即为0);
      
        最大值是 \uffff(即为65,535);
      
        char 数据类型可以储存任何字符;
      
        例子:char letter = 'A';。
      

    注: 整型、实型(常量)、字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算。转换从低级到高级。

    引用数据类型##

    • 在Java中,引用类型的变量非常类似于C/C++的指针。引用类型指向一个对象,指向对象的变量是引用变量。这些变量在声明时被指定为一个特定的类型,比如 Employee、Puppy 等。变量一旦声明后,类型就不能被改变了。
    • 对象、数组都是引用数据类型。
    • 所有引用类型的默认值都是null。
    • 一个引用变量可以用来引用任何与之兼容的类型。
    • 例子:Site site = new Site("Runoob")。

    Java类型转换#

    • 自动类型转换(加宽转换)

      必须满足转换前的数据类型的位数要低于转换后的数据类型

    • 强制类型转换(收窄转换)

    • 隐含强制类型转换

    注:

    1. 不能对boolean类型进行类型转换。
    2. 不能把对象类型转换成不相关类的对象。
    3. 在把容量大的类型转换为容量小的类型时必须使用强制类型转换。
    4. 转换过程中可能导致溢出或损失精度。
    5. 浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入

    java注释

    public class HelloWorld {
    /* 这是第一个Java程序
     *它将打印Hello World
     * 这是一个多行注释的示例
     */
    public static void main(String []args){
       // 这是单行注释的示例
       /* 这个也是单行注释的示例 */
       System.out.println("Hello World"); 
    }
    

    }

    操作符#

    • 自增操作符
    • 逻辑取反操作符
    • 位取反操作符
    • 算术操作符

    java语句#

    • 条件语句

    • 循坏语句

      • while循环
      • do...while循环

    while循环只要布尔表达式为 true,循环就会一直执行下去。如果不满足条件,则不能进入循环。

    但有时候我们需要即使不满足条件,也至少执行一次。

    do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。

    for循环
    
    `for(初始化; 布尔表达式; 更新) {
    //代码语句
    }`
    
    `for(声明语句 : 表达式)
    {
    //代码句子
    }`
    
    • break语句

      • break 主要用在循环语句或者 switch 语句中,用来跳出整个语句块。

      • break 跳出最里层的循环,并且继续执行该循环下面的语句。

      • continue 适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。

      • 在 for 循环中,continue 语句使程序立即跳转到更新语句。

      • 在 while 或者 do…while 循环中,程序立即跳转到布尔表达式的判断语句。

    • switch case语句

      • switch 语句中的变量类型可以是: byte、short、int 或者 char。从 Java SE 7 开始,switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面量。

      • switch 语句可以拥有多个 case 语句。每个 case 后面跟一个要比较的值和冒号。

      • case 语句中的值的数据类型必须与变量的数据类型相同,而且只能是常量或者字面常量。

      • 当变量的值与 case 语句的值相等时,那么 case 语句之后的语句开始执行,直到 break 语句出现才会跳出 switch 语句。

      • 当遇到 break 语句时,switch 语句终止。程序跳转到 switch 语句后面的语句执行。case 语句不必须要包含 break 语句。如果没有 break 语句出现,程序会继续执行下一条 case 语句,直到出现 break 语句。

      • switch 语句可以包含一个 default 分支,该分支一般是 switch 语句的最后一个分支(可以在任何位置,但建议在最后一个)。default 在没有 case 语句的值和变量值相等的时候执行。default 分支不需要 break 语句。

      • 如果 case 语句块中没有 break 语句时,JVM 并不会顺序输出每一个 case 对应的返回值,而是继续匹配,匹配不成功则返回默认 case。

    测试反思#

    强制类型转换问题


    s+1:属于int类型

    所以程序报错不能将类型int转换为类型short,必须强制转换

    a=(short)(a+1);
    


    运算符+=隐藏了一个强制类型转换

    public class Test {
    
        public static void main(String[] args) {
            short a=1;
            byte b=1;
            a=(short)(a+1);
            b+=1;
            System.out.println(a);
            System.out.println(b);
        }
    }
    
    

    输出结果都为2.

    类型最大值

    System.out.print( "Integer.MIN_VALUE == -Integer.MAX_VALUE:"+(Integer.MIN_VALUE == -Integer.MAX_VALUE ));
    

    输出为FALSE

  • 相关阅读:
    PHP脚本如何正确启用sg11安全组件?
    android修改系统时系统黑屏时不进入休眠状态
    计算机自考视频汇总【福利资料】[转]
    解决MySql报错:1130
    “领导想提拔你,看的从不是努力
    interTbale ___AlterTable
    MySQL数据库管理系统概述
    《分布式任务调度平台XXL-JOB》
    mysql 在线文档
    Oracle19c 数据库在线文档
  • 原文地址:https://www.cnblogs.com/Shambryce/p/10465017.html
Copyright © 2011-2022 走看看