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);

}

}

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

原文地址:https://www.cnblogs.com/-lyr/p/9546948.html