zoukankan      html  css  js  c++  java
  • java基础---Java基础语法

    1.内存如何存放数据?

    答:把数据比作现实当中的顾客/客人,把内存比作宾馆,所谓数据的存储就是在宾馆开一个房间,然后你住进宾馆里面。  int a;(a指客人,int指房间类型)

    数据也是有不同种类的,不同数据开辟内存空间大小和个数是不一样的。

    数据在存储之前,要先根据数据的需求(即类型)为它申请一块合适的空间

    2.数据类型?

    Int 整形数据    例如:1 10 100

    存数据一般分为等号左边和右边

    左边负责内存空间的申请/变量的声明

    右边负责数据的存储

    “=”:赋值,把右边的给了左边

    3.变量,常量?

    变量一直变的量,与变量想对应的常量;比如100。

    Int a= 100;

    System.out.println(a);

    a =20;

    System.out.println(a);

    4.内存地址不好记,怎么办?

    因为内存地址本来是一串16进制码且不固定的,不容易记忆,为了计算方便故通过内存中小房间的别名找到数据存储的位置

    5.Java数据类型分类?

    简单数据类型

       数值型   整数类型(byte, short, int, long)

    浮点类型(float, double)

       字符型(char)

       布尔型(boolean)

    复合数据类型

       (class)

       接口(interface)

       数组

    6.计算机存储单位?

     最低位  bit    位     0/1

             byte   字节   1字节=8bit

             kb     千字节 1kb=1024byte

             m      兆     1m=1024kb

             g       吉     1g=1024m

              t       太     1t=1024g

             ...      ...

    7.整形类型 byte short int long

    public class Case2 {

    public static void main(String[] args) {

    //  整形类型 byte short int long

    // byte=1字节   -2^7 - 2^7-1    -128 - 127

    // short=2字节=16bit     -32768 - 32757

    // int=4字节=32bit      2^63  -  2^63-1

    // long=8个字节=64bit

    // 1个整形数字默认是int型

    byte a=127;

    }

    }

    8.浮点型floatdouble

    public class Case3 {

    public static void main(String[] args) {

    //浮点 float-4个字节 double-8个字节

    //小数默认就是double类型

    double a=10.2;

    System.out.println(a);

    float b=10.3f;

    System.out.println(b);

    }

    }

    注意:浮点型必须加f,如果不加会被默认为double型

    9.字符char

    public class Case4 {

    public static void main(String[] args) {

    //char字符 a b f   字符串 hello

    //常量和变量 int a=10;

    // ""  分别  "A"  A   加""指的是常量  不加的是变量

    //字符 ''  字符串""

    char leter='a';

    System.out.println(leter);

    }

    }

    注意:

    char leter=a;

    默认a为一个变量,变量不可以放在等号右边,除非里面有值或声明过。既没有没有值又没有声明过就会出错.

    char leter='aaaa';

    错误,字符里面只能放一个单个letter

    10.布尔值 boolean

    public class Case5 {

    public static void main(String[] args) {

    //布尔值 boolean  1bit    0/1 true/flase

    boolean rs=false;

    System.out.println(rs);

    }

    }

    注意:boolean表示真或者假。

    11.字符串String

    不属于八种类型,数组的思想

    public class Case6 {

    public static void main(String[] args) {

    //string   存放一串字符用到

    String str="hello world";

    System.out.println(str);

    }

    }

    注意:字符串相加还是字符串

    12.使用变量的步骤?

    第一步:声明变量

    数据类型 变量名;

    int money;

    第二步:赋值

    变量名 = 数值;

    money = 1000 ;

    第一步和第二步可以合并

    数据类型 变量名=数值;

    int money = 1000;

    第三步:使用变量,即“取出数据使用 ”

    13.数据类型的练习?

    public class Case7 {

    public static void main(String[] args) {

    double mark=98.5;

    String name="张三";

    char gender='男';

    System.out.println(mark+name+gender);

    }

    }

    注意:使用“+”号可以连续输出信息

    14.变量命名规则?

    变量名=首字母+其余部分

    首字母可以为 字母、下划线、$

    int a=10; Int _a=10;  int $a=10;

    其余部分可以为 数字、字母、下划线‘_’ 、‘$’ 符号

    Int a1=10; int aaaa=10;  int a$=10;  int a_=10;

    见名知意思

    Sting name="";

    char gender="";

    驼峰命名方式

    double mathMark=10;

    myFirstMark

    变量命名规范:

    简短且能清楚地表明变量的作用,通常第一个单词的首字母小写,其后单词的

    首字母大写。

    15.命名规则小结?

    保留字和关键字

    关键字:java已经占用的   有50个

    保留字:目前还没被使用,但是被提前占用  goto、const

    16.使用变量常见错误?

    1.先声明变量并赋值,然后才能使用   

    public class Error1 {
    public static void main(String[ ] args) {
              String title;
              System.out.println( title );
    }
    }

    解决办法

    String title; //声明变量title
    title = "Java" ; //赋值

    2.代码错误     int %hour = 18;

    public class Error2 {
    public static void main(String[ ] args) {
               int %hour = 18;
              System.out.println(%hour);
    }
    }

    标记“%”上有语法错误,删除标记

    3.声明两个同名变量导致编译错误 

    public class Error3 {
    public static void main(String[ ] args) {
    String name = "张三";
    String name = "李四";
    }
    }

    正确方案 Name、name

    作业

    public class zuoye {

    public static void main(String[] args) {

            String brand="爱国者F928";

           double weight=12.4;

           String type="内置锂电池";

           int price=499;

           System.out.println(brand+weight+type+price);

    }

    }

    17.类型转换?

    类型转换的顺序:

    java中简单数据类型从低级到高级的顺序为:

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

    类型转换的原则:

    1.低级转高级:低级变量可以直接转换为高级变量,称之为自动类型转换。

    2.高级转低级:高级变量转低级需要强制类型转换。

    3.平级之间的转换:byte,short,char属于平级,他们之间需要强制类型转换。

    例如:

    public class Case {

    public static void main(String[] args) {

            //低级转高级   byte char short 自动转换

            byte a=100;

            int b=a;

           System.out.println(b);

            //高级转低级 强制转换

           double c=10.5;

           short d=(short) c;

           System.out.println(d);

            //同级之间的转换

           char e='5';

           short g=(short)e;

           System.out.println(g);

           short s1=1;

           s1=(short) (s1+1);

           System.out.println(s1);

    }

    }

    18.类型转换常见错误?

    1.int 不可以自动转换成char

    int age = 19;

    char sex = '女';

    char result = age + sex

    2.double不可以自动转化成int

    int a = 10;

    int b = 10.2;

    double c = 10;

    c = a;

    int d = c;

    19.与控制台进行交互?

    Scanner input=new Scanner(System.in);

    20.练习:模拟支付平台

    import java.util.Scanner;

    public class Case1 {

    public static void main(String[] args) {

              // GUI SWING

             Scanner input=new Scanner(System.in);

             System.out.println("请输入衣服的标价");

             int price=input.nextInt();   

             System.out.println("请输入衣服的折扣");

             int discount=input.nextInt();

            double pay=price*discount*0.1;

            System.out.println("您的应付金额是"+pay);

    }

    }

    注意:

               Int price=198;    这样就被写死了

               int price=input.nextInt(); 用户可以往进输东西

    21.运算符和表达式?

    操作数+运算符=表达式

    22.赋值运算符?   

    =表赋值  ==表相等

    例如  a = ( b + 3 ) + ( b – 1 )

    23.算数运算符 ?

    + 加法

    - 减法

    * 乘法

    / 除法

    % 取模(取余数)

    举例

    public class Case3 {

    public static void main(String[] args) {

              int a=1+2;

              int b=2+1;

              int c=2*5;

              int d=10/3;

              int e=10%3;

    //+号某一侧有String时结果为String

             String f="10"+"3";

             String g="hello "+"world!";

             System.out.println(d);

             System.out.println(e);

             System.out.println(f);

             System.out.println(g);

    }

    }

    24.算数运算符的练习?

    import java.util.Scanner;

    public class Case4 {

    public static void main(String[] args) {

              Scanner input=new Scanner(System.in);

              double html=0;

              double java=0;

              double oracle=0;

              double minus=0;

              double avg=0;

              System.out.println("请输入java的成绩");

              java=input.nextDouble();

              System.out.println("请输入html的成绩");

              html=input.nextDouble();

             System.out.println("请输入oracle的成绩");

             oracle=input.nextDouble();

             minus=html-java;

             System.out.println("html与java之差为"+minus);

             avg=(html+java+oracle)/3;

             System.out.println(avg);

    }

    }

    心得:做之前先把用到的变量,整理出来,然后一个一个使用,避免做的时候临时在想

    25.算数运算符常见的考点:

    1.“/”的用法

      1.整数除以整数,默认会取整(所以1/2结果会是0)

      2.小数除以整数或者整数除以小数结果是double类型的

      3.除以0呢?

    2.”+”

     当+任意一侧是字符串时,表示的不是算数运算符里的加号,而是表示字符串中的连接符号

    举例

    public class Case5 {

    public static void main(String[] args) {

    // ++  -- 自加  自减

    /*int a=10;

           a++;

          System.out.println(a);

          ++a;

          System.out.println(a);

          a--;

          System.out.println(a);

          --a;

          System.out.println(a);*/

    //++ --   与赋值运算符=   一起使用

          int a=10;

         //int b=a++;  a=11  b=10

           int b=++a;    a=11  b=11

          System.out.println(a);

          System.out.println(b);

    }

    }

    心得:遇到与复杂的赋值语句笔试时,结题技巧先确定一个数的值,再确定另一个数的值,排除法。

    26.关系运算符?

    关系运算符 描述

    >           大于

    <           小于

    >=         大于等于

    <=         小于等于

    ==         等于

    !=          不等于

    关系运算符的作用:用来做比较运算

    比较的结果:boolean类型

    举例

    public class Case6 {

    public static void main(String[] args) {

    // >  <  >=  <= != ==

        int a=10;

       int b=12;

       boolean rs= a>b;

       System.out.println(rs);

    }

    }

    心得:关系运算符比较得有结果,这个结果为真或假,结果就是一个boolean值。

    27.逻辑运算符?

    &&  全1为1  2者都成立为真

    ||  全0为0  有一个是假就成立

     取反

    举例

    public class Case7 {

    public static void main(String[] args) {

      boolean rs=(10>3)&&(5>2);

      boolean rs2=(10>3)||(2>5);

      boolean rs3=!true;

      System.out.println(rs);

      System.out.println(rs2);

      System.out.println(rs3);

    }

    }

    28.位运算符?

    按位与&(全1则1,只要有0则0)  

    按位或|(全0则0,只要有1则1)

    按位异或 (相同为0,不同为1)

    按位左移 (乘2)

    按位右移 (除2)

    举例

    public class Case8 {

    public static void main(String[] args) {

    int a=10;

    int b=11;

    /*      1010       1010

           10100       0010

        ---------    -------

              20           2*/

      int c=a&b;

      int d=a|b;

      int e=a^b;

      int f=a<<2;

      int g=a>>2;

     System.out.println(c); 10

     System.out.println(d); 11

     System.out.println(e); 1

     System.out.println(f);

     System.out.println(g);

    }

    }

    心得:位运算就是把10进制先转成2进制,计算完成后在转换到10进制

    29.运算符的优先级?

    最高的优先级:小括号,即( )

      最低的优先级:赋值运算符,即=

      优先级顺序:算术运算符>关系运算符>逻辑运算符

    30.练习:学员操作——模拟幸运抽奖

    import java.util.Scanner;

    public class Case9 {

    public static void main(String[] args) {

      Scanner input=new Scanner(System.in);

      System.out.println("请输入4位会员卡号:");

      int num=input.nextInt();

      int qian=num/1000;

      int bai=num%1000/100;

      int shi=num%100/10;

      int ge=num%10;

      int he=qian+bai+shi+ge;

      System.out.println("各位数字值和是"+he);

      System.out.println("是幸运客户吗?"+(he>20));

    }

    }

    心得:算术运算符(%、/)的使用

    使用Scanner类接收用户输入

    关系运算符和boolean类型的用法

    4位数字的各个位数的求法

    31.拓展部分:水仙花

    import java.util.Scanner;

    public class Case10 {

    public static void main(String[] args) {

    Scanner input=new Scanner(System.in);

       //水仙花  153=1^3+5^3+3^3

      System.out.println("请输入一个数字:");

      int num=input.nextInt();

      int bai= num/100;

      int shi=num/10%10;

      int ge=num%10;

      int he=bai*bai*bai+shi*shi*shi+ge*ge*ge;

      System.out.println(bai);

      System.out.println(shi);

      System.out.println(ge);

      System.out.println(he);

    }

    }

    心得:想办法求各个位上的数字

  • 相关阅读:
    jdk和jre有什么区别?
    Apache的作用及意义
    博客园新成员的第一天
    重构改善既有代码的设计--简化条件表达式
    SourceMonitor: 代码重构的小工具,大用场
    使用Eclipse中提供的Refactor(重构)工具
    极大提高Web开发效率的8个工具和建议(含教程)
    Hbase shell命令
    Java多线程-新特性-有返回值的线程
    Java多线程-新特征-条件变量
  • 原文地址:https://www.cnblogs.com/-lyr/p/9546948.html
Copyright © 2011-2022 走看看